IEEE 802.15.4的CC2530無(wú)線數(shù)據(jù)收發(fā)設(shè)計(jì)
3 命令選通協(xié)處理器
CC2530片上集成的命令選通協(xié)處理器(CSP)提供了MCU和無(wú)線電之間的接口,有立即選通命令和程序執(zhí)行兩種模式,可以處理MCU發(fā)出的命令。同時(shí)還有一個(gè)24字節(jié)的程序存儲(chǔ)器,配合MAC定時(shí)器自動(dòng)執(zhí)行CSMA-CA算法,充當(dāng)MCU的協(xié)處理器。CSP復(fù)位后,指令寫(xiě)指針復(fù)位到位置0,在每次RFST寫(xiě)入期間指令寫(xiě)指針累加1,直到程序存儲(chǔ)器的終點(diǎn)。另外,CSP還有4個(gè)寄存器:CSPT、CSPX、CSPY和CSPZ。MCU可以對(duì)它們讀寫(xiě),設(shè)置CSP運(yùn)行所需的參數(shù)。程序執(zhí)行模式下運(yùn)行一個(gè)CSP的流程如圖2所示。本文引用地址:http://www.biyoush.com/article/155997.htm
4 節(jié)點(diǎn)通信實(shí)現(xiàn)
4.1 通信機(jī)制
CC2530是通過(guò)寄存器TXFIFO和RXFIFO來(lái)實(shí)現(xiàn)數(shù)據(jù)收發(fā)的。發(fā)送數(shù)據(jù)時(shí),往TXFIFO中寫(xiě)入數(shù)據(jù),無(wú)線電模塊自動(dòng)添加PHY層同步頭和FCS,通過(guò)選通命令STXON或STXONCCA發(fā)送數(shù)據(jù);數(shù)據(jù)接收完成時(shí),產(chǎn)生RXPKTDONE中斷,在中斷服務(wù)程序中通過(guò)讀取RXFIFO即可。
本文根據(jù)IEEE 802.15.4協(xié)議,定義了精簡(jiǎn)的MAC層幀格式,如圖3所示。
幀控制域占一個(gè)字節(jié)。其中,幀類型占2位,00表示同步幀,01表示數(shù)據(jù)幀,10表示確認(rèn)幀,11表示命令幀;確認(rèn)請(qǐng)求占1位,1表示接收設(shè)備在接收到數(shù)據(jù)幀或命令幀時(shí)如果判斷其為有效幀就要向發(fā)送設(shè)備反饋一個(gè)確認(rèn)
幀,0表示該接收設(shè)備不需要反饋確認(rèn)幀。幀序號(hào)唯一標(biāo)識(shí)各個(gè)幀,用于確認(rèn)幀和數(shù)據(jù)幀或命令幀的匹配。目標(biāo)地址和源地址分別用2個(gè)字節(jié)表示。由于IEEE 802.15.4規(guī)范中定義了物理服務(wù)數(shù)據(jù)單元(PSDU)的最大長(zhǎng)度為127字節(jié),而其中的8字節(jié)已經(jīng)被使用,因此有效負(fù)載(pay-load)的字節(jié)長(zhǎng)度為1~119字節(jié)。
數(shù)據(jù)發(fā)送有3種模式:非CSMA-CA、時(shí)隙CSMA-CA和非時(shí)隙CSMA-CA。待數(shù)據(jù)按上述格式寫(xiě)入TXFIFC)后,執(zhí)行“RFST—ISTXON”啟動(dòng)CSP程序。
評(píng)論