首頁 > 評測 > 藍(lán)牙之秘——PSoC 6 BLE Pioneer Kit評測系列之二
藍(lán)牙之秘——PSoC 6 BLE Pioneer Kit評測系列之二
- [導(dǎo)讀]
- PSoC 6號稱專為物聯(lián)網(wǎng)而生,自然少不了互聯(lián)與低功耗方面的特性。本文就來一探究竟。
PSoC 6號稱專為物聯(lián)網(wǎng)而生,自然少不了互聯(lián)與低功耗方面的特性,F(xiàn)有的互聯(lián)技術(shù)中,大多還是以WiFi及BLE為主,我們都知道WiFi是耗電大戶,但是WiFi可以直接接入現(xiàn)有的網(wǎng)絡(luò)中,BLE雖則能實(shí)現(xiàn)低功耗傳輸,但是并不能直接接入現(xiàn)有的互聯(lián)網(wǎng)中。比較而言,二者各有千秋,各有自己適用的場景。
PSoC 6 BLE Pioneer Kit提供的互聯(lián)技術(shù)是BLE,低功耗毫無壓力,只是聯(lián)網(wǎng)時(shí)需要結(jié)合手機(jī)、平板等移動終端或者IoT網(wǎng)關(guān)才能實(shí)現(xiàn)真正的接入互聯(lián)網(wǎng),在當(dāng)今的應(yīng)用場景中,也不是大問題。
PSoC 6內(nèi)置雙核,包括一顆Cortex-M4內(nèi)核及一顆Cortex-M0+內(nèi)核。M4作為主處理器,最高運(yùn)行主頻達(dá)150MHz,可實(shí)現(xiàn)單指令周期乘法運(yùn)算,主要完成大量的數(shù)據(jù)處理及計(jì)算,在低功耗方面,該內(nèi)核能實(shí)現(xiàn)低至22-uA/MHz的功耗;M0+內(nèi)核作為輔助內(nèi)核,最高運(yùn)行主頻也高達(dá)100MHz,電流消耗低至15‑µA/MHz。
BLE并不稀奇,PSoC 6上值得稀罕的東西是該BLE是最新的BLE 5。雖然也有人稱之為BLE 5.0,不過按照Bluetooth SIG的說法,就是BLE 5,而非5.0。BLE 5是全新的標(biāo)準(zhǔn),并不只是BLE 4.2的簡單改進(jìn)。為了讓用戶更好的進(jìn)行BLE相關(guān)的調(diào)試,PSoC 6 BLE Pioneer Kit套件內(nèi)還提供了一個(gè)BLE USB DONGLE,基于BLE 4.2,結(jié)合CySmart程序,可以清楚的了解BLE通信過程中發(fā)生的各種事件。
打開PSoC Creator 4.2,咦,有新狀況。
原來是license過期了,得重新申請一個(gè),沒有l(wèi)icense,就沒法繼續(xù)用設(shè)計(jì)工具了。只是這個(gè)上面顯示還是PSoC3!
重新申請一個(gè)吧,記得填上自己的EMAIL,否則這個(gè)license code會發(fā)到別人家里去了。
用新申請的license code重新激活,現(xiàn)在終于OK了。
Cypress為PSoC 6開發(fā)套件提供了大量的例程,新手可以參考這些例程來入門,老鳥們也可以以此為參照,迅速建立自己的產(chǎn)品模型。在PSoC Creator里查找例程,如下
這個(gè)例程除了使用了BLE功能,也使用了墨水屏來顯示一些指令提示,用來研究用正好。選擇好示例工程后,PSoC 6 Creator會將所有必要的文件復(fù)制到當(dāng)前工作區(qū)里,以獨(dú)立的工程形式呈現(xiàn)給用戶。值得稱贊的是除了工程文件外,還有完整的PDF文檔供用戶參考,
示例提供的頂層設(shè)計(jì)參考如下
這里包括一個(gè)BLE組件,一個(gè)GPIO中斷組件,一個(gè)MCWDT組件。其中BLE用來實(shí)現(xiàn)與其它設(shè)備的BLE通信功能,GPIO中斷組件用來開始BLE廣播,MCWDT組件則用來控制狀態(tài)LED燈,顯示BLE的當(dāng)前工作狀態(tài)。
雙擊BLE組件,彈出BLE設(shè)計(jì)窗口
General選項(xiàng)卡里設(shè)置的主要內(nèi)容是GAP Role,這里是作為Peripheral,供其它設(shè)備來連接并使用藍(lán)牙來控制及讀取相關(guān)數(shù)據(jù)。
這個(gè)選項(xiàng)卡定義服務(wù)及特性,也就是GATT設(shè)置,每個(gè)服務(wù)都有自己特定的GUID,這是一個(gè)128位的數(shù)值,用來唯一區(qū)分每個(gè)服務(wù)及特性,實(shí)際上這里定義了3個(gè)服務(wù),即滑動觸摸、RGB三色LED及觸摸按鈕,其中觸摸相關(guān)的信息會使用Notify的方式推送給Central,RGB LED則是用來顯示用戶發(fā)送的命令后實(shí)際執(zhí)行的效果。
這里設(shè)置的的GAP參數(shù),包括設(shè)備名,廣播參數(shù)的設(shè)置等,大部分使用默認(rèn)值就好。
看上去很簡單,然而實(shí)際上并沒有這么簡單,下面來說說具體設(shè)計(jì)自己的BLE通信時(shí)至少要注意哪幾個(gè)問題。
第一個(gè)問題是UUID的選擇,如果是自己設(shè)計(jì)BLE服務(wù),需要使用UUID工具生成自己的UUID值,如果是在LINUX系統(tǒng)下,可以直接使用UUID命令即可,當(dāng)然WINDOWS下也有不少工具軟件可以用來生成UUID。
第二個(gè)問題,在設(shè)計(jì)具體的服務(wù)和特性時(shí),要根據(jù)實(shí)際情況指定服務(wù)及特性的一些參數(shù),如下
例如這里的LED控制部分,需要指定特性的一些屬性,如讀/寫/通知等。另外也要指定屬性值的長度及類型,例如這里的RGB控制屬性就是一個(gè)4字節(jié)長度的無符號8位整形數(shù)組。
另外還有一個(gè)問題是字節(jié)的順序,即大端還是小端的問題,當(dāng)然如果只關(guān)心數(shù)據(jù)的RAW形式,倒是不要花太多的心思來了解這個(gè)問題。
為什么沒有看到EINK的模塊,這只是一個(gè)接口而已,通過代碼來實(shí)現(xiàn)了,跟設(shè)計(jì)半毛錢關(guān)系也沒有。
接下來生成代碼,編譯,下載到評估套件上,開始體驗(yàn)BLE。
BLE通信過程是不可見的,所以得借助特定的工具來查看這個(gè)通信過程,像NORDIC的nRF Connect之類的就行。前面介紹了,評估套件里包含一個(gè)BLE USB DONGLE,可以直接在PC上進(jìn)行調(diào)試。
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開放投稿
-
人均百萬?英偉達(dá)中國員工收入曝光! 2024-08-29
-
《黑神話:悟空》玩家硬盤升級攻略:提升游戲體驗(yàn),暢享3A大作 2024-08-29
-
數(shù)睿數(shù)據(jù)參加《系統(tǒng)與軟件工程 低代碼開發(fā)平臺通用技術(shù)要求》國家標(biāo)準(zhǔn)編制 2024-08-29
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車啟動電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動電機(jī)控制器開發(fā)
預(yù)算:¥1100001天前