? 目錄
? 一、Core的Ble藍牙功能介紹
? 二、完整代碼
? 三、用shineblink.com提供的免開發App,讓自己的硬體能夠很輕松的擁有和手機App互動能力
前言
ShineBlink Core開發板(簡稱Core)采用的Soc芯片是Nordic半導體公司的Nrf52840芯片,內置2.4G無線功能(支持Ble藍牙,Thread Mesh組網等無線協議),所以我們可以通過軟體的方式將Core改造成Ble藍牙轉Uart透傳模塊。
PS:Core 僅用五、六行代碼即可實作Wifi/Ble/NB/Lora/ThreadMesh/RFID/Eth/Usb/RS485/RS232通信、以及30多種傳感器/10多種硬體外設/10多種Mcu內設功能,并且這些功能最多可以 5 種隨機組合同時運行。更多關于Core的內容可以在 shineblink.com 上了解。

一、Core的Ble藍牙功能介紹
Core的ble低功耗藍牙提供兩個特性,一個是Write特性,一個是Notify特性。其中:
- Write特性:可以看成是手機發送資料給Core的通道,手機通過藍牙連接發送給Core的資料就是存放在Write特性中。
- Notify特性:可以看成是Core發送資料給手機的通道,Core通過藍牙發送給手機的資料就是存放在Notify上。但是需要注意,手機要想收到來自Core的資料,需要手機端主動使能這個Notify(在下面的演示中會提及)。
下面是對Core的Ble所提供的service描述,如果您看不懂下面這段也沒關系,只需按上面講的理解即可。
service(UUID: 0x0001)描述:
service包含兩個特性(Characteristic): 一個用來發送資料,一個用來接收資料
>- Rx Characteristic (UUID: 0x0002)用來接收手機的資料
> 手機藍牙可以通過ATT Write方式向Rx Characteristic發送資料
>- Tx Characteristic (UUID: 0x0003)用來向手機發送資料
> 如果手機藍牙為Tx Characteristic使能了notification,那么設備就可以通過發送notification的方式向手機藍牙發送資料
更多關于ble藍牙的內容請參閱此處。
二、完整代碼
> 本例中采用Uart0做為轉介面,引腳對應Core電路板上的Rx0,Tx0引腳。
--配置Uart0串口波特率為115200并開始作業,開發者也可以設定其他的波特率。
LIB_Uart0Config("BAUDRATE_115200")
--配置低功耗藍牙以默認引數作業,設備名稱為"MyBle666"
LIB_NrfBleDefaultConfig("MyBle666")
--開始大回圈
while(GC(1) == true)
do
--查詢是否收到來自手機端藍牙的資料,如果收到就通過Uart0轉發出去
ble_recv_flag,ble_recv_tab = LIB_NrfBleRecv()
if ble_recv_flag == 1 then --收到一包Ble資料
LIB_Uart0Send(ble_recv_tab)
end
--查詢是否收到Uart0資料,如果收到就通過Ble轉發給手機端
uart0_recv_flag,uart0_recv_tab = LIB_Uart0Recv()
if uart0_recv_flag == 1 then --收到一包Uart資料
LIB_NrfBleSend(uart0_recv_tab)
end
end
三、用shineblink.com提供的免開發App,讓自己的硬體能夠很輕松的擁有和手機App互動能力
shineblink.com提供的免開發App對接Core的方式十分簡單,能夠讓你的硬體設備立刻擁有一款專屬的App,更多詳情請參見此處:
http://shineblink.com/#/technology
免開發App下載地址:
https://b58ac2.link.yunpan.360.cn/lk/surl_yPpRxLMrUDt#/-0
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/226535.html
標籤:無線
上一篇:ESP8266引腳聯網控制
