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