藍芽BLE---DA14683藍芽配置
DA14683的藍芽相關配置
Date: 2018.11.17
Create: Jim
匯入工程
首先,我們通過開發環境的左上角 File->Import匯入Demo例程。如下:
修改廣播資訊
開啟pxp_reporter_task.c
修改裝置名
在pxp_reporter_task.c找到以下函式:
標記出來的語句是把PX_REPORTER_DEFAULT_NAME這個變數copy到name_buf裡面
就是把變數賦值給裝置名的buf。至於PX_REPORTER_DEFAULT_NAME在哪裡設定,我們可以在pxp_reporter_config.h裡面找到:
我們直接修改這個定義即可修改裝置名。
最後在task任務實體裡面可以看到呼叫的地方:
修改MAC地址
一般情況下比較少用到,因為我們除錯樣板的時候都是用預設的MAC地址,而量產的時候是有量產工具燒錄MAC地址的。
廣播間隔和引數
呼叫上圖的介面,可以修改廣播間隔和廣播引數。
新增服務
我們在pxp_reporter_task裡面新增一個SPS服務,該服務在SDK已經是寫好了的。
可以在pxp_reporter->sdk->ble_service->src裡面找到sps.c,就可以看到這個服務的所有內容。
服務UUID
在sps..檔案開頭處有服務UUID的巨集定義。
第一個是sps服務的UUID
第二個是傳送特徵的UUID
第三個是接收特徵的UUID
第四個是流控特徵的UUID
如果使用者想自定義UUID,可以在此處修改。
屬性
在sps_init函式中可以看到特徵值初始化和建立屬性的相關操作:
如果需要修改屬性和新增屬性,則 | 上相關的屬性即可。
資料接收
在sps.c中,可以找到資料接收的Handler
上面這個函式是接收函式,手機write資料給到RX特徵的時候,資料將由底層返回到這個函式中。使用者直接獲取value指標即可獲取到手機發送過來的資料。
資料傳送
同樣在sps.c,可以找到資料傳送的介面:
這個函式最終呼叫的其實是以下函式:
Sp_service_t 結構體內容如下:
通過呼叫以上介面,我們即可實現資料從晶片傳送到手機。