国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于SPI的高速藍牙模塊設(shè)計*

2019-12-24 09:09馬曉杰李青青魏朋博虞致國顧曉峰
傳感器與微系統(tǒng) 2019年12期
關(guān)鍵詞:上位藍牙射頻

馬曉杰, 李青青, 王 恬, 魏朋博, 虞致國, 顧曉峰

(物聯(lián)網(wǎng)技術(shù)應(yīng)用教育部工程研究中心 江南大學(xué) 電子工程系,江蘇 無錫 214122)

0 引 言

心腦血管疾病占當今城鄉(xiāng)居民死亡原因之首[1],實時監(jiān)控心臟狀態(tài)或腦電信號不僅能有效地預(yù)防心血管疾病的發(fā)生,而且有助于理性地評判自身的健康狀態(tài)。目前,常見的方法是通過無線體域網(wǎng)將監(jiān)控對象的心腦電特征信號傳送到上位端設(shè)備,進行實時監(jiān)控[2]。

數(shù)據(jù)傳輸?shù)母咚傩耘c設(shè)備的便攜性是高采樣率信號實時采集系統(tǒng)的兩個重要要求。作為RS—232的替代方案,愛立信公司于1994年提出的藍牙技術(shù)克服了數(shù)據(jù)同步的難題,提供了移動設(shè)備之間快速、方便的無線通信連接。通過藍牙的無線傳輸是無線體域網(wǎng)的重要選擇。藍牙技術(shù)規(guī)范的底層協(xié)議包括了邏輯鏈路控制和適配協(xié)議(logical link control and adaptation protocol,L2CAP)、服務(wù)發(fā)現(xiàn)協(xié)議(service discovery protocol,SDP)、射頻通信(radio frequency communi cation,RFCOMM)等[3]。

本文針對此類需求設(shè)計了一種對外接口為串行外設(shè)接口(serial peripheral interface,SPI)的藍牙模塊,并編寫了配套的上位機,以達到心電、腦電或其他高采樣率信號無線采集、重構(gòu)、可視化的目的。

1 系統(tǒng)總體設(shè)計

所設(shè)計的藍牙模塊以CY8C424LQI—BL483可編程片上系統(tǒng)(programmable system on chip,PSoC)為核心,分為發(fā)送模塊與接收模塊。發(fā)送模塊對外數(shù)據(jù)接口為SPI接口,接收采集終端數(shù)據(jù);數(shù)據(jù)由PSoC中的CPU內(nèi)核接收并緩存后,交由射頻發(fā)射單元發(fā)送。接收模塊接收射頻信號,解調(diào)后將數(shù)據(jù)傳輸?shù)缴衔粰C。上位機對數(shù)據(jù)進行重構(gòu)后存入數(shù)據(jù)庫,并做可視化處理。系統(tǒng)總流程圖如圖1所示。

圖1 系統(tǒng)總流程框圖

2 藍牙模塊設(shè)計

2.1 供電電源設(shè)計

如圖2所示,電源以BA00BC0WFP—E2線性穩(wěn)壓芯片為核心;該芯片允許輸入電壓為3~16 V,輸出電壓可在1.5~12 V電壓范圍內(nèi)調(diào)節(jié),滿足所設(shè)計的藍牙模塊的供電需求。芯片4號引腳與芯片供電端間接穩(wěn)壓管以保證芯片輸出電壓穩(wěn)定,同時4號引腳對地接一濾波電容進行濾波。5號引腳外接一電阻網(wǎng)絡(luò),對4號引腳輸出電壓進行分壓,使得J16端能輸出5,3.3 V兩種不同輸出電壓,方便切換藍牙模塊的供電電壓。

圖2 電源電路

2.2 藍牙組件的硬件設(shè)計

藍牙模塊中的核心芯片為集成低功耗藍牙(BLE)組件的PSoC,其外圍電路如圖3所示。該PSoC內(nèi)嵌有32位的低功耗Cortex—M0 CPU內(nèi)核[7],包括一個嵌套的矢量中斷控制器(nested vector interrupt controller,NVIC)和一個喚醒中斷控制器(wake-up interrupt controller,WIC)。

PSoC集成的智能藍牙組件遵循藍牙4.2協(xié)議,在2.4 GHz的ISM頻段上以1 Mbps的速度傳輸和接收GFSK包[6]。該藍牙組件中設(shè)計了BLE堆棧、BLE Profile、BLE硬件抽象層(hardware abstraction layer,HAL)、鏈路層(link layer,LL)和物理層(PHY),并嵌入了128位AES加密安全引擎。

該藍牙模塊的物理層中含有射頻收發(fā)器;該無線射頻收發(fā)器集成了一個平衡—不平衡(balance-unbalance,BALUN)變換器,提供了一個帶有濾波網(wǎng)絡(luò)且阻抗為50 Ω的單端射頻輸出天線。在接收端,BALUN將天線的射頻信號進行GFSK解調(diào)后轉(zhuǎn)換為數(shù)字流。在發(fā)送端, BALUN通過執(zhí)行GFSK調(diào)制,將所要發(fā)送的數(shù)字基帶信號轉(zhuǎn)化為藍牙信號,并通過天線發(fā)射。

圖3 PSoC及外圍電路

本模塊通過該CPU對藍牙組件進行控制。當芯片處于深度睡眠模式時,主控處理器的電源會被關(guān)閉,WIC可以將處理器從深度睡眠模式中喚醒,從而達到降低芯片整體功耗的目的。

2.3 程序設(shè)計

本文通過芯片內(nèi)嵌CPU核對BLE堆棧的編程,來實現(xiàn)藍牙組件的控制。當該藍牙組件需要發(fā)送或接收信號時,BLE堆棧包含有通用訪問配置文件(generic access profile, GAP)和通用屬性協(xié)議(generic attribute profile,GATT)。本設(shè)計使用GAP控制設(shè)備的廣播,使設(shè)備可被其他設(shè)備可見,并決定了此設(shè)備是否可以或者如何與合同設(shè)備進行交互。同時,GAP給設(shè)備定義了若干角色,其中最主要的是中心設(shè)備(central)和外圍設(shè)備(peripheral)。藍牙發(fā)送模塊為中心設(shè)備,藍牙接收模塊為外圍設(shè)備。當設(shè)備通過廣播可被其他設(shè)備發(fā)現(xiàn),或者說完成GAP協(xié)議時,便可建立GATT連接,從而進行數(shù)據(jù)交換。GATT指定了數(shù)據(jù)交互的結(jié)構(gòu)和該結(jié)構(gòu)數(shù)據(jù)的通用唯一識別碼(universally unique identifier,UUID),這個結(jié)構(gòu)體定義了一些基本元素,本設(shè)計使用其中的Service和Characteristic進行通信。

習近平總書記指出:“中國共產(chǎn)黨之所以叫共產(chǎn)黨,就是因為從成立之日起我們黨就把共產(chǎn)主義確立為遠大理想。我們黨之所以能夠經(jīng)受一次次挫折而又一次次奮起,歸根到底是因為我們黨有遠大理想和崇高追求?!盵4]P34我們黨是馬克思主義政黨,馬克思主義與共產(chǎn)黨人是渾然天成的聯(lián)合體。馬克思主義揭示了自然界、人類社會、人類思維發(fā)展的普遍規(guī)律,把真理的科學(xué)性與價值的超越性統(tǒng)一于共產(chǎn)主義理想之中,以其真理和道義的強大力量吸引一大批“馬克思主義篤誠的信仰者”。從領(lǐng)導(dǎo)革命到領(lǐng)導(dǎo)建設(shè)再到領(lǐng)導(dǎo)新時代,共產(chǎn)主義理想信念始終是共產(chǎn)黨人的精神之“鈣”,是共產(chǎn)黨人戰(zhàn)勝困難的重要法寶。

藍牙發(fā)送數(shù)據(jù)的程序流程:首先,調(diào)用CyBle_Start(AppCallBack),開啟藍牙并反饋藍牙的現(xiàn)行狀態(tài),如有異樣則會有相應(yīng)的報錯。成功啟動藍牙后,BLE堆棧則會相應(yīng)自動開啟。然后通過Gapp Start Advertisement設(shè)置藍牙的廣播狀態(tài)。為能實現(xiàn)數(shù)據(jù)的高速傳輸,本文選擇為快速廣播。此時藍牙已是可發(fā)送數(shù)據(jù)的狀態(tài),為了降低功耗需調(diào)用Low Power Implementation來使藍牙在無數(shù)據(jù)發(fā)送時進入低功耗模式,當采集終端有數(shù)據(jù)傳輸過來時調(diào)用CyBle_Process Events,讓藍牙做好準備。如上前所述,現(xiàn)行的藍牙設(shè)備是通過GATT事務(wù)的Service和Characteristic進行通信的。本文選用Costume Service進行數(shù)據(jù)通信,調(diào)用CyBle_HrssSend Notification發(fā)送該格式的Characteristic。

藍牙接收數(shù)據(jù)的程序控制流程可以看作為藍牙發(fā)送數(shù)據(jù)的逆流程。無數(shù)據(jù)可接收時,開啟BLE堆棧,并使接收模塊處于實時掃描狀態(tài)。當掃描到廣播的數(shù)據(jù)包時,執(zhí)行數(shù)據(jù)配對程序,校對UUID是否匹配,若匹配則立即進行發(fā)送設(shè)備和接收設(shè)備的對接。對接成功后,接收模塊可接收并解析數(shù)據(jù),同時對數(shù)據(jù)進行首位字符校驗,奇偶校驗等檢查,以此保證接收數(shù)據(jù)的正確性。

3 模塊對外接口的設(shè)計

3.1 硬件設(shè)計

為了達到心電、腦電等較高采樣率信號的傳輸速度要求,所設(shè)計的藍牙模塊對外采用了SPI接口。SPI接口是一種主機與外圍設(shè)備進行同步串行通信的總線協(xié)議,不需要進行尋址操作,且為全雙工通信,其速率已知最高可達50 Mbps[8]。通過SPI總線進行通信的2臺設(shè)備分別為主機和從機。主、從機之間由4根信號線相連,分別是MOSI(主機數(shù)據(jù)輸出)、MISO(主機數(shù)據(jù)輸入)、SCLK(時鐘信號)、NSS(從機使能信號)[9]。

3.2 程序設(shè)計

所設(shè)計的藍牙模塊作為SPI從機使用,接收來自SPI主機(采集終端)的數(shù)據(jù)。PSoC中包含有一個數(shù)據(jù)讀取寄存器(RX Buffer),在讀取SPI數(shù)據(jù)時作為緩存使用。當調(diào)用SPIS_Start函數(shù)開啟SPI從機后,RX Buffer開始接收并緩存來自主機的數(shù)據(jù),此時可訪問RX Buffer來詢問寄存器的讀取情況。當判斷RX Buffer為非空并且已接收的數(shù)據(jù)字節(jié)數(shù)與主機發(fā)送的字節(jié)數(shù)相同時,便調(diào)用SPIS_SpiUart ReadRxData讀取數(shù)據(jù);如達不到上述要求則讓PSoC處于等待狀態(tài)。當?shù)却龝r間過長便可作無響應(yīng)處理。

為應(yīng)對SPI接口讀取數(shù)據(jù)時所可能的意外事件,本文利用了PSoC所提供的中斷資源(包括RX FIFO overflow、SPI bus error、RX FIFO Full等)。當意外發(fā)生,滿足中斷條件時,主程序暫停運行,跳轉(zhuǎn)至中斷程序來處理意外事件。意外事件處理后,跳回主程序繼續(xù)運行。當讀取完RX Buffer中的數(shù)據(jù)后,仍需對這段數(shù)據(jù)的報頭報尾以及校驗位進行檢查以保證數(shù)據(jù)傳輸?shù)恼_。

4 上位機的設(shè)計

上位機基于LabVIEW設(shè)計,完成對藍牙信號數(shù)據(jù)的接收和重構(gòu)的工作。腦電,心電等信號由于數(shù)據(jù)量龐大,為方便傳輸,一般需在傳輸前做一些壓縮工作,上位端對壓縮數(shù)據(jù)的還原稱之為重構(gòu)。本文數(shù)據(jù)端采集了壓縮感知的壓縮方法,上位機采用了貝葉斯學(xué)習算法作為重構(gòu)算法。與傳統(tǒng)的重構(gòu)算法相比較,該算法跟適合于諸如心電信號這樣擁有高數(shù)據(jù)壓縮比和噪聲變化的信號。為驗證該算法的有效性,本文采用了參數(shù)PRD(percentage root-mean-squared difference)來量化生物信號的信息丟失[10]

(1)

重構(gòu)通過上位端前面板設(shè)置參數(shù),將參數(shù)通過LabVIEW與腳本程序接口傳遞給腳本程序相應(yīng)的功能函數(shù),完成信號分析與處理。腳本程序的功能函數(shù)完成數(shù)據(jù)的重構(gòu)后,把處理結(jié)束的數(shù)據(jù)與相關(guān)參數(shù)反饋給LabVIEW,由LabVIEW完成數(shù)據(jù)的后續(xù)處理。

完成重構(gòu)的數(shù)據(jù)可在上位機的可視界面進行可視化的操作,并將重構(gòu)后的數(shù)據(jù)存入數(shù)據(jù)庫,方便觀察心電或腦電等信號的波形。

5 結(jié)果分析

整個系統(tǒng)包括藍牙模塊、對外接口的硬件和程序設(shè)計以及上位機的軟件設(shè)計。同時,為驗證數(shù)據(jù)傳輸?shù)臏蚀_性以及重構(gòu)的有效性,本文在1 Mbps的速率下分別在示波器和PC端進行了驗證。

圖4給出了用示波器顯示的SPI接收數(shù)據(jù)的波形圖。D2是主機與從機同步的時鐘信號,D3為從機被選擇的使能信號(在本模塊中高電平為使能),D1為采集終端輸出信號,即為藍牙模塊所要發(fā)送的數(shù)據(jù),D0為藍牙接收模塊所接收到的數(shù)據(jù)數(shù)字波形圖??梢钥闯?,采集終端輸出信號與藍牙接收模塊所接收到的數(shù)據(jù)波形完全相同,可以保證傳輸中數(shù)據(jù)的正確性與完整性。

圖4 示波器顯示的SPI接收數(shù)據(jù)

圖5(a)給出了上位機上接收原始壓縮數(shù)據(jù)產(chǎn)生的波形圖,圖5(b)為重構(gòu)后的數(shù)據(jù)信號。根據(jù)重構(gòu)后的信號數(shù)據(jù)計算得出,貝葉斯學(xué)習算法重構(gòu)信號的PRD為1.14 %,可以滿足臨床應(yīng)用的要求[11]。

圖5 壓縮后與重構(gòu)后的數(shù)據(jù)信號

6 結(jié) 論

本文設(shè)計的藍牙傳輸模塊摒棄傳統(tǒng)藍牙模塊的UART串口,采用SPI接口,能更大程度地發(fā)揮出藍牙本身所可以達到的速度,因此可適用于更多高速無線傳輸場合。在數(shù)據(jù)可高速傳輸?shù)幕A(chǔ)上,本文亦加強了對接收數(shù)據(jù)可靠性的要求。此外,與模塊相配套的上位機已集成了可視化、重構(gòu)、參數(shù)設(shè)置等功能,方便使用者對信號數(shù)據(jù)的處理,進一步擴展了其應(yīng)用場合。

猜你喜歡
上位藍牙射頻
藍牙音箱的直線之美
5G OTA射頻測試系統(tǒng)
關(guān)于射頻前端芯片研發(fā)與管理模式的思考
簡單、易用,可玩性強Q AcousticsBT3藍牙音箱
特斯拉 風云之老阿姨上位
適合自己的才是最好的 德生(TECSUN) BT-50藍牙耳機放大器
緊急:藍牙指尖陀螺自燃!安全隱患頻出
“三扶”齊上位 決戰(zhàn)必打贏
基于ZigBee和VC上位機的教室智能監(jiān)測管理系統(tǒng)
ALLESS轉(zhuǎn)動天線射頻旋轉(zhuǎn)維護與改造