<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      一.動態廣播

      1.動態修改廣播包內容和掃描應答包內容

      GAP_UpdateAdvertisingData( Peripheral_TaskID,TRUE ,sizeof( advertData ),advertData );        //更新廣播包內容
      GAP_UpdateAdvertisingData( Peripheral_TaskID,FALSE ,sizeof( scanRspData ),scanRspData );     //更新掃描應答包內容

      2.更新廣播內容注意點

      我們是不可以快速連續的調用更新廣播包內容和掃描應答包內容函數的,需要等待底層處理完產生消息之后才可以再次調用,若兩次更新之間間隔較大是沒有問題的,

      下面講述下如何最快的進行一組更新,即更新廣播包后"立即更新掃描應答包"。

      //添加事件宏定義
      #define ADV_DATA_UPDATE_EVT       0x0020
      //Peripheral_Init初始化的最后調用該函數啟動任務
      tmos_start_task(Peripheral_TaskID, ADV_DATA_UPDATE_EVT, 1600);                               //1秒后執行
      //Peripheral_ProcessEvent添加此事件處理
          if(events & ADV_DATA_UPDATE_EVT)
          {
              PeripheralUpdateAdvertisingData(UpdataAdvData_flag);                                 //更新廣播包內容
              tmos_start_task(Peripheral_TaskID, ADV_DATA_UPDATE_EVT, 1600);                       //1秒更新一次
              return (events ^ ADV_DATA_UPDATE_EVT);
          }
      //在Peripheral_ProcessGAPMsg新增case處理
              case GAP_ADV_DATA_UPDATE_DONE_EVENT:
              {
                  UpdataAdvData_flag=pEvent->dataUpdate.adType;
                  PRINT("last updata=%x\n", UpdataAdvData_flag);
                  if(UpdataAdvData_flag){                                                           //若上次更新的廣播包則再次調用更新
                  tmos_set_event(Peripheral_TaskID, ADV_DATA_UPDATE_EVT);
                  }
                  break;
              }
      //添加該處理函數
      static void PeripheralUpdateAdvertisingData(uint8_t adType){
          if(adType==1){
              PRINT("now updata rsp=%x\n",adType);
          GAP_UpdateAdvertisingData( Peripheral_TaskID,FALSE,sizeof( scanRspData ),scanRspData );   //更新應答包內容
          }
          if(adType==0){
              PRINT("now updata adv=%x\n",adType);
          GAP_UpdateAdvertisingData( Peripheral_TaskID,TRUE ,sizeof( advertData ),advertData );     //更新廣播包內容
          }
      }

      3.動態修改廣播間隔

      更新廣播間隔是需要關閉廣播,進入等待廣播狀態后,更新新的廣播間隔再開啟廣播。

      static void PeripheralUpdateAdvertisingInterval(){
              static uint16_t advInt = 80;
              uint8_t  initial_advertising_enable = TRUE;
              advInt=advInt+80;
              GAP_SetParamValue(TGAP_DISC_ADV_INT_MIN, advInt);
              GAP_SetParamValue(TGAP_DISC_ADV_INT_MAX, advInt);
              GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initial_advertising_enable);
            }
      //添加事件宏定義
      #define ADV_INTERVAL_UPDATE_EVT   0x0040
      //在Peripheral_Init初始化的最后調用該函數啟動事件
      tmos_start_task(Peripheral_TaskID, ADV_INTERVAL_UPDATE_EVT, 1600);                                         //1秒后執行
      //Peripheral_ProcessEvent中添加事件處理
          if(events & ADV_INTERVAL_UPDATE_EVT)
          {
              PRINT("close adv###########################\n");
              uint8_t  initial_advertising_enable = FALSE;
              GAPRole_SetParameter(GAPROLE_ADVERT_ENABLED, sizeof(uint8_t), &initial_advertising_enable);                                                              
              tmos_start_task(Peripheral_TaskID, ADV_INTERVAL_UPDATE_EVT, 1600*5);                              //5秒更新一次
              return (events ^ ADV_INTERVAL_UPDATE_EVT);
          }
      //在狀態回調中打開廣播
              case GAPROLE_WAITING:
                  if(pEvent->gap.opcode == GAP_END_DISCOVERABLE_DONE_EVENT)
                  {
                      PRINT("Waiting for advertising1..\n");
                      PeripheralUpdateAdvertisingInterval();                                                    //調整廣播間隔再打開廣播
                  }

       

      posted on 2022-09-15 15:22  WCH藍牙應用分享  閱讀(2449)  評論(0)    收藏  舉報

      主站蜘蛛池模板: 美女视频黄频大全视频| 91久久精品美女高潮不断| 久久精品免费自拍视频| 日韩中文字幕v亚洲中文字幕 | 在线国产精品中文字幕| 中文字幕国产精品日韩| 少妇高潮喷水正在播放| 日韩黄色av一区二区三区| 国产日产欧产精品精品| 亚洲精品国产av成人网| 综合色在线| 一区二区三区在线 | 欧洲| 18禁在线永久免费观看| 国产蜜臀精品一区二区三区| 国产精品久久久久鬼色| 日韩精品亚洲专在线电影| 亚洲国产成人va在线观看天堂| 国产亚洲欧美日韩在线一区二区三| 少妇无套内射中出视频| 免费成人网一区二区天堂| 国产亚洲精品俞拍视频| 欧美激情 亚洲 在线| 成午夜福利人试看120秒| 无码国产偷倩在线播放| 欧美成人精品一级在线观看| 国产综合色产在线视频欧美| 日韩精品无码人妻一区二区三区| 国产色婷婷亚洲99精品小说| 久爱www人成免费网站| 少妇人妻系列无码专区视频| 97超级碰碰碰久久久久app| 国产亚洲精品中文字幕| 波多野结衣久久一区二区| 国产亚洲精品第一综合麻豆| 91中文字幕一区在线| 青青草国产精品日韩欧美| 亚洲一区二区日韩综合久久| 国产精品男女午夜福利片| 亚洲风情亚aⅴ在线发布| 精品亚洲一区二区三区四区| 亚洲高清成人av在线|