地鐵自動(dòng)售檢票系統(tǒng)中的射頻卡讀寫器設(shè)計(jì)
總體軟件主要負(fù)責(zé)各個(gè)模塊的控制,并協(xié)調(diào)各個(gè)模塊之間的工作。在系統(tǒng)上電后,首先負(fù)責(zé)對(duì)系統(tǒng)各個(gè)硬件接口進(jìn)行初始化,然后進(jìn)入正常工作循環(huán)。在正常工作循環(huán)中,可以實(shí)時(shí)感應(yīng)射頻卡,對(duì)射頻卡進(jìn)行讀寫相關(guān)操作;GPRS采用串口中斷方式響應(yīng)遠(yuǎn)程監(jiān)控主機(jī),向遠(yuǎn)程監(jiān)控主機(jī)發(fā)送設(shè)備信息;而與現(xiàn)場設(shè)備終端通信的方式可以有USB、RS232和RS422方式。這3種方式優(yōu)先采用USB方式,然后采用RS232或RS422方式,很好地處理了多接口之間的協(xié)同問題。
為了實(shí)時(shí)地實(shí)現(xiàn)各項(xiàng)功能,把多個(gè)任務(wù)合理安排到前后臺(tái)工作是設(shè)計(jì)的重點(diǎn)。一方面采用模塊化和結(jié)構(gòu)化的編程思想,使得讀寫器能夠?qū)⒏鞒绦蚝侠淼亟M織起來,方便程序的調(diào)試、修改和維護(hù);另一方面采用高效的中斷機(jī)制,串口中斷實(shí)時(shí)接收來自設(shè)備終端或監(jiān)控主機(jī)的命令,定時(shí)器中斷實(shí)現(xiàn)讀寫器工作模式的切換,當(dāng)外界無卡時(shí)切換到空閑模式可以有效地降低讀寫器的功耗。
3.2 射頻卡讀寫程序
微處理器通過對(duì)MF RC531相關(guān)寄存器的控制實(shí)現(xiàn)對(duì)射頻卡的讀寫等各種操作。對(duì)射頻卡的操作分為尋卡、防沖突、選卡、認(rèn)證、讀塊、寫塊、增值、減值、掛起等,其操作的流程如圖5所示。
當(dāng)射頻卡進(jìn)入讀寫器的天線感應(yīng)范圍(10 cm內(nèi))并經(jīng)過一段時(shí)間的延遲,射頻卡上電復(fù)位,接收MF RC531發(fā)送的請(qǐng)求應(yīng)答指令,返回卡的類型號(hào)。當(dāng)有多張卡同時(shí)接近讀卡器時(shí),MF RC531隨即發(fā)送防沖突指令,系統(tǒng)進(jìn)入防沖突循環(huán)中,選中一張卡,此時(shí)被選中的卡進(jìn)入激活狀態(tài),隨后卡與MF RC531之間進(jìn)行3次相互認(rèn)證,認(rèn)證通過方可進(jìn)行讀、寫、加、減等交易操作。操作完成后,MF RC531發(fā)出??ㄖ噶睿漕l卡從激活狀態(tài)返回停止?fàn)顟B(tài),一次交易結(jié)束[4]。在對(duì)卡內(nèi)數(shù)據(jù)進(jìn)行讀寫操作之前,需要進(jìn)行從請(qǐng)求應(yīng)答到相互認(rèn)證的過程,如果這個(gè)過程器件出現(xiàn)錯(cuò)誤,將導(dǎo)致讀寫操作無法進(jìn)行。
3.3 GPRS數(shù)據(jù)傳輸程序
GPRS數(shù)據(jù)終端起著連接讀寫器設(shè)備與遠(yuǎn)程監(jiān)控中心通信的作用,通過GPRS模塊M33,遠(yuǎn)程監(jiān)控主機(jī)可以隨時(shí)了解讀寫器的狀態(tài)。模塊M33有兩種狀態(tài),一種是短消息接收狀態(tài),另一種是自動(dòng)監(jiān)控狀態(tài)。圖6是M33處于短消息接收狀態(tài)時(shí)GPRS數(shù)據(jù)傳輸?shù)牧鞒獭?P align=center>
圖6 GPRS數(shù)據(jù)傳輸操作流程
評(píng)論