NRF52832----協議棧通用訪問規範(GAP)

轉載一篇博客,可以簡單瞭解協議棧各個層:https://blog.csdn.net/shunfa888/article/details/80140475

 

在協議棧的“gap_params_init”函數裏面,我們可以設置一下參數

 

1、藍牙連接的安全模式與名字

//以下是安全模式設置的宏定義
BLE_GAP_CONN_SEC_MODE_SET_OPEN(&sec_mode);

//以下是器件名字的設定
err_code = sd_ble_gap_device_name_set(&sec_mode,
                                          (const uint8_t *)DEVICE_NAME,
                                          strlen(DEVICE_NAME));

//可以在協議棧廣播初始化中設置顯示器件的全名還是短名
//init.advdata.name_type= BLE_ADVDATA_FULL_NAME

//獲取器件名字可用以下辦法
uint8_t shortmane[35];
uint16_t mane_long=35;
err_code=sd_ble_gap_device_name_get(shortmane,&mane_long);

 

2、圖標設置

//這個圖標,當使用手機->設置->藍牙SCAN的時候。會顯示出來
//NORDIC的連接工具並不顯示這個圖標,但是藍牙信息的appearance會顯示對應的名稱
err_code = sd_ble_gap_appearance_set(BLE_APPEARANCE_HID_KEYBOARD);
APP_ERROR_CHECK(err_code);

//需要注意的是,要在廣播設置中打開圖標
init.advdata.include_appearance = true;//是否需要圖標

 

3、連接參數的設定

//連接間隔爲通訊一次的間隔,間隔大省電,但是實時性不夠
//潛伏期爲從機在連接時,跳過通訊的次數。這樣可以降低從機功耗
gap_conn_params.min_conn_interval = MIN_CONN_INTERVAL; //最小鏈接間隔
gap_conn_params.max_conn_interval = MAX_CONN_INTERVAL; //最大鏈接間隔
gap_conn_params.slave_latency     = SLAVE_LATENCY;     //連接潛伏期,指從機跳過連接事件的次數
gap_conn_params.conn_sup_timeout  = CONN_SUP_TIMEOUT;  //連接超時

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章