訊聯(lián)電子nrf51822實(shí)戰(zhàn)教程-6剖新心率例程_第1頁(yè)
訊聯(lián)電子nrf51822實(shí)戰(zhàn)教程-6剖新心率例程_第2頁(yè)
訊聯(lián)電子nrf51822實(shí)戰(zhàn)教程-6剖新心率例程_第3頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

訊聯(lián)電子nRF51822藍(lán)牙4.0開(kāi)發(fā)實(shí)靜態(tài)的設(shè)客戶交流之用。如需,請(qǐng)注明出處。由于工程師程序是基于sdk9.0下的uartdemo配對(duì)涉及兩個(gè)設(shè)備的認(rèn)證,鏈路加密。如果配對(duì)時(shí)設(shè)置了綁定位,隨后還會(huì)這些信息會(huì)讓BLE協(xié)議棧確定一種認(rèn)證方式:式就是justwork,這其實(shí)就是沒(méi)有認(rèn)證,2:如果兩端設(shè)備一個(gè)有顯示頻,而另一個(gè)有鍵盤,而配對(duì)中設(shè)置了MITM保護(hù)。那么認(rèn)證方式就是passkeyentery。一端會(huì)顯示一個(gè)配對(duì)碼,另一需要輸3:MITMOOB,那么這個(gè)配對(duì)碼就是通過(guò)另外的通信方式(如因?yàn)槲覀兪褂玫氖庆o態(tài)在藍(lán)牙規(guī)范的安全章節(jié)中。1:要MITM保護(hù)。下面先介紹如何設(shè)置靜態(tài)//首先定義一下靜態(tài),配對(duì)只能是6-digitASCII#define /**<Staticpin.static 始化之后所以設(shè)置操作放在 gap_params_init()函數(shù)的最后staticvoid{//詳細(xì)解釋在串口透?jìng)髌饰鲋杏姓f(shuō)明 ble_gap_conn_sec_mode_tsec_mode;;memset(&gap_conn_params,0,gap_conn_params.min_conn_interval=MIN_CONN_INTERVAL;gap_conn_params.max_conn_interval=MAX_CONN_INTERVAL; =SLAVE_LATENCY;gap_conn_params.conn_sup_timeout=CONN_SUP_TIMEOUT;err_code=sd_ble_gap_ppcp_set(&gap_conn_params);//以下是設(shè)置靜態(tài)操作uint8_tpasskey[]=m_static_pin_option.gap_opt.passkey.p_passkey=//該系統(tǒng)調(diào)用執(zhí)行的設(shè)置操作。}然后是設(shè)置配對(duì)時(shí)要交換的信息:#define //因?yàn)橐斎?,就是一種MITM保護(hù),所以這里設(shè)置MITM#defineSEC_PARAM_MITM #define #define #define #define m_sec_paramsble_gap_sec_params_tstaticvoid{ = =SEC_PARAM_MITM; =SEC_PARAM_OOB;m_sec_params.min_key_size=SEC_PARAM_MIN_KEY_SIZE;m_sec_params.max_key_size=SEC_PARAM_MAX_KEY_SIZE;}將該函數(shù)放在main函數(shù)的初始化流程中 conn_params_init();函數(shù)之后呢?先看完最后一步的觸發(fā)配對(duì)的問(wèn)題,再來(lái)解決將配對(duì)信息發(fā)給對(duì)端設(shè)備的最后一步觸發(fā)配對(duì)2:從機(jī)發(fā)起安全請(qǐng)求,如果之前綁定過(guò),那么主機(jī)會(huì)直接用用保存的3:BLE中的有一個(gè)安全模式的概念。當(dāng)某個(gè)屬性被設(shè)置為需要認(rèn)證的加密鏈路時(shí),那么當(dāng)在主機(jī)從機(jī)的屬性服務(wù)器時(shí),如果鏈路是不安全的我們采用的就是第三種等待主機(jī)觸發(fā)的方式,那么首先要做的就是將一些屬性設(shè)置為需要安全的鏈路才能,那么在時(shí)就會(huì)觸發(fā)因?yàn)槲覀兪腔?.0SDK下的uartdemo,所以具有notify性質(zhì)RX特征值的cccd(客戶端配置描述符)設(shè)置為需要認(rèn)證和加密的安全鏈路。因?yàn)槎耸鼓躰otify是需要寫CCCD的rxnotify令寫板子上的rx特征值的cccd,因?yàn)槌踉囨溌肥遣煌耆?,那么這時(shí)就staticuint32_trx_char_add(ble_nus_t*p_nus,const*{ SoftDevice]*/ble_gatts_char_md_tchar_md;ble_gatts_attr_md_tcccd_md; ble_gatts_attr_md_tattr_md;memset(&cccd_md,0,sizeof(cccd_md));cccd_md.vloc=BLE_GATTS_VLOC_STACK;memset(&char_md,0,} 備()。信息就可以了。在main.c文件中的的on_ble_evt做如下修改staticvoidon_ble_evt(ble_evt_t*{ switch(p_ble_evt-{casem_conn_handle=p_ble_evt->evt.gap_evt.conn_handle;caseerr_code=bsp_indication_set(BSP_INDICATE_IDLE);m_conn_handle=BLE_CONN_HANDLE_INVALID;case//注釋掉原本的不支持配對(duì)的函數(shù),改為如下的配對(duì)回復(fù)函數(shù)//err_code= BLE_GAP_SEC_STATUS_PAIRING_NOT_SUPP,NULL,case//Nosystemattributeshavebeenstored.NULL,0,//Noimplementationneeded.}}到這里

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論