基于CC2530的短距離無線通信系統(tǒng)的實現(xiàn)
引 言
隨著半導體技術、無線通信技術的迅猛發(fā)展,短距離無線通信需求不斷增加。目前,短距離無線通信的技術標準包括 WiFi 技術、藍牙技術、ZigBee 技術。其中,ZigBee 技術具有低速率、低功耗、靈活組網(wǎng)等特點,被廣泛應用于無線傳感器網(wǎng)絡領域。TI 公司設計生產(chǎn)的 CC2530 是一個滿足ZigBee 技術標準的系統(tǒng)級SoC 芯片,TI 公司還開發(fā)出基于CC2530 芯片,符合 ZigBee 技術標準的軟件包 Z-Stack 協(xié)議棧[1-3]。Z-Stack 協(xié)議棧是一個復雜的軟件包,僅為用戶提供應用函數(shù)接口,用戶無法靈活實現(xiàn)數(shù)據(jù)通信。因此,本文詳細說明了CC2530 的無線射頻參數(shù)、數(shù)據(jù)傳輸的幀格式及數(shù)據(jù)收發(fā)的流程控制,用戶可以開發(fā)適合自己工程應用的無線通信系統(tǒng)。
1 硬件設計
1.1 CC2530處理器
CC2530 內(nèi)部主要包含增強型 8051 微控制器、無線數(shù)據(jù)收發(fā)器以及其他相關模塊,其具有高集成度、低電壓、低功耗等特點 [4]。其中,無線數(shù)據(jù)收發(fā)器支持 IEEE 802.15.4 協(xié)議, 通信頻率為 2.4 GHz,傳輸速率為 250 kbps,非常適用于短距離無線通信。由于無線通信采用直接序列擴頻技術,具有抗噪聲干擾等優(yōu)點,因此,即使發(fā)射信號功率較低也能實現(xiàn)準確的數(shù)據(jù)通信。
1.2 外設電路
CC2530的電路系統(tǒng)如圖 1所示。CC2530芯片的引腳包含P0端口、P1 端口、P2端口、XOSC_Q1和 XOSC_Q1晶振引腳、RESET_N復位引腳、RF_N和 RF_P射頻信號引腳以及電源 VDD 和 GND 等[5-6],外設由天線、時鐘、復位系統(tǒng)、電源等組成。
2 軟件設計
為了實現(xiàn)無線數(shù)據(jù)傳輸,需要對 CC2530 芯片進行編程控制,包含載波頻率的選擇、發(fā)射功率的控制、通信數(shù)據(jù)幀格式的設置、數(shù)據(jù)收發(fā)過程的控制等。
2.1 載波頻率和輸出功率
根據(jù) IEEE802.15.4—2006協(xié)議規(guī)定 [7],CC2530芯片內(nèi)部可選擇 16個載波頻率進行數(shù)據(jù)傳輸,頻率范圍在 2.405~2.480GHz之間,中心頻率間步長為 5MHz,通道編號 k為11 ~26。通道 k 的實際頻率表達見式(1):
fc= 2 405+5(k-11),k∈[11,26](1)
為了得到通 道 k 的頻率, 通 過寄 存器 REQCTRL. FREQ[6 :0] 的 7 位數(shù)可以設置頻率,頻率設置見式(2):
FREQCTRL.FREQ=11+5(k-11),k∈[11,26](2)
在滿足一定通信距離的條件下,為了降低功耗,應盡可能選擇較低的發(fā)射功率,由 TXPOWER 寄存器控制輸出不同的發(fā)射功率。發(fā)射功率設置見表 1 所列。
2.2 通信數(shù)據(jù)幀格式
CC2530 芯片收發(fā)的數(shù)據(jù)支持 IEEE 802.15.4—2006 的幀格式 [8],IEEE 802.15.4—2006 的幀格式如圖 2 所示。幀引導序列和幀開始定界符(SFD)構成的同步頭(SHR)是 CC2530 芯片硬件自動生成的無線通信同步信息,PHY 頭(PHY)和PHY 數(shù)據(jù)服務單元(PSDU)(MAC 協(xié)議數(shù)據(jù)單元)是軟件編程的有效數(shù)據(jù),開發(fā)人員參考 IEEE 802.15.4—2006 幀格式的內(nèi)容說明來設置相應的參數(shù)。
2.3 數(shù)據(jù)收發(fā)過程
數(shù)據(jù)發(fā)送過程如圖 3 所示 [9]。
(1) 按照幀長度、MAC頭和 MAC負載的先后順序,使用 RFD寄存器將它們寫入數(shù)據(jù)緩沖器TX_FIFO中,TX_ FIFO最多可以存放 128 B 數(shù)據(jù),且一次只能產(chǎn)生一幀 ;
(2) CPU向無線收發(fā)器發(fā)出STXON或 STXONCCA選通指令,無線收發(fā)器將 TX_FIFO中的數(shù)據(jù)全部輸出;
(3) 在成功發(fā)送一個完整的數(shù)據(jù)幀后,產(chǎn)生 TX_DONE中斷信號。
數(shù)據(jù)接收過程如圖 4 所示。
(4) CPU向無線收發(fā)器發(fā)出SRXON選通指令,無線收發(fā)器準備接收數(shù)據(jù) ;
(5) 在接收一幀數(shù)據(jù)的過程中, 幀引導序列和幀開始定界符 SFD不會寫入數(shù)據(jù)緩沖器 RX_FIFO, 只有幀長度、MAC頭和 MAC負載的有效數(shù)據(jù)會寫入 RX_FIFO中;
(6) 在準確接收一幀數(shù)據(jù)后,產(chǎn)生 RXOK中斷信號。
3 通信抗干擾性設計
在無線通信過程中,極易受各種各樣的電磁波干擾,例如自然界的雷電干擾、電器設備故障干擾、地面電磁環(huán)境干擾等,這些干擾嚴重影響通信質(zhì)量。CC2530 芯片采用直接序列擴頻(DSSS)技術和循環(huán)冗余校驗(CRC)算法,可以保證數(shù)據(jù)傳輸的可靠性。
圖3 數(shù)據(jù)發(fā)送過程圖4 數(shù)據(jù)接收過程
直接序列擴頻技術是一種增加發(fā)射信號帶寬的通信技術 [10],發(fā)射后的擴頻信號與發(fā)射前原始信號的頻帶寬度之比范圍為 10 ~100。接收數(shù)據(jù)時,經(jīng)過解擴處理降低干擾信號的功率譜密度,可有效抑制干擾信號。同時也能夠有效抑制相鄰信道的干擾,阻塞假象頻率的信號。
循環(huán)冗余檢查(CRC)算法是數(shù)據(jù)通信領域中最常用的檢錯糾錯方法。CC2530 芯片支持IEEE 802.15.4-2006 幀格式, 在幀結構中 MAC 協(xié)議數(shù)據(jù)單元的幀尾包含一個 16 位的幀校驗序列(FCS),F(xiàn)CS 是基于ITU-T 標準的 16 位循環(huán)冗余校驗(CRC)算法。在發(fā)送數(shù)據(jù)時,F(xiàn)CS 由硬件自動生成,在接收數(shù)據(jù)時,F(xiàn)CS 由硬件自動驗證。如果傳輸?shù)臄?shù)據(jù)受到干擾, FCS 驗證出錯,接收的數(shù)據(jù)不會寫入 RX_FIFO 中。
4 結 語
綜上所述,本系統(tǒng)可以靈活設計無線射頻參數(shù)和無線通信數(shù)據(jù)幀,控制數(shù)據(jù)收發(fā)過程。實驗表明,整個系統(tǒng)具有功耗低、抗干擾性強、軟件設計靈活等特點,非常適用于智能家居監(jiān)控、農(nóng)業(yè)大棚的溫濕度監(jiān)測、路燈照明的智能控制等領域。