基于S3C6410的航空用RFID讀卡器設計方案
射頻驅動(dòng)程序在收到應用程序發(fā)來(lái)的報文后,除去報頭與校驗位,通過(guò)case語(yǔ)句判斷命令代碼,然后跳轉到相應的子程序,子函數通過(guò)驅動(dòng)程序對RC632的寄存器進(jìn)行設置,實(shí)現射頻操作。讀取RC632數據時(shí),MOSI線(xiàn)的第一個(gè)字節設置模式與地址:具體來(lái)說(shuō),第0位設置為1,第1位到第6位為地址,第7位設置為0,MOSI線(xiàn)的其他字節均按此設置。MISO線(xiàn)的第一個(gè)字節保留,從第二個(gè)字節開(kāi)始為從RC632返回的數據。對RC632寫(xiě)入數據時(shí),MOSI線(xiàn)的第一字節代表地址,從第二個(gè)字節開(kāi)始為寫(xiě)入RC632的數據,此時(shí)MISO線(xiàn)沒(méi)有啟用。
驅動(dòng)RC632時(shí),首先設置信道校驗寄存器,把第0,2比特置1(啟用奇偶校驗與CRC校驗),然后把控制寄存器第3比特清零(不啟用數據加密),接著(zhù)把0x07寫(xiě)入比特結構控制器,最后一步是設置發(fā)射控制寄存器為0x03(在管腳TX2發(fā)送未經(jīng)調制的13.56MHz連續載波)。設置完寄存器狀態(tài)后,RC632便可與電子鉛封進(jìn)行通信。通信過(guò)程中的寄存器操作包含以下幾個(gè)步驟:
1)置中斷使能與中斷請求2個(gè)寄存器為0x07,設置命令寄存器,取消當前命令;2)清除FIFO BUF讀寫(xiě)指針(即FIFO[6:0]清零),設置中斷使能寄存器,提示標志位已經(jīng)設置;3)依次把數據寫(xiě)入到FIFO BUF,把數據從天線(xiàn)發(fā)送出去;4)設置命令寄存器,激活要執行的命令,讀取錯誤標志寄存器,判斷是否出錯;5)等待規定的時(shí)間,然后讀FIFO BUF,把天線(xiàn)接收的數據讀取到RC632中;6)置中斷時(shí)能與中斷請求2個(gè)寄存器為0x07,設置控制寄存器,停止定時(shí)器,設置命令寄存器,取消當前命令。
3 現場(chǎng)實(shí)測和上位機SQL數據庫通信實(shí)例
在現場(chǎng)測試過(guò)程中,分別對電子鉛封的扇區4,扇區16,扇區33各進(jìn)行了20次操作,其中只有對扇區16的一個(gè)寫(xiě)過(guò)程中出現了數據丟失情況,這顯示出了穩定的操作性能。表2是讀卡器對貨物的電子鉛封進(jìn)行數據寫(xiě)入與讀出的實(shí)例:先寫(xiě)入內容11220003,然后再把寫(xiě)入的內容讀出,其操作的扇區為04號,設置密碼為FFFFFFFFFF.
讀出的數據傳輸到上位機SQL 數據庫后的界面如圖4所示。
表2 現場(chǎng)實(shí)測電子鉛封讀寫(xiě)數據。
圖4 數據傳輸到數據庫的界面
4 結 論
提出了基于S3C6410微處理器的高主頻射頻識別讀卡器,實(shí)現了讀卡、寫(xiě)卡與上傳數據到數據庫的功能。實(shí)驗表明該讀卡器具有良好的穩定性與實(shí)用性,適合于民用航空領(lǐng)域的應用。該讀卡器系統對于民航物流的發(fā)展提高具有一定的參考價(jià)值和應用前景。
參考文獻:
[1].GPRSdatasheethttp://www.dzsc.com/datasheet/GPRS_1594650.html.
[2].24C64 datasheethttp://www.dzsc.com/datasheet/24C64+_32293.html.
[3].SIM300datasheethttp://www.dzsc.com/datasheet/SIM300_1135859.html.
[4].CS-1datasheethttp://www.dzsc.com/datasheet/CS-1_2525798.html.
[5].ISO15693datasheethttp://www.dzsc.com/datasheet/ISO15693.html.
[6].EMCdatasheethttp://www.dzsc.com/datasheet/EMC_2342312.html.
[7].PCBdatasheethttp://www.dzsc.com/datasheet/PCB_1201640.html.
評論