郭國法 淡丹 張開生
摘要:針對射頻卡的讀寫系統(tǒng),采用STC89S52為主控芯片,研究了MF-RC500的射頻卡讀寫系統(tǒng)設(shè)計(jì)方法,通過RS232為數(shù)據(jù)傳輸接口連接上位機(jī)以及鍵盤來構(gòu)建一種適用于各個(gè)應(yīng)用場合的非接觸式IC卡讀寫系統(tǒng),程序中利用單片機(jī)的低功耗模式達(dá)到系統(tǒng)節(jié)能降耗的目的。實(shí)驗(yàn)表明,基于MF-RC500射頻卡讀寫系統(tǒng)設(shè)計(jì)運(yùn)行穩(wěn)定,切實(shí)可行。
關(guān)鍵詞:微控制器;讀寫器;射頻卡; MF-RC500
中圖分類號:TP391 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2015)35-0117-03
Abstract:TO radio frequency (RF) card read-write system,the main control chip of STC89S52 is adopted and the design method of RF card read-write system based on MF-RC500 is researched. Through RS232 interface for data transmission to connect PC and keyboard ,a kind of non-contact IC card read-write system adapting to the various applications is built ,using low power mode of microcontroller to achieve the purpose of system energy saving. Experiments show that the RF card reader based on MF-RC500 system running well, is feasible.
Key words: MCU; reader; RF card; MF-RC500
射頻卡將無線射頻識別技術(shù)與IC卡技術(shù)結(jié)合起來,有效解決了卡中無源與免接觸這一難題。由于射頻卡具有防監(jiān)聽,防解密,易于識別,穿透能力強(qiáng)等特點(diǎn)已被廣泛應(yīng)用各個(gè)領(lǐng)域[1]。本文在原有射頻卡讀寫系統(tǒng)上進(jìn)行二次開發(fā),擴(kuò)展其功能及應(yīng)用領(lǐng)域,采用AT89S52為主控芯片,MF-RC500為讀寫芯片,通過RS232為數(shù)據(jù)傳輸接口連接上位機(jī)以及鍵盤來構(gòu)建一種適用于各個(gè)應(yīng)用場合的非接觸式IC卡讀寫系統(tǒng),程序中利用單片機(jī)的低功耗模式實(shí)現(xiàn)了系統(tǒng)的功耗優(yōu)化。
1 系統(tǒng)硬件組成
系統(tǒng)硬件部分主要由微控制器AT89S52、MF-RC500射頻模塊、RS-232電平轉(zhuǎn)換模塊、數(shù)據(jù)存儲器、天線、實(shí)時(shí)時(shí)鐘模塊、數(shù)碼管顯示模塊、按鍵、蜂鳴器、電源以及PC機(jī)組成,系統(tǒng)的硬件結(jié)構(gòu)框圖如圖1所示[2]。微控制器MCU控制射頻芯片MF-RC500驅(qū)動(dòng)天線對識別范圍內(nèi)的應(yīng)答器(PICC)進(jìn)行讀寫操作,數(shù)據(jù)返回后由微控制器將數(shù)據(jù)寫入數(shù)據(jù)存儲器模塊(EEPROM),然后經(jīng)RS-232數(shù)據(jù)通信模塊將數(shù)據(jù)上傳到PC端進(jìn)行分析、存儲。
MCU采用AT89S52是因?yàn)殚_發(fā)簡單,運(yùn)行穩(wěn)定,有較多的 I\O口可供選擇,由于不需要擴(kuò)展程序存儲器,可以簡化電路,減小讀卡器的尺寸。數(shù)據(jù)存儲器采用的芯片是AT93C46,該芯片帶有3線串行接口,其容量為1KB或4KB,可重復(fù)寫100萬次,數(shù)據(jù)可保存100年以上。數(shù)據(jù)通信方式采用的是RS-232電平轉(zhuǎn)換方式,內(nèi)置芯片為MAX232。顯示模塊主要用數(shù)碼管顯示,使用數(shù)碼管顯示操作簡單易于控制且價(jià)格低廉也能滿足要求。實(shí)時(shí)時(shí)鐘模塊采用的芯片為DS12C887,該芯片自帶鋰電池,外部掉電時(shí)其內(nèi)部時(shí)間信息還能保持10年之久。對于一天內(nèi)的時(shí)間記錄,有12小時(shí)制和24小時(shí)
兩種模式。鍵盤采用五行四列矩陣鍵盤行列掃描的形式,它包括了設(shè)密、核密、存款,清庫、發(fā)卡、清卡、加款、減款、確認(rèn)等操作,也包括了0~9十個(gè)數(shù)字按鍵。
2 系統(tǒng)接口電路設(shè)計(jì)
圖2為微控制器與射頻芯片接口電路,MF-RC500支持不同的 微控制器接口,本系統(tǒng)采用AT89S52單片機(jī)作為微控制器[3]。NCS為片選信號禁止引腳,D0到D7為雙向數(shù)據(jù)總線,A0到A7為地址線,NWR為寫禁止信號引腳,NRD為讀禁止信號引腳,ALE為地址鎖存使能引腳,IRQ為輸出中斷請求,以上各個(gè)引腳均帶施密特觸發(fā)器。使用NCS信號選擇芯片,要使用獨(dú)立的地址和數(shù)據(jù)總線與微控制器相連,必須將ALE角連接到DVDD。若使用復(fù)用地址和數(shù)據(jù)總線與微控制器接口,必須將射頻芯片ALE引腳連接到為控制器ALE信號。
圖3為射頻芯片與天線接口電路[4],其中TX1、TX2為天線驅(qū)動(dòng)器引腳,VMID為參考電壓引腳,RX為天線輸入信號引腳,上述引腳分別于MF-RC500射頻芯片對應(yīng)引腳相連。射頻芯片通過TX1、TX2發(fā)出13.56MHZ的能量載波,由寄存器的設(shè)置對并口上待發(fā)送的數(shù)據(jù)進(jìn)行調(diào)制得到發(fā)送信號,天線拾取到信號經(jīng)天線匹配電路發(fā)送到RX引腳,MF-RC500的內(nèi)部接收器對信號進(jìn)行檢測和解調(diào),并根據(jù)寄存器的設(shè)定進(jìn)行處理,最后將數(shù)據(jù)發(fā)送到并行接口,并由微控制器進(jìn)行分析處理。
3 軟件設(shè)計(jì)
3.1主控程序設(shè)計(jì)
設(shè)計(jì)思想:為適應(yīng)更多的應(yīng)用系統(tǒng),本系統(tǒng)的設(shè)計(jì)在原有讀寫系統(tǒng)基礎(chǔ)上進(jìn)行二次開發(fā),不僅可以進(jìn)行鍵盤操作,同時(shí)也可通過上位機(jī)進(jìn)行控制操作,系統(tǒng)利用低功耗模式優(yōu)化了系統(tǒng)功耗,使其適用場合更為廣泛。系統(tǒng)程序設(shè)計(jì)流程圖如圖5所示,包括了低功耗程序設(shè)計(jì)、卡片合法性驗(yàn)證程序設(shè)計(jì)、按鍵中斷程序設(shè)計(jì)、上位機(jī)控制程序設(shè)計(jì)、數(shù)據(jù)存儲程序設(shè)計(jì)以及卡片讀寫操作程序設(shè)計(jì)。當(dāng)卡片進(jìn)入讀寫器可識別的范圍內(nèi),系統(tǒng)從低功耗模式中喚醒,卡片不合法時(shí),蜂鳴器進(jìn)行報(bào)警提示,液晶顯示錯(cuò)誤信息,同時(shí)進(jìn)行射頻卡處理程序,卡片合法后液晶顯示卡片信息,讀寫器開始對卡片進(jìn)行卡片選擇、防沖突、密碼認(rèn)證、讀卡、??ǖ炔僮?,數(shù)據(jù)處理完畢后將數(shù)據(jù)存儲在EEPROM中;當(dāng)有按鍵中斷介入時(shí)進(jìn)行按鍵處理子程序,當(dāng)有上位機(jī)中斷命令時(shí)進(jìn)行上位機(jī)命令處理程序。
4 小結(jié)
針對射頻卡的讀寫系統(tǒng),研究了MF-RC500射頻卡讀寫系統(tǒng)設(shè)計(jì)方法。硬件上,給出了系統(tǒng)硬件的設(shè)計(jì)方法及接口電路的實(shí)現(xiàn);軟件上,完成了主控程序操作流程及設(shè)計(jì)思想。實(shí)驗(yàn)證明,本系統(tǒng)設(shè)計(jì)穩(wěn)定,切實(shí)可行,能對可識別范圍類的多個(gè)卡準(zhǔn)確無誤的讀寫,稍加修改可應(yīng)用于多個(gè)系統(tǒng)中,如自動(dòng)售水系統(tǒng)、考勤系統(tǒng)、公交車收費(fèi)系統(tǒng)等。
參考文獻(xiàn):
[1] 王曉華,周曉光. 射頻識別技術(shù)及其應(yīng)用[J]. 現(xiàn)代電子技術(shù),2005(11): 30-32.
[2]羅亮輝,胡福喬. 射頻卡智能水表的研制[J]. 自動(dòng)化儀表,2005(2):35-36+39.
[3] 王洪濤.非接觸式Mifare1卡預(yù)付費(fèi)智能水表設(shè)計(jì)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2009(1):63-65.
[4] 李和平,黎福海. 基于MF RC500的Mifare射頻卡讀寫器設(shè)計(jì)[J]. 電測與儀表,2007(9):61-64.
[5] 安東省,崔焱. AT89S52單片機(jī)與PC機(jī)串行通信設(shè)計(jì)[J]. 山西電子技術(shù),2009(4):46.