采用讀卡機芯片F(xiàn)M1715SL設(shè)計的RFID讀卡機
2.3 工業(yè)設(shè)計
工業(yè)設(shè)計充分考慮了車載環(huán)境的高溫、振動等特殊性,兼顧用戶的便利性。把讀卡機設(shè)計成接觸式卡槽,方便固定卡片,一方面縮短了卡片到天線的距離,降低了印制板天線的設(shè)計難度,另一方面也減小了讀卡機的外觀尺寸,整個讀卡機僅比卡片略大一圈,更容易安裝。材料選擇阻燃型ABS(Acrylonitrile Butadiene Styrene),并在卡槽內(nèi)部設(shè)計多條尼龍壓條,進一步提高卡片在車載環(huán)境下的穩(wěn)固性。讀卡機工業(yè)設(shè)計如圖4所示。
3 識別軟件設(shè)計
識別軟件的主要功能是自動檢測進入識別范圍的各種卡片,完成和車載終端的通信,并根據(jù)數(shù)據(jù)內(nèi)容和卡片信息,設(shè)置相關(guān)的指示燈和蜂鳴器。
軟件編程使用海爾公司的集成開發(fā)環(huán)境HR-IDE工具完成,HR-IDE支持C語言的編輯、交叉編譯、鏈接調(diào)試和仿真;考慮到軟件代碼的規(guī)模和復(fù)雜度,開發(fā)調(diào)試使用了低成本的ICD仿真器。識別軟件開發(fā)采用基于中斷驅(qū)動的數(shù)據(jù)流處理架構(gòu),軟件流程圖如圖5所示。
識別軟件主要由中斷服務(wù)程序、任務(wù)調(diào)度和各種子任務(wù)處理程序組成。整個軟件的中斷來源有串口通信的收發(fā)中斷、FM1715SL外部中斷和各個子任務(wù)觸發(fā)的軟中斷等。每個中斷服務(wù)程序都簡潔短小,能快速完成設(shè)置標志讀取數(shù)據(jù)等實時性高的工作,釋放處理器資源完成各種任務(wù)處理;任務(wù)調(diào)度模塊根據(jù)設(shè)置的標志進行子任務(wù)的調(diào)度,每個子任務(wù)完成就清除標志后返回;子任務(wù)也可以設(shè)置標志,從而觸發(fā)其他子任務(wù)的調(diào)度。
比如讀卡子任務(wù)完成讀卡后,會觸發(fā)中斷,設(shè)置標志;傳輸子任務(wù)將卡號發(fā)送給車載終端;如果卡號無效或者定期無法讀取卡片,亦會觸發(fā)傳輸子任務(wù),車載終端將發(fā)送點亮“無效卡”指示燈的指令,串口收中斷被觸發(fā),指示燈設(shè)置子任務(wù)將被調(diào)用,“無效卡”指示燈亮起。
HR7P90H只有2 KB的SRAM,軟件架構(gòu)如果采用RTOS則難以實現(xiàn),而采用串行的多函數(shù)架構(gòu),則實時性、可靠性、擴展性不能保證,調(diào)試難度大。
通過對數(shù)據(jù)傳輸和任務(wù)處理合理劃分,將數(shù)據(jù)讀取采取中斷驅(qū)動,數(shù)據(jù)處理任務(wù)通過標志統(tǒng)一調(diào)度,數(shù)據(jù)讀取和數(shù)據(jù)處理剝離,很好地滿足高實時性下多數(shù)據(jù)處理的要求。整個軟件架構(gòu)清晰簡潔,編碼設(shè)計簡單,調(diào)試和維護難度都較小。
結(jié)語
讀卡機已經(jīng)作為某車載終端的傳感器,經(jīng)過各種試驗測試后批量安裝到車上使用。工作穩(wěn)定可靠安全,成本低廉,能讀取包括二代身份證的符合ISO14443標準TypeB類型的RFID卡。
評論