一種短距離無線傳輸的CSMA/CA協議實現方法
摘要:在無線通信過程中,首先要面對的是在一個通信域內,可能存在幾十乃至幾百個無線終端同時工作。在這樣繁忙的無線網絡中,無線數據發送頻繁發生碰撞不可避免。當數據發送發生碰撞,意味著有數據幀丟失。為了盡可能地避免由于數據發送碰撞而導致的數據幀丟失,必須引入一種可以避免發送碰撞的機制。以射頻芯片MCl3213為例,詳細說明了CSMA/CA協議的實現過程和主要的代碼實現。
關鍵詞:WSN;MCl3213;CSMA/CA;ZigBee
本文中CSMA/CA協議的實現基于MCl3213芯片。構建了1個小型ZigBee通信系統,僅使用了MCl3213的物理層無線收發功能和內嵌單片機,所以本算法實現也可以移植到433 MHz通信等其他短距離無線通信系統中。
1 MOl3213芯片及通信小系統
MCl3213集成了1個符合IEEE 802.15.4協議的2.4 GHz收發器和飛思卡爾公司的低電壓低功耗HCS08單片機核心,并帶有嵌入式閃存、UART接口、低壓中斷和鍵盤中斷等功能。MCl3213支持專用點到點、簡單星形和MUSH網絡,以及采用Figure 8 Wireless Z-stack的符合ZigBee標準的網絡。
本設計只使用了MCl3213的1個串口,連接電腦或者傳感器,用于從電腦接收需要通過無線發送的數據,并把無線接收到的數轉發到電腦。
(1)數據發送
數據發送主程序的流程如圖1所示。
評論