便攜式非接觸式IC卡讀寫(xiě)器的設(shè)計(jì)
帶USB接口的非接觸式IC卡讀寫(xiě)器的硬件電路原理圖的主體部分如圖3所示。本文引用地址:http://www.ex-cimer.com/article/188526.htm
FT245BM的并行數(shù)據(jù)總線和AT89S52的P0口相連;它的讀寫(xiě)控制信號(hào)(RD,WR)分別與AT89S52的P3.0和P3.1相連;TXE為發(fā)送緩沖區(qū)空信號(hào),與P3.4相連;RXF為接收緩沖區(qū)滿信號(hào),與P3.5相連。要從讀寫(xiě)器發(fā)送數(shù)據(jù)到PC機(jī),只需當(dāng)TXE為低時(shí)將WR由高變低即可將數(shù)據(jù)寫(xiě)入緩沖區(qū),模塊可以自動(dòng)處理。當(dāng)PC機(jī)通過(guò)USB向讀寫(xiě)器發(fā)送數(shù)據(jù)時(shí),RXF會(huì)變低通知單片機(jī)有數(shù)據(jù)要接收,通過(guò)將RD由低變高即可讀到數(shù)據(jù)。單片機(jī)可以通過(guò)中斷方式接收來(lái)自FT245BM的數(shù)據(jù),由于兩個(gè)外部中斷都被占用,所以用定時(shí)/計(jì)數(shù)器擴(kuò)展了一個(gè)INT接口。FT245BM的外部連接一個(gè)串行的E2PROM(93C46),用于存放USB器件標(biāo)識(shí)碼、讀寫(xiě)器標(biāo)識(shí)符和說(shuō)明、設(shè)備序列號(hào)等信息。
RC500內(nèi)部包含256個(gè)可尋址寄存器,其數(shù)據(jù)總線與AT89S52的數(shù)據(jù)總線相連;其復(fù)位控制輸入信號(hào)與AT89S52的P1.6相連,單片機(jī)可以控制RC500復(fù)位;RC500的輸出中斷請(qǐng)求與單片機(jī)的外部中斷INT1相連,以隨時(shí)接收RC500傳過(guò)來(lái)的數(shù)據(jù)。
3 軟件的實(shí)現(xiàn)
3.1 讀寫(xiě)器中單片機(jī)的軟件
讀寫(xiě)器內(nèi)軟件的功能包括等待刷卡、接收并處理接收到的PC傳來(lái)的數(shù)據(jù)包、存儲(chǔ)刷卡記錄、LCD顯示相關(guān)信息等。軟件包括主程序、IC卡讀寫(xiě)/密碼驗(yàn)證等操作、時(shí)間顯示以及與PC通信中斷服務(wù)程序。主程序和通信中斷服務(wù)程序的流程圖如圖4所示。
3.2 PC端的軟件
讀寫(xiě)器通過(guò)USB接口與PC相連,PC端必須安裝并運(yùn)行FT245.BM的驅(qū)動(dòng)程序和讀寫(xiě)器應(yīng)用程序。通過(guò)使用FTDI公司提供的虛擬串口驅(qū)動(dòng)程序,對(duì)應(yīng)用程序,外設(shè)看起來(lái)如同一個(gè)標(biāo)準(zhǔn)的COM口。設(shè)置波特率的命令可以忽略,因?yàn)闊o(wú)論波特率如何設(shè)定,設(shè)備總是以它所能達(dá)到的最大速度進(jìn)行傳輸。同時(shí)無(wú)需關(guān)心USB接口的枚舉、端點(diǎn)、管道、事務(wù)和傳輸方式等復(fù)雜的問(wèn)題。
4 結(jié) 語(yǔ)
該系統(tǒng)結(jié)構(gòu)簡(jiǎn)單實(shí)用,在實(shí)際運(yùn)行中具有很高的可靠性,同時(shí)具備一定的可擴(kuò)展性,并可以通過(guò)USB接口與計(jì)算機(jī)相連接,以進(jìn)行數(shù)據(jù)通信。由于體積小,重量輕,具有很好的便攜性,擴(kuò)大了其使用范圍。在此實(shí)現(xiàn)了可脫機(jī)使用的便攜式的非接觸式IC卡讀寫(xiě)器。
評(píng)論