根據(jù)RF2.4GHz的超低功耗無(wú)線數(shù)傳系統(tǒng)設(shè)計(jì)策略
發(fā)送數(shù)據(jù)流程如圖5所示。在發(fā)射數(shù)據(jù)時(shí),先設(shè)置Reg7的第8位為1,允許在內(nèi)部狀態(tài)機(jī)控制下進(jìn)入數(shù)據(jù)發(fā)射狀態(tài),再設(shè)置Reg7的O~6位為所選通道。在發(fā)送前導(dǎo)尾區(qū)數(shù)據(jù)前,MSP430F247必須將數(shù)據(jù)放人FIFO中,如果數(shù)據(jù)長(zhǎng)度超過(guò)63字節(jié),應(yīng)該分多次寫入。FIFO_flag=1表示FIFO為空,MSP430F247利用此信號(hào)作為中斷請(qǐng)求,保證發(fā)送數(shù)據(jù)寫入FIF0的實(shí)時(shí)性,在數(shù)據(jù)發(fā)送完成后PKT_flag=1。本文引用地址:http://www.ex-cimer.com/article/157467.htm
如果設(shè)置Reg7[7]=1和Reg7[O~6]為與發(fā)射相同的通道,則芯片進(jìn)入自動(dòng)接收狀態(tài),接收數(shù)據(jù)流程如圖6所示。當(dāng)檢測(cè)到同步字后會(huì)自動(dòng)進(jìn)行數(shù)據(jù)包的接收解碼,接收完成后進(jìn)入待機(jī)模式。如果接收數(shù)據(jù)超過(guò)63字節(jié),則有FIFO_flag=1,MSP430F247利用此信號(hào)作中斷請(qǐng)求以保證讀出數(shù)據(jù)的實(shí)時(shí)性。
在進(jìn)行超低功耗設(shè)計(jì)時(shí),MSP430F247可以設(shè)置定時(shí)器中斷。平常處于LPM3或LPM4模式,要發(fā)送數(shù)據(jù)時(shí)產(chǎn)生定時(shí)器中斷,同時(shí)控制EMl98-810處于待機(jī)或睡眠模式。MSP430F247工作在LPM3模式下電流為O.8μA左右,LPM4模式下電流為0.1μA左右。EMl98810正常情況下發(fā)射電流26 mA,接收電流25 mA,待機(jī)電流1.9mA;睡眠模式下為3.5μA。若將EMl98810設(shè)置為睡眠模式,將MSP430F247設(shè)置為L(zhǎng)PM3模式,則系統(tǒng)耗電僅為4.3μA,使用干電池供電完全可行。
MSP430F247通過(guò)SPI接口與EMl98810相連,進(jìn)入LPM3模式和退出LPM3模式的程序如下:
將EMl98810的Reg48的第2位設(shè)置為1,并將SPI_SS設(shè)為高電平,則進(jìn)入睡眠模式;如再將SPI_SS設(shè)為低電平,則EMl98810會(huì)自動(dòng)喚醒,退出睡眠模式。
結(jié)語(yǔ)
經(jīng)過(guò)實(shí)際電路連接后測(cè)試,數(shù)據(jù)發(fā)送端在進(jìn)行500kbps速率下連續(xù)發(fā)送數(shù)據(jù)時(shí),整個(gè)系統(tǒng)電流為28.2 mA,接收數(shù)據(jù)端的電流為26.1 mA;當(dāng)發(fā)射端進(jìn)入到睡眠模式時(shí)電流為5.2μA;當(dāng)接收端進(jìn)入待機(jī)狀態(tài)LPM3后,整個(gè)系統(tǒng)電流為l.9 mA。按照2節(jié)干電池容量1 300 mAh計(jì)算,間隔1 min發(fā)送100字節(jié)數(shù)據(jù),考慮單片機(jī)模式切換時(shí)間,則在500 kbps速率下:
發(fā)送數(shù)據(jù)所需時(shí)間為5 ms,1小時(shí)耗能:
28.2mA×5ms×60次=8460(mA?ms)
睡眠模式下1小時(shí)耗能:
5.2μA×3600S×1000ms=18720(mA?ms)
發(fā)送狀態(tài)下可以工作的時(shí)間為:
(1300mA×3600S×1000ms)/(18720+8460)=172185h
即2節(jié)干電池供電時(shí)可以工作20年。同樣,可以計(jì)算出接收狀態(tài)下可以工作683小時(shí)(大約28天)。因此本設(shè)計(jì)可以適合長(zhǎng)期進(jìn)行低功耗無(wú)線數(shù)據(jù)采集方面的應(yīng)用。
評(píng)論