射頻識(shí)別(Radio Frequency Identification,,RFID)技術(shù)是一種利用無線射頻通信實(shí)現(xiàn)的非接觸式自動(dòng)識(shí)別技術(shù),,與目前廣泛采用的條形碼技術(shù)相比,RFID具有容量大,、識(shí)別距離遠(yuǎn),、穿透能力強(qiáng)、抗污性強(qiáng)等特點(diǎn),。RFID技術(shù)已經(jīng)發(fā)展得比較成熟并獲得了大規(guī)模商用,。隨著RFID便攜式設(shè)備的提出,功耗就成為一個(gè)需要重點(diǎn)考慮的問題,。本文將具體闡述基于MSP430F2012和CC1100低功耗設(shè)計(jì)理念的雙向有源標(biāo)簽的軟硬件實(shí)現(xiàn)方法。
1.低功耗設(shè)計(jì)
1.1低功耗概述
功耗基本定義為能量消耗的速率,,可分為瞬態(tài)功耗和平均功耗兩類,。兩者意義不同,有不同的應(yīng)用背景和優(yōu)化策略,,通常被籠統(tǒng)地概括為低功耗設(shè)計(jì),。實(shí)際研究中可根據(jù)不同情況區(qū)分為:
(1)瞬態(tài)功耗優(yōu)化:目標(biāo)是降低峰值功耗,,解決電路可靠性問題,。
(2)平均功耗優(yōu)化:目標(biāo)是降低給定時(shí)間內(nèi)的能量消耗,,主要針對(duì)電池供電的便攜電子設(shè)備,,以延長電池壽命或減輕設(shè)備重量。
1.2功耗的物理來源
芯片電路的功耗主要來自兩方面:動(dòng)態(tài)功耗和靜態(tài)功耗,。動(dòng)態(tài)功耗主要是電容的充放電和短路電流,。靜態(tài)功耗主要是漏電流,包括PN結(jié)反向電流和亞閾值電流,,以及穿透電流,。如果工作時(shí)序及軟件算法設(shè)計(jì)有缺陷,會(huì)降低系統(tǒng)工作效率,、延長工作時(shí)間,,也會(huì)直接增加系統(tǒng)能量的消耗,。
1.3低功耗設(shè)計(jì)策略
算法級(jí)功耗優(yōu)化:在電路設(shè)計(jì)的開始,就要進(jìn)行算法的選擇,,應(yīng)該盡量選擇功耗效率高的算法,。首先,從實(shí)現(xiàn)算法所需邏輯的大小來看,,算法中操作的數(shù)目,、所需要的帶寬、存儲(chǔ)操作,、端口操作越少,,此算法應(yīng)用到的電路功耗越低。在實(shí)際的設(shè)計(jì)中,,需要按照應(yīng)用的要求進(jìn)行總體性能和功耗的均衡,。同時(shí),算法中需要的協(xié)處理必須考慮,,算法所需的協(xié)處理越簡單,、協(xié)作模塊越少、實(shí)現(xiàn)算法所需要的功耗就越小,。此外,,算法中臨時(shí)變量少、臨時(shí)變量有效的時(shí)間短,、循環(huán)的合理運(yùn)用都會(huì)降低算法所需的功耗,。
系統(tǒng)級(jí)功耗設(shè)計(jì)與管理:系統(tǒng)級(jí)的功耗管理主要是動(dòng)態(tài)功耗管理。通常的做法是處于空閑狀態(tài)的時(shí)候,,運(yùn)作于睡眠狀態(tài),,只有部分設(shè)備處于工作之中;當(dāng)產(chǎn)生一個(gè)中斷時(shí),,由這個(gè)中斷喚醒其它設(shè)備,。實(shí)際上,這一部分需要硬件的支持,,如:電源系統(tǒng)的低功耗技術(shù),;系統(tǒng)軟硬件的劃分,在于決定哪些功能模塊由軟件來實(shí)現(xiàn)功耗較小,,哪些功能模塊由硬件實(shí)現(xiàn)功耗較?。坏凸奶幚砥鞯倪x擇,。
2.系統(tǒng)硬件設(shè)計(jì)
綜合考慮系統(tǒng)功耗來源與低功耗設(shè)計(jì)策略,,硬件設(shè)計(jì)選擇具有低功耗特性的單片機(jī)及射頻收發(fā)芯片,并盡量簡化電路減少功耗開支。
2.1主要芯片的選擇
MSP430系列單片機(jī)的結(jié)構(gòu)完全以系統(tǒng)低功耗運(yùn)行為核心,,電源采用1.8~3.6V 低電壓,,活動(dòng)模式耗電250μA/MIPS,RAM數(shù)據(jù)保持方式下耗電僅0.1μA,。由于系統(tǒng)在90%以上的時(shí)間內(nèi)都是處于休眠或低功耗狀態(tài),,因此漏電流成為影響系統(tǒng)功耗的另一個(gè)重要因素,其I/O輸入端口的漏電流最大僅為50nA,。加上有獨(dú)特的時(shí)鐘系統(tǒng)設(shè)計(jì),,包括兩個(gè)不同的時(shí)鐘系統(tǒng):基本時(shí)鐘系統(tǒng)和鎖頻環(huán)(FLL和FLL+)時(shí)鐘系統(tǒng)或DCO數(shù)字震蕩器時(shí)鐘系統(tǒng)。由時(shí)鐘系統(tǒng)產(chǎn)生CPU和各功能模塊所需的時(shí)鐘,,并且這些時(shí)鐘可以在指令的控制下打開或關(guān)閉,,從而實(shí)現(xiàn)對(duì)總體功耗的控制。由于系統(tǒng)運(yùn)行時(shí)使用的模塊不同,,即采用不同的工作模式,,芯片的功耗會(huì)有明顯的差別。在系統(tǒng)中共有一種活動(dòng)模式(AM)和五種低功耗模式(LPM0~LPM4),。另外,,MSP430系列單片機(jī)采用矢量中斷,支持十多個(gè)中斷源,,并可以任意嵌套,。用中斷請(qǐng)求把CPU喚醒只需要6μs,通過合理編程,,既可以降低系統(tǒng)功耗,,又可以對(duì)外部請(qǐng)求做出快速響應(yīng)。
射頻芯片是整個(gè)RFID卡最核心的部分,,直接關(guān)系到標(biāo)簽的讀寫距離和可靠性,同時(shí)也直接影響到整個(gè)系統(tǒng)的功耗,。CC1100是Chipcon公司推出的單片UHF無線發(fā)射芯片,,體積小,功耗低,,數(shù)據(jù)速率支持1.2~500kbps的可編程控制,,其工作電壓范圍為1.9~3.6V,可以工作在915MHz.,、868MHz.,、433MHz和315MHz四個(gè)波段,還可通過程序配置在所有頻段提供-30~10 dBm輸出功率內(nèi)置地址解碼器,、先入先出堆棧區(qū),、調(diào)制處理器、時(shí)鐘處理器,、GFSK濾波器,、低噪聲放大器,、頻率合成器,功率放大器等功能模塊,。它具有兩種低功耗工作模式:關(guān)機(jī)模式和空閑模式,,在關(guān)機(jī)模式下工作電流小于200nA。本文中CC1100工作在433MHz的頻率上,,采用FSK調(diào)制方式,,數(shù)據(jù)速率為100kbps,信道間隔為200kHz,。
2.2電路設(shè)計(jì)
為簡化系統(tǒng)結(jié)構(gòu),,本系統(tǒng)僅由必須的微處理器單元、射頻收發(fā)單元,、天線及電池單元組成,。省去電池到器件之間的穩(wěn)壓電路,直接由電池給系統(tǒng)供電,。節(jié)省了穩(wěn)壓電路所帶來的靜態(tài)電流消耗,,使電池壽命進(jìn)一步延長。為防止發(fā)射狀態(tài)較大的電流造成電池電壓瞬態(tài)降低,,使用較大容量電容與電池并聯(lián),。MSP430F2012內(nèi)部集成的零功耗欠壓復(fù)位(BOR)保護(hù)功能,可以在電壓低于安全操作范圍時(shí)執(zhí)行完全復(fù)位,,很好地解決了單片機(jī)復(fù)位不完全而產(chǎn)生的隨機(jī)錯(cuò)誤操作問題,。
3.軟件設(shè)計(jì)
盡量用軟件來代替硬件也是低功耗系統(tǒng)設(shè)計(jì)常常采取的措施。本次程序開發(fā)綜合考慮了時(shí)序調(diào)度和工作效率兩方面問題,,以降低系統(tǒng)的功耗,。
3.1合理設(shè)計(jì)工作時(shí)序
由于CPU的運(yùn)行時(shí)間對(duì)系統(tǒng)的功耗影響極大,應(yīng)盡可能縮短其工作時(shí)間,,較長地處于空閑方式或掉電方式是軟件設(shè)計(jì)降低單片機(jī)系統(tǒng)功耗的關(guān)鍵,。程序運(yùn)行流程圖如圖2(a)、(b)所示,,當(dāng)系統(tǒng)上電完成初始化操作即刻進(jìn)入低功耗模式,,只在系統(tǒng)接收到正確信息產(chǎn)生中斷時(shí)才會(huì)喚醒單片機(jī)進(jìn)入工作模式,盡量在短時(shí)間內(nèi)完成對(duì)信息或數(shù)據(jù)的處理,,當(dāng)處理結(jié)束立即返回低功耗模式等待下一個(gè)中斷到來,。
3.2提高工作效率
用宏定義來代替子程序調(diào)用。因?yàn)镃PU進(jìn)入子程序時(shí),,會(huì)首先將當(dāng)前CPU寄存器推入堆棧(RAM),,在離開時(shí)又將CPU寄存器彈出堆棧,這樣至少帶來兩次對(duì)RAM的操作,所以讀RAM會(huì)比讀Flash帶來更大的功耗,。用宏定義來代替子程序調(diào)用,,無疑會(huì)降低系統(tǒng)的功耗。
盡量減少CPU的運(yùn)算量,,將一些運(yùn)算的結(jié)果預(yù)先算好,,放在Flash中,用查表的方法替代實(shí)時(shí)的計(jì)算,,減少CPU的運(yùn)算工作量,,可以有效降低CPU的功耗;不可避免的實(shí)時(shí)計(jì)算,,精度夠了就結(jié)束,;盡量使用短的數(shù)據(jù)類型:如盡量使用字符型的8位數(shù)據(jù)替代16位的整型數(shù)據(jù),盡量使用分?jǐn)?shù)運(yùn)算而避免浮點(diǎn)數(shù)運(yùn)算等,。
讓I/O模塊間歇運(yùn)行,,不用的I/O模塊或間歇使用的I/O模塊要及時(shí)關(guān)掉,以節(jié)省電能,。不用的I/O引腳要設(shè)置成輸出或設(shè)置成輸入,,用上拉電阻拉高。若引腳沒有初始化,,可能會(huì)增大單片機(jī)的漏電流,。
結(jié)束語:
本文詳細(xì)介紹了基于MSP430單片機(jī)的低功耗有源RFID標(biāo)簽的設(shè)計(jì),合理地利用了MSP430單片機(jī)的中斷,、定時(shí),、運(yùn)算等功能,借助于軟件優(yōu)勢(shì),,對(duì)耗能較低的CC1100 模塊采取限能工作措施,,提高了電池的壽命,增加了系統(tǒng)可靠運(yùn)行的時(shí)間,。目前國內(nèi)RFID技術(shù)還處于起步階段,,相信隨著相關(guān)技術(shù)研究的深入,RFID必將得到廣泛的應(yīng)用,。