0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SDK中的B85m_module例程的使用及注意事項(xiàng)

泰凌微電子 ? 來(lái)源:泰凌微電子 ? 作者:泰凌微電子 ? 2022-07-12 11:56 ? 次閱讀

在泰凌Wiki網(wǎng)站上提供了多種應(yīng)用場(chǎng)景的軟件sdk,供客戶選擇使用。本系列的幾篇文章主要講述"Bluetooth LE Single Connection",此SDK是單連接應(yīng)用的SDK,所謂的單連接就是藍(lán)牙芯片做從機(jī)跟主機(jī)(一般是手機(jī))建立點(diǎn)對(duì)點(diǎn)連接,或者藍(lán)牙芯片做主機(jī)跟其他的從機(jī)建立點(diǎn)對(duì)點(diǎn)連接的應(yīng)用場(chǎng)景。

本篇文章詳細(xì)講述此SDK中的B85m_module例程的使用及注意事項(xiàng),以便客戶盡快的熟悉起來(lái),加快項(xiàng)目開發(fā)進(jìn)度。

1module例程說(shuō)明

單連接sdk中B85m_module是使用825x芯片和827x芯片,所以編譯選項(xiàng)中又分為了825x_module和827x_module。module例程提供了基于BLE的數(shù)據(jù)透?jìng)鞴δ?,使得用戶不必關(guān)心BLE復(fù)雜的實(shí)現(xiàn)細(xì)節(jié),只需要處理傳輸業(yè)務(wù)數(shù)據(jù)即可。數(shù)據(jù)透?jìng)鞯闹噶钍翘┝枳约簩?shí)現(xiàn)的一套指令集,如果用戶更習(xí)慣使用AT指令,可以將例程中的指令做替換即可。

2module例程編譯問(wèn)題及解決方法

如果開發(fā)者直接編譯825x_module或者827x_module(下文統(tǒng)稱B85m_module),會(huì)出現(xiàn)下文的編譯錯(cuò)誤。

8dc7600e-0101-11ed-ba43-dac502259ad0.png

原因是B85m_module例程實(shí)現(xiàn)較復(fù)雜,需要使用32K retention的配置來(lái)編譯,而sdk默認(rèn)是選擇的16K retention的配置。

解決方法:修改retention的配置可以參考Handbook的1.3章節(jié)的Software bootloader介紹,使用32K的boot.link文件和cstartup_*_32K.S啟動(dòng)文件。

3硬件連接圖

8de61e40-0101-11ed-ba43-dac502259ad0.png

說(shuō)明:下文以8258芯片為例,來(lái)描述B85m_module例程的使用。

在8258開發(fā)板上燒錄編譯成功的825x_module.bin固件,代碼中默認(rèn)的UART tx是PB1, uart rx是PB0。然后根據(jù)硬件連接圖搭建好環(huán)境。

*注意:芯片的uart tx接串口工具的uart rx,芯片的uart rx接串口的工具uart tx,不要接錯(cuò)了。

PC端打開串口工具軟件,波特率設(shè)置為115200,data bit為8,無(wú)校驗(yàn),stop位為1。

手機(jī)端的app使用LightBlue軟件,然后掃描到"kModule"的藍(lán)牙設(shè)備,然后建立連接。

如果連接時(shí),彈出配對(duì)請(qǐng)求,則選擇配對(duì)。是因?yàn)槟J(rèn)使能了smp配對(duì)功能。如果不需要這個(gè)功能,則把a(bǔ)pp_config.h文件的 BLE_SECURITY_ENABLE宏定義設(shè)置為0,再clean后重新編譯生成固件。

4數(shù)據(jù)透?jìng)?/strong>

當(dāng)手機(jī)app和B85m_module建立藍(lán)牙連接之后,可以看到module例程的Telink SPP透?jìng)鞣?wù),根據(jù)描述符的提示,分成數(shù)據(jù)接收和數(shù)據(jù)發(fā)送兩個(gè)方向:

8dfdf3a8-0101-11ed-ba43-dac502259ad0.png

4.1數(shù)據(jù)接收

數(shù)據(jù)接收(Phone->Module)即手機(jī)app發(fā)送數(shù)據(jù)給藍(lán)牙芯片,然后藍(lán)牙芯片通過(guò)uart打印出來(lái),最后在PC端的串口工具軟件上顯示。

1、藍(lán)牙event事件輸出

當(dāng)在nrf connect軟件上點(diǎn)擊連接或者斷開時(shí),串口工具上會(huì)顯示出藍(lán)牙連接事件(hex數(shù)據(jù) FF 02 83 07)和藍(lán)牙斷開事件(hex數(shù)據(jù) FF 02 84 07),如下圖所示。

8e283636-0101-11ed-ba43-dac502259ad0.png

*備注:FF 02 8D 07是map channel更換的event事件。

2、手機(jī)發(fā)送hex數(shù)據(jù) 00 11 22 33 44 55 66

在LightBlue軟件上,數(shù)據(jù)透?jìng)魇褂玫姆?wù),UUID是0x000102030405060708090a0b0c0d2b11(注意跟代碼中的UUID是反序的),點(diǎn)擊紅色方框處輸入發(fā)送的數(shù)據(jù)。

8e43089e-0101-11ed-ba43-dac502259ad0.png

如下圖所示,PC端的串口工具軟件已經(jīng)顯示了接收到的數(shù)據(jù)。注意接收到的數(shù)據(jù)有格式,前7bytes是數(shù)據(jù)的header。

8e6d9c1c-0101-11ed-ba43-dac502259ad0.png

4.2數(shù)據(jù)發(fā)送

數(shù)據(jù)發(fā)送(Module -> Phone)即PC端串口工具軟件發(fā)送數(shù)據(jù)給藍(lán)牙芯片,然后藍(lán)牙芯片通過(guò)BLE發(fā)送給手機(jī),最后在LightBlue軟件上顯示。

(1)手機(jī)app端使能notify權(quán)限

藍(lán)牙芯片上報(bào)數(shù)據(jù)給手機(jī)app,是使用notify方式,手機(jī)端必須先使能notify權(quán)限,手機(jī)端才會(huì)監(jiān)聽到藍(lán)牙芯片上報(bào)的數(shù)據(jù),否則手機(jī)app不會(huì)接收的。

在LightBlue軟件上點(diǎn)擊Listen,當(dāng)軟件界面顯示Stop Listening時(shí),表示正在listening,已經(jīng)使能了notify權(quán)限。

(2)藍(lán)牙芯片端使能喚醒腳

在B85m_module程序中,默認(rèn)使能了低功耗,也就是藍(lán)牙芯片會(huì)自動(dòng)進(jìn)入低功耗模式,并定時(shí)喚醒保持藍(lán)牙連接的心跳,因此大部分時(shí)間是處于低功耗模式。在低功耗模式下,芯片的UART是無(wú)法接收數(shù)據(jù)的,必須先使用GPIO喚醒芯片,讓芯片處于active模式,uart才能接收數(shù)據(jù)。

代碼中默認(rèn)設(shè)置為PA2為高電平喚醒腳。手動(dòng)把芯片的PA2 pin拉高,接到3.3V上。就可以把藍(lán)牙芯片喚醒并禁止進(jìn)入低功耗。在app_config.h文件中對(duì)應(yīng)的宏定義:

#define GPIO_WAKEUP_MODULE GPIO_PA2

(3)數(shù)據(jù)發(fā)送

在串口工具中,輸入hex數(shù)據(jù):1c ff 16 00 11 00 01 02 03 04 05 06 07 08 09 00 01 02 03 04 05 06 07 08 09 00,然后點(diǎn)擊send發(fā)送。

數(shù)據(jù)輸入的格式說(shuō)明,都是hex格式的數(shù)據(jù):

1C FF:表示data send命令

16 00:表示數(shù)據(jù)長(zhǎng)度,handle值(2bytes)+ data Length(20bytes)

11 00:數(shù)據(jù)發(fā)送使用的handle值為0x0011,小端字節(jié)序原因。

01 02 …00:實(shí)際需要發(fā)送的數(shù)據(jù)。

注意數(shù)據(jù)發(fā)送的長(zhǎng)度在20字節(jié)以內(nèi),如果要發(fā)送更長(zhǎng)的數(shù)據(jù),可以查看Handbook中的MTU和DLE功能,使能長(zhǎng)包后再發(fā)送長(zhǎng)包數(shù)據(jù)。

8e83445e-0101-11ed-ba43-dac502259ad0.png

在手機(jī)LightBlue軟件上,可以看到收到的數(shù)據(jù),如下圖所示。

8ea7496c-0101-11ed-ba43-dac502259ad0.png

關(guān) 于 泰 凌

泰凌微電子致力于為客戶提供一站式的低功耗高性能無(wú)線連接SoC芯片解決方案,包括經(jīng)典藍(lán)牙,藍(lán)牙低功耗,藍(lán)牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有協(xié)議等低功耗2.4GHz多協(xié)議無(wú)線連接系統(tǒng)級(jí)芯片和豐富的固件協(xié)議棧。公司產(chǎn)品廣泛應(yīng)用于智能照明,智能家居/樓宇,智能遙控,無(wú)線外設(shè),智能零售,穿戴設(shè)備,無(wú)線音頻,智能玩具,物流追蹤,智慧城市等各類消費(fèi)和商業(yè)應(yīng)用場(chǎng)景中。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 藍(lán)牙芯片
    +關(guān)注

    關(guān)注

    17

    文章

    370

    瀏覽量

    45905
  • Module
    +關(guān)注

    關(guān)注

    0

    文章

    63

    瀏覽量

    12837
  • SDK
    SDK
    +關(guān)注

    關(guān)注

    3

    文章

    1015

    瀏覽量

    45607
  • 泰凌
    +關(guān)注

    關(guān)注

    0

    文章

    7

    瀏覽量

    4259

原文標(biāo)題:【技術(shù)專欄】泰凌微電子BLE單連接SDK B85m_module例程使用演示

文章出處:【微信號(hào):telink-semi,微信公眾號(hào):泰凌微電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    PCB設(shè)計(jì)對(duì)電流回路的注意事項(xiàng)

    PCB設(shè)計(jì)對(duì)電流回路的注意事項(xiàng) 對(duì)于電流回路,需要注意如下基本事項(xiàng)
    發(fā)表于 04-16 18:05 ?4114次閱讀
    PCB設(shè)計(jì)<b class='flag-5'>中</b>對(duì)電流回路的<b class='flag-5'>注意事項(xiàng)</b>

    Cortex-M內(nèi)核使用FreeRTOS特別注意事項(xiàng)

    本文來(lái)自CSDN博客FreeRTOS基礎(chǔ)篇,本篇主要分享Cortex-M內(nèi)核使用FreeRTOS特別注意事項(xiàng)。
    發(fā)表于 09-19 15:01 ?627次閱讀
    Cortex-<b class='flag-5'>M</b>內(nèi)核使用FreeRTOS特別<b class='flag-5'>注意事項(xiàng)</b>

    HDMI在TV應(yīng)用注意事項(xiàng)

    HDMI在TV應(yīng)用注意事項(xiàng)HDMI 在TV 應(yīng)用注意事項(xiàng)HDMI 做為一種新的數(shù)字視頻接口規(guī)范,其應(yīng)用越來(lái)越廣泛。應(yīng)
    發(fā)表于 10-22 08:45 ?2320次閱讀
    HDMI在TV應(yīng)用<b class='flag-5'>中</b>的<b class='flag-5'>注意事項(xiàng)</b>

    H3 SDK1.0 USB模塊的配置方法及注意事項(xiàng)

    本文介紹H3 sdk1.0 USB模塊配置方法,以及使用注意事項(xiàng)。
    發(fā)表于 03-26 16:36 ?6次下載
    H3 <b class='flag-5'>SDK</b>1.0 USB模塊的配置方法及<b class='flag-5'>注意事項(xiàng)</b>

    AN-528:設(shè)計(jì)5B系列系統(tǒng)的設(shè)計(jì)注意事項(xiàng)

    AN-528:設(shè)計(jì)5B系列系統(tǒng)的設(shè)計(jì)注意事項(xiàng)
    發(fā)表于 05-10 09:40 ?8次下載
    AN-528:設(shè)計(jì)5<b class='flag-5'>B</b>系列系統(tǒng)的設(shè)計(jì)<b class='flag-5'>注意事項(xiàng)</b>

    SDKB85m_ble_sample例程的使用及注意事項(xiàng)

    單連接SDKB85m_ble_sample適用825x芯片和827x芯片,所以編譯選項(xiàng)又分為了825x_ble_sample和827x_ble_sample(下文統(tǒng)稱ble_sam
    的頭像 發(fā)表于 07-13 16:21 ?1642次閱讀

    SDKB85m_ble_remote例程的使用及注意事項(xiàng)

    在泰凌Wiki網(wǎng)站上提供了多種應(yīng)用場(chǎng)景的軟件SDK,供客戶選擇使用。本系列的幾篇文章主要講述"Bluetooth LE Single Connection",此SDK是單連接
    的頭像 發(fā)表于 07-20 16:34 ?2545次閱讀

    HW2000B應(yīng)用注意事項(xiàng)

    電子發(fā)燒友網(wǎng)站提供《HW2000B應(yīng)用注意事項(xiàng).pdf》資料免費(fèi)下載
    發(fā)表于 09-22 11:04 ?0次下載
    HW2000<b class='flag-5'>B</b>應(yīng)用<b class='flag-5'>注意事項(xiàng)</b>

    使用注意事項(xiàng)

    使用注意事項(xiàng)
    發(fā)表于 03-17 20:14 ?1次下載
    使用<b class='flag-5'>注意事項(xiàng)</b>

    E8a仿真器用戶手冊(cè)附加文檔連接M32C/84、M32C/85、M32C/86、M32C/87和M32C/88時(shí)的注意事項(xiàng)

    E8a仿真器用戶手冊(cè)附加文檔連接M32C/84、M32C/85、M32C/86、M32C/87和M
    發(fā)表于 04-26 20:33 ?0次下載
    E8a仿真器用戶手冊(cè)附加文檔連接<b class='flag-5'>M</b>32C/84、<b class='flag-5'>M</b>32C/<b class='flag-5'>85</b>、<b class='flag-5'>M</b>32C/86、<b class='flag-5'>M</b>32C/87和<b class='flag-5'>M</b>32C/88時(shí)的<b class='flag-5'>注意事項(xiàng)</b>

    E8仿真器用戶手冊(cè)附加文檔(連接M32C/84 M32C/85 M32C/86 M32C/87和M32C/88注意事項(xiàng)

    E8仿真器用戶手冊(cè)附加文檔(連接M32C/84 M32C/85 M32C/86 M32C/87和M
    發(fā)表于 04-28 19:49 ?0次下載
    E8仿真器用戶手冊(cè)附加文檔(連接<b class='flag-5'>M</b>32C/84 <b class='flag-5'>M</b>32C/<b class='flag-5'>85</b> <b class='flag-5'>M</b>32C/86 <b class='flag-5'>M</b>32C/87和<b class='flag-5'>M</b>32C/88<b class='flag-5'>注意事項(xiàng)</b>)

    使用注意事項(xiàng)

    使用注意事項(xiàng)
    發(fā)表于 07-07 19:04 ?0次下載
    使用<b class='flag-5'>注意事項(xiàng)</b>

    電源的電容作用及注意事項(xiàng)

    電子發(fā)燒友網(wǎng)站提供《電源的電容作用及注意事項(xiàng).pdf》資料免費(fèi)下載
    發(fā)表于 11-13 09:21 ?0次下載
    電源<b class='flag-5'>中</b>的電容作用及<b class='flag-5'>注意事項(xiàng)</b>

    RX78M組的高溫操作注意事項(xiàng)

    電子發(fā)燒友網(wǎng)站提供《RX78M組的高溫操作注意事項(xiàng).pdf》資料免費(fèi)下載
    發(fā)表于 01-29 11:19 ?0次下載
    RX78<b class='flag-5'>M</b>組的高溫操作<b class='flag-5'>注意事項(xiàng)</b>

    TAS5825M的EMC設(shè)計(jì)注意事項(xiàng)

    電子發(fā)燒友網(wǎng)站提供《TAS5825M的EMC設(shè)計(jì)注意事項(xiàng).pdf》資料免費(fèi)下載
    發(fā)表于 08-29 11:48 ?0次下載
    TAS5825<b class='flag-5'>M</b>的EMC設(shè)計(jì)<b class='flag-5'>注意事項(xiàng)</b>