CPLD在射頻卡讀寫(xiě)器中的應用
1 系統工作原理和CPLD特性
本文引用地址:http://dyxdggzs.com/article/157983.htm射頻卡讀寫(xiě)系統又稱(chēng)射頻識別系統(Radio Frequency Identification),它是利用無(wú)線(xiàn)方式進(jìn)行非接觸式雙向數據通信,進(jìn)而達到識別目標并交換信息的目的。射頻識別技術(shù)發(fā)展迅速,在門(mén)禁、交通這、防盜、金融、身份證管理、工業(yè)自動(dòng)化等方面有著(zhù)廣泛的應用前景。按照相關(guān)標準,非接觸IC卡可以分為3種:(1)密耦合卡(ISO10536),作用距離0~1cm。(2)近耦合卡(ISO 14443),作用距離0~10cm。(3)疏耦合卡(ISO 15693),作用距離0~150cm[1]。
基于ISO 15693協(xié)議標準設計的射頻卡讀寫(xiě)器是目前中低頻段工作距離最遠(達1.5米)的射頻識別裝置。射頻卡由半導體廠(chǎng)商提供,目前國內外均有符合該標準的商用化射頻卡。
在實(shí)際應用中,密耦合卡和近耦合卡距離射頻卡讀寫(xiě)器作用距離特別小,一般每次只要求響應一張卡(如公交售票系統)。而疏耦合卡往往應用在對多卡同時(shí)進(jìn)行響應的場(chǎng)合(如多個(gè)持卡行李同時(shí)經(jīng)過(guò)門(mén)檢),讀寫(xiě)器與多卡同時(shí)進(jìn)行數據交換可以通過(guò)軟件設計加入“防碰撞機制”實(shí)現。但是由于讀寫(xiě)器在響應某張卡時(shí)的數據交換時(shí)間被限制在200μs~300μs內,選用普通單片機無(wú)法達到這一要求,因此在設計中選用了高速CPLD器件來(lái)實(shí)現編碼、解碼以及差錯控制功能。一方面在響應時(shí)間上滿(mǎn)足了實(shí)際應用的需要;另一方面簡(jiǎn)化了軟件設計。
2 功能模塊實(shí)現
2.1 編碼器與譯碼器
單片機啟動(dòng)編碼后,編碼模塊向單片機發(fā)中斷(INT0)獲取待編碼的指令數據,同時(shí)將指令數據送入并行CRC模塊。當指令數據完成編碼后,控制電路將2字節 CRC值緊接在數據之后進(jìn)行編碼。譯碼時(shí),譯碼器檢測到起始位后,開(kāi)始譯碼。譯碼后的數據通過(guò)中斷(INT1)通知單片機取走。并同時(shí)送入CRC并行運算模塊進(jìn)行校驗,單片機在特定的時(shí)刻(接收完最后一字節數據時(shí))讀取CRC校驗標志端口CRCALL0,判斷整個(gè)數據串的正確性。
(1)數據編碼從讀寫(xiě)器到卡的數據采用脈沖位置調制即“1/256”編碼。用256個(gè)時(shí)隙表示8bit數據,通過(guò)控制bit脈沖出現的時(shí)間位置來(lái)表示0~255范圍內的數據。如圖2,在第255個(gè)位置出現的位置脈沖(9.44μs高電平的9.44μs低電平)表示數據E1(HEX),采用計數器加控制電路即可實(shí)現??刂撇糠謪f(xié)助實(shí)現數據無(wú)縫編碼及形成幀起始位和結束位,用VHDL設計易于實(shí)現。編碼后的數據進(jìn)行ASK調制(13.56MHz載波),經(jīng)天線(xiàn)發(fā)射出去。
(2)數據譯碼從射頻卡返回的數據經(jīng)過(guò)一次解調(去掉13.56MHz載波)后,數據編碼格式如圖3所示??梢灾苯舆M(jìn)行數據譯碼,也可以去除子載波(423.75kHz)后得到Manchester碼再譯碼。這里采用后者,通過(guò)在每一bit的前、后半段時(shí)間內兩次取樣、判決、加以串并變換即可得到譯碼后的并行數據并送至并行CRC模塊進(jìn)行CRC校驗,同時(shí)送往單片機處理,行CRC模塊在校驗結束時(shí)通知單片機取校驗結果。
2.2 差錯處理模塊
與射頻卡內部電路配合,讀寫(xiě)器端采用了常用的CRC檢錯得傳機制。為了縮短處理時(shí)間,滿(mǎn)足讀寫(xiě)器在實(shí)際應用中對多張卡同時(shí)處理時(shí)的響應時(shí)間要求,設計采用硬件實(shí)現。
評論