MSP430和CC1101的電磁波喚醒功能設計
摘要:為了實現在低功耗前提下將有效數據以無線方式進行傳輸,設計了一種基于超低功耗MSP430微控制器和無線收發模塊CC1101的無線傳輸系統,該系統利用MSP430靈活的定時器和CC1101特有的電磁波喚醒Wake On Radi,WOR)功能,最終實現了單片機在超低功耗前提下將數據在電腦上顯示出來。其中,WOR實現的難點是對CC1101寄存器的配置,以及其從深度睡眠模式喚醒時間和開始接收數據模式的時間的計算。
本文引用地址:http://www.104case.com/article/201610/306323.htm引言
隨著計算機通信技術的迅速發展和因特網的廣泛應用,尤其是工業控制領域的應用越來越廣泛,物與物之間能夠直接通信就變得愈加重要。特別是在倉儲系統中,目前主要使用無源RFID(Radio Frequency Identifcation)電子標簽,因為受到識別距離和識別條件的影響(例如,必須使標簽離閱讀器很近并且要正對著閱讀器),使用起來會比較麻煩。有源RFID雖然能夠克服這個缺點,但是因為需要電源,所以必須保證通信的低功耗,才能使有源RFID得到廣泛地應用。而MSP430 MCU專門為超低功耗應用而特別設計,其具有高度靈活的定時系統、多種低功耗模式、即時喚醒以及智能化自主型外設,不僅可以實現真正的超低功耗優化,而且還能大幅延長電池的使用壽命。CC1101的WOR功能可以使芯片在無需MCU干預下周期性地從深度睡眠模式醒來偵聽潛在的數據包,同時在深度睡眠模式下,CC1101的功耗幾乎為0。
正是出于這種考慮,本文提出了一種基于MSP430和CC1101的無線喚醒數據傳輸系統,并且能將被喚醒的ED(Ending Device)的MAC(Media Access Control)地址通過串口顯示在電腦上。
1 系統的總體結構
圖1為電磁波喚醒總體設計方案。它主要由3部分組成:多個被喚醒對象即ED、用于數據傳遞的AP(Access Point)、用于數據采集或者發送命令的終端設備(如電腦)或者手持設備等。

終端設備通過UART(Universal Asynchronous Receiver/Transmitter)向AP發送指令,AP根據指令向ED發送命令,ED接收到AP發送的命令后,立即從深度睡眠狀態被喚醒進入到工作狀態,然后將自己的MAC地址通過CC1101發送給AP,AP對收到的MAC信息進行處理后通過UART發送給終端設備顯示出來。整個過程實現的是AP發送數據,ED接收數據,然后ED發送數據,AP接收數據,進而實現最終的顯示。
2 系統的硬件設計與實現
圖2為電磁波喚醒的部分硬件結構。MCU采用的是TI公司的MSP430系列單片機,通過CC1101無線射頻收發芯片實現無線數據的接收和發送,然后通過有線或者無線方式與終端設備進行連接。

3 系統的軟件設計與實現
智能終端ED和AP是以無線射頻信號方式進行數據通信的。AP先發送包含MAC信息的WOR指令,當收到AP發送過來的指令時,ED被喚醒,發送自己的MAC地址給AP,然后AP判斷接收到的MAC是否符合要求。如果符合,那么就讓相應的ED閃燈,如果不符合要求,則AP發送使ED繼續進入睡眠狀態的指令,即進入低功耗模式。圖3和圖4分別是AP和ED的軟件流程圖。

4 系統的低功耗設計
本系統的MCU采用MSP430,當其處于等待指令的LPM3低功耗模式時,此時ED的電流大約是10μA,因此整個系統低功耗設計的關鍵是對CC1101的WOR的使用。當它處于接收狀態時,其工作電流為12.5 mA左右;如果始終處于接收狀態,整個系統的供電電池會很快耗盡。為了解決這個問題,可以將系統的工作模式設置為定時工作模式,在持定的工作時間段內,啟用WOR,系統會自動處于偵聽狀態(即接收狀態)。這樣,就需要兩個時間參數T0(最長工作周期)和T1(最長接收時間)以及接收的占空比d(Duty Cycle)。降低功耗的關鍵就是降低占空比。設定每2 s醒一次,每次持續3.5 ms。喚醒ED時要先發送前導字,時長要保證喚醒終端CC1101的時間周期2 s,并且,在連續兩個周期(7 ms)內沒有收到同步字和幀起始碼,則認為是無效的數據,重新進入WOR狀態。如此設定后,整個系統的平均工作電流為35μA左右。這樣一來普通的500mAh紐扣電池就能使用很長時間。
結語
經過實驗驗證,本文設計的基于MSP430和CC1101的電磁波喚醒系統能夠保證在低功耗下進行數據的無線傳輸。結合實際需要對該系統進行改造,在倉儲及尋貨等方面有重要的現實意義。
評論