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