芯片電路的功耗主要來自開關(guān)的動態(tài)功耗和漏電的靜態(tài)功耗,。動態(tài)功耗主要是電容的充放電(包括網(wǎng)絡電容和輸入負載)以及P/N MOS同時打開形成的瞬間短路電流,。靜態(tài)功耗主要是擴散區(qū)與襯底形成二極管的反偏電流和關(guān)斷晶體管中通過柵氧的電流。工作時序及軟件算法設計有缺陷,,會降低系統(tǒng)工作效率,、延長工作時間,也會直接增加系統(tǒng)能量的消耗,。本文將具體闡述低功耗設計理念在基于MSP430和MFRC522的非接觸式讀寫器上的應用與實現(xiàn),。
模塊電路設計
系統(tǒng)選用MSP430F413單片機和MFRC522射頻芯片。為簡化系統(tǒng)結(jié)構(gòu),,本系統(tǒng)僅由低電壓報警單元,、MCU單元、射頻收發(fā)單元,、天線,、紅外發(fā)射接收以及外圍信號組成。
本系統(tǒng)選用的是SPI接口方式,,其連接圖如圖1所示,。
圖1 MCU與射頻接口及下載接口圖
MSP430選用JTAG接口下載仿真程序。為了進一步減少功耗,,在系統(tǒng)處于休眠模式時可通過指令關(guān)閉SPI接口和MCU中無用的端口,。
射頻卡讀寫器采用電感耦合式天線,主要用于產(chǎn)生磁通量,,而磁通量用于向射頻卡提供電源并在讀卡器與射頻卡之間傳輸信息,。當一個RFID系統(tǒng)正常工作時所需的磁感應強度B一定時,安培匝數(shù)NI由環(huán)形天線的邊長a以及標簽和讀寫器天線的距離x來共同決定。其關(guān)系式為:
電感耦合式天線的特征值主要有品質(zhì)因數(shù)(Q)和諧振頻率,。一般而言,,Q一方面衡量能量的傳輸效率,另一方面也衡量頻率的選擇性,。對于并聯(lián)諧振回路,,Q可以定義為:
Q=2πfRC=R/(2πfL)(f在本系統(tǒng)中為13.56MHz) (2)
式中:f為諧振頻率;R為負載電阻;L為回路電感;C為回路電容。Q值越高,,天線的輸出能量越高,,然而太高的Q值會干擾讀寫器的帶通特性,從而無法遵從協(xié)議標準,。一般來說,,Q=20時,整個系統(tǒng)的帶通特性與帶寬都比較好,。RFID系統(tǒng)中的品質(zhì)因數(shù)一般在10~30內(nèi)取值,,最大不要超過60,。
MFRC522從TX1和TX2引腳發(fā)射的信號是已調(diào)制的13.56MHz載波信號,,輔以多個無源器件實現(xiàn)匹配和濾波功能,以直接驅(qū)動天線,。其匹配電路和信號接收電路如圖2所示,。
圖2 天線匹配電路
紅外發(fā)射接收電路部分的設計目的是為了節(jié)省電源開支,當系統(tǒng)處于休眠模式時停止發(fā)射無線電波,,可外加一個紅外對管來檢測是否有卡進入天線范圍,。當紅外接收管接收到外界有卡時立即進入中斷,跳出休眠模式,,對外發(fā)射無線電波,,并進行相關(guān)的操作。這種通過指令間斷打開紅外發(fā)射管檢測是否有卡再進入中斷喚醒 CPU和打開天線的方法縮短了天線和紅外管的電流消耗,,從而節(jié)省了功耗,。
軟件設計
CPU的運行時間對系統(tǒng)的功耗影響很大,所以應盡可能縮短其工作時間,,使系統(tǒng)較長時間處于休眠或低功耗模式,。當系統(tǒng)上電完成初始化操作后立即進入休眠模式,只有當紅外接收管接收到信號時產(chǎn)生中斷才打開天線進入工作模式,。其中斷服務程序如下:
#pragma vector=PORT2 _VECTOR__interrupt void Port_2(void)
{ LPM3_EXIT; //退出休眠
PcdAntennaOn(); //開啟天線
PcdReset(); //RC522復位
P1OUT = 0xFF; //打開SPI接口
station=1; //轉(zhuǎn)入工作模式
P2OUT|=BIT6; //LED亮
P2IFG&= ~(BIT7); //清除標記}
圖3是程序運行的流程圖,。
圖3 低功耗非接觸式射頻讀寫器的設計流程圖
圖3是程序運行的流程圖。
MSP430有五種低功耗模式,,本系統(tǒng)采用的是LPM_3,,此時DC發(fā)生器的DC電流被關(guān)閉,只有晶振活動,。用晶振做系統(tǒng)主時鐘和定時器時鐘源,,對紅外接收管腳中斷使能定義,,使紅外發(fā)射管每隔0.24s發(fā)射一個0.03ms的脈沖,間斷地檢測在天線范圍內(nèi)是否有卡,,有卡時紅外接收管產(chǎn)生中斷進入中斷服務程序,。這樣讓I/O口間歇運行既不影響正常讀卡也能節(jié)省電能。
盡量減少CPU的運算量,,將一些運算的結(jié)果預先算好,,放在Flash里,用查表的方式代替實時計算,,需要運算時最好使用分數(shù)運算,,盡量避免浮點數(shù)運算。定義變量時,,盡量使用字符型變量,。減少CPU的運算量可以有效降低CPU的功耗。
總結(jié)
本文利用MSP430單片機的中斷,、定時,、運算等功能,借助于軟件優(yōu)勢,,及MFRC522的低電壓,,小體積等特點,使讀卡器讀卡距離為0~60mm,,休眠模式的電流<10μA,,工作模式時電流約為150mA,延長了電池的壽命,,增加了系統(tǒng)可靠運行的時間,。