首頁(yè) > 評(píng)測(cè) > 給BLE插上翅膀——TI CC2640R2 LAUNCHPAD評(píng)測(cè)

給BLE插上翅膀——TI CC2640R2 LAUNCHPAD評(píng)測(cè)

  • 作者:netlhx
  • 來(lái)源:21ic
  • [導(dǎo)讀]
  • BLE5是否真的已經(jīng)克服了傳輸距離瓶頸?讓我們從德州儀器的CC2540R2 LaunchPad來(lái)管窺一斑...

LAUNCHXL-CC2640R2開(kāi)箱及基本介紹結(jié)束,上幾張開(kāi)發(fā)板的不同角度的全景照。

IMG_20170509_160026.jpg
IMG_20170509_160134.jpg
IMG_20170509_160217.jpg

接下來(lái)開(kāi)始上電及編程之旅。

LAUNCHXL-CC2640R2開(kāi)發(fā)套件附送了一根USB連接線,可以給開(kāi)發(fā)板供電并提供調(diào)試及代碼下載功能。

開(kāi)發(fā)板上電后,出廠時(shí)內(nèi)置固件開(kāi)始工作,默認(rèn)配置的是BLE功能,可以使用TI SENSOR TAG APP來(lái)訪問(wèn)開(kāi)發(fā)板,啟動(dòng)APP后會(huì)發(fā)現(xiàn)藍(lán)牙設(shè)備,如下

Screenshot_2017-05-07-20-41-33.png

可以看到APP已識(shí)別CC2640R2設(shè)備,點(diǎn)擊該設(shè)備,連接到開(kāi)發(fā)板

Screenshot_2017-05-07-20-42-00.png

 

與STK評(píng)估套件不同,LAUNCHPAD上并沒(méi)有提供傳感器,只提供了兩個(gè)按鍵,按壓開(kāi)發(fā)板上的按鍵,APP上會(huì)同步顯示用戶按鍵情況。如果在LAUNCHPAD上連接傳感器的話,傳感器數(shù)據(jù)可以通過(guò)APP的云端推送功能將傳感數(shù)據(jù)推送到云端,可以參考本站TI STK套件的評(píng)測(cè)文章,此處不贅述。

Screenshot_2017-05-07-20-42-20.png

上圖是查看OAD在線升級(jí)固件的畫(huà)面,可以看到CC2640R2 LAUNCHPAD并沒(méi)有在線OAD升級(jí)固件的功能。

TI提供了BTool用來(lái)調(diào)試BLE設(shè)備,PC通過(guò)串口連接到LAUNCHPAD,連接后可以讀取或?qū)懭霐?shù)據(jù)到LAUNCHPAD。

要使用TBool,LAUNCHPAD必須先處于Host Test模式,具體來(lái)說(shuō)就是將Host Test應(yīng)用程序先寫(xiě)入到LAUNCHPAD開(kāi)發(fā)板,該程序包含在SDK開(kāi)發(fā)包內(nèi)。另外BTool工具也包含在SDK里面,啟動(dòng)BTool后界面如下

2017-05-07_203523.jpg

通信波特率為115200,沒(méi)有流控,無(wú)奇偶校驗(yàn),停止位為1,數(shù)據(jù)寬度為8位,這樣設(shè)置好了之后,BTool通過(guò)串口與LAUNCHPAD連接并查詢(xún)LAUNCHPAD的狀態(tài),如果沒(méi)有錯(cuò)誤的話,連接后的結(jié)果如下

2017-05-13_203544.jpg

點(diǎn)擊右側(cè)的Scan按鈕,開(kāi)始掃描周?chē)乃{(lán)牙設(shè)備。如果周?chē)嬖诩嫒莸脑O(shè)備,BTool會(huì)給出相關(guān)的掃描信息,同時(shí)在右側(cè)的Link Control區(qū),可以看到掃描得到的藍(lán)牙設(shè)備的地址,如圖

2017-05-13_203845.jpg

為了測(cè)試掃描功能,使用了CC2650STK,CC2650STK也是TI提供的BLE設(shè)備,不過(guò)不支持BLE 5,另外CC2650STK上還提供了許多傳感器如光線、溫濕度傳感器等?梢钥吹綊呙铚y(cè)試已正確找到了附近的BLE設(shè)備。

接下來(lái)可以與發(fā)現(xiàn)的BLE設(shè)備連接,下圖是BTool連接到CC2650STK后顯示的結(jié)果

2017-05-13_204609.jpg

BTool還提供了許多其實(shí)實(shí)用功能,如讀寫(xiě)功能,設(shè)備匹配及配對(duì)功能等,通過(guò)UUID發(fā)現(xiàn)BLE提供的特性等功能,例如在連接的設(shè)備上右擊,在上下文菜單里選擇Discover UUIDs,會(huì)找到CC2650STK提供的許多服務(wù),其中部分內(nèi)容如下

TIM截圖20170515135000.jpg

接收到的數(shù)據(jù)以十六進(jìn)制顯示,可以進(jìn)一步解碼,得到具體的數(shù)值。

LAUNCHXL-CC2640R2開(kāi)發(fā)板的編程體驗(yàn)可以使用IAR或CCS來(lái)完成,CC2640R2 SDK集成了RTOS及底層必要的驅(qū)動(dòng),以API的形式提供給開(kāi)發(fā)者,另外SDK內(nèi)也包含了大量的示例供用戶學(xué)習(xí)及體驗(yàn)。

對(duì)于大部分的BLE應(yīng)用來(lái)說(shuō),可以從simple_peripheral應(yīng)用開(kāi)始,該應(yīng)用實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的GATT服務(wù),其中包括5個(gè)Characteristic,對(duì)應(yīng)的UUID為FFF1-FFF4,為了方便調(diào)試,程序還通過(guò)串口將設(shè)備連接信息顯示在PC端,方便用戶調(diào)試。

SDK中的示例代碼,可以使用IAR或CCS來(lái)打開(kāi),編譯并上傳到開(kāi)發(fā)板,這里使用的是CCS 7來(lái)測(cè)試。

在CCS中導(dǎo)入simple_peripheral工程,打開(kāi)simple_gatt_profile.h文件,看到定義的UUID如下

TIM截圖20170515135041.jpg

其中服務(wù)的UUID為FFF0,在對(duì)應(yīng)的實(shí)現(xiàn)文件simple_peripheral.c文件中可以看到ATT表文件如下

TIM截圖20170515135100.jpg

用戶如果要實(shí)現(xiàn)自己的傳感器屬性,可以基于該表來(lái)進(jìn)行修改,例如屬性的名稱(chēng),值類(lèi)型及讀寫(xiě)特性等。TI提供的教程(見(jiàn)參考資源中的:創(chuàng)建自己的藍(lán)牙應(yīng)用),雖然該教程是針對(duì)CC2650,同時(shí)官方也標(biāo)明該教程已deprecated,但是對(duì)于新手來(lái)說(shuō)還是非常具有參考價(jià)值的。

如果只是為了體驗(yàn),不需要更改更多的內(nèi)容,畢竟像sysbios及RTOS等配置,默認(rèn)的工程均已設(shè)置好,即使用于生產(chǎn)環(huán)境,也沒(méi)有問(wèn)題。編譯工程并上傳到開(kāi)發(fā)板,就可以使用前而介紹的BTool來(lái)查看開(kāi)發(fā)板提供的藍(lán)牙服務(wù)了。當(dāng)然也可以使用一些專(zhuān)用的BLE調(diào)試APP來(lái)查看開(kāi)發(fā)板提供的服務(wù)。

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評(píng)論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開(kāi)放投稿

熱門(mén)標(biāo)簽
項(xiàng)目外包 more+