
本發明射頻識別(RadioFrequencyIdentification,RFID)
技術領域:
,具體涉及一種RFID教學展示方法。
背景技術:
:智能卡(“SmartCard”),也稱作集成電路卡(IntegratedCircuitcard),即IC卡。它一般指將集成電路芯片嵌裝于塑料等基片上制成的卡片,外形與磁卡相似,芯片具有存儲、加密及數據處理等功能。射頻識別卡也被稱作非接觸式IC卡,或非接觸IC卡,非接觸卡,感應卡,誕生于20世紀90年代初,由于成功地結合了射頻識別技術和IC卡技術,解決了無源和免接觸的難題,RFID卡具有磁卡和接觸式IC卡不可比擬的優點。其一問世便得到廣泛關注,并以驚人的速度得到推廣應用。RFID卡由IC芯片、感應天線組成,完全密封在一個標準PVC卡片中,無外露部分。RFID卡以其方便交易、速度快、應用領域廣而增長迅速,從長遠角度看,RFID卡將會替換目前廣泛使用的接觸式IC卡。在國內,RFID卡主要應用在公共交通、身份識別、門禁控制等領域。(1)公共交通RFID卡應用潛力最大的領域之一就是公共交通領域。例如公交、地鐵,乘客將RFID卡做的電子車票放在錢包或者包里就可以檢票,方便快捷。公交經營者也宜于管理、減少支出。(2)身份識別使用RFID卡做為身份識別方式,比一般的證件卡片具有更高的防偽性,存儲更多信息,便于管理。我國第二代公民身份證即采用RFID卡,卡中輸入生物特征信息及身份信息,以進一步加強防偽,同時便于全國實時管理。(3)門禁控制采用基于RFID卡的控制系統,可以自動檢查每個人進入大樓、管理區的準入權限,并記錄出入時間。另外,還有高速公路收費,停車場收費,加油站收費,智能卡水表、電表、煤氣表等應用,使用非接式IC卡都是首選。而今高校RFID教學設備都基于工業化RFID設備,由于原理性代碼都打包在一個工程中,RFID教學過程中不能很好的展示RFID工作流程。技術實現要素:有鑒于此,本發明的目的在于克服現有教學技術的不足,提供一種RFID教學展示裝置及方法,以解決現有教學技術中學生無法直觀理解RFID工作流程的問題。為實現以上目的,本發明采用如下技術方案:一種RFID教學展示裝置,包括RFID模塊、串口模塊、LCD模塊、ARM智能網關模塊和Zigbee模塊,所述RFID模塊通過串口模塊與電腦進行交互,RFID模塊還與ARM智能網關模塊直接進行數據交互;ARM智能網關模塊與Zigbee模塊模塊連接,RFID模塊連接LCD模塊。優選地,RFID教學展示裝置中所有的模塊(RFID模塊、串口模塊、LCD模塊、ARM智能網關模塊和Zigbee模塊)都有獨立的供電模塊;所述供電模塊包括LDO穩壓器,所述LDO穩壓器輸出端與各種模塊連接。優選地,所述液晶顯示器選用LCD12864,該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互圖形界面。該模塊具有低電壓低功耗特點,不論硬件電路結構或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。一種RFID教學展示方法,其特征在于:基于15693協議的RFID教學原理,將RFID工作流程展開為十五個教學實驗,包括:單卡尋卡實驗、RFID卡選擇實驗、RFID卡復位實驗、RFID卡靜默實驗、RFID單個數據塊讀取實驗、RFID單個數據塊寫實驗、RFID多個數據塊讀取實驗、獲取RFID卡系統信息實驗、RFID寫AFI實驗、RFID寫數據存儲格式標識符實驗、RFID鎖定應用族標識符實驗、RFID鎖定數據存儲格式標識實驗、RFID鎖定數據塊實驗、RFID獲取多個塊安全狀態實驗以及RFID多卡尋卡防沖突實驗。學生通過這些實驗可以很好的理解射頻識別工作流程。本發明采用以上技術方案,至少具備以下有益效果:由于現今高校RFID教學設備都基于工業化RFID設備,由于原理性代碼都打包在一個工程中,RFID教學過程中不能很好的展示RFID工作流程。本發明提供的FID教學展示裝置和RFID教學展示方法,解決了現有教學技術中學生無法直觀理解RFID工作流程的問題。本發明使用射頻頻率為13.56MHZ,RFID原理展示基于15693協議,使用分立器件搭建電路,實現編碼、調制、運放、解調、解碼等功能,學生可結合各功能模塊學習射頻識別工作流程。附圖說明圖1為RFID教學展示裝置的整體結構示意圖;圖2為RFID教學展示裝置的電路示意框圖;圖3為RFID模塊的電路原理圖;圖4為ARM智能網關模塊的電路原理圖;圖5為LCD模塊的電路原理圖;圖6為Zigbee模塊的電路原理圖;圖7為串口模塊的電路原理圖。圖8為實驗一的單卡尋卡實驗流程圖;圖9為實驗一的15693協議卡UID號;圖10為實驗一的數字信號波形;圖11為實驗一的載波波形;圖12為實驗一的調制波形;圖13為實驗一的解調波形。圖14為實驗二的串口輸出信息。圖15是實驗三的串口輸出信息。圖16是實驗四的串口輸出信息。圖17是實驗五的串口輸出信息。圖18是實驗六的串口輸出信息。圖19是實驗七的串口輸出信息。圖20是實驗八的串口輸出信息。圖21是實驗九的串口輸出信息。圖22是實驗十的串口輸出信息。圖23是實驗十一的串口輸出信息。圖24是實驗十二的串口輸出信息。圖25是實驗十三的串口輸出信息。圖26是實驗十四的串口輸出信息。圖27是實驗十五的實驗流程圖;圖28是實驗十五的串口輸出信息。具體實施方式下面結合附圖和實施例對本發明作詳細介紹。參照圖1和圖2,一種RFID教學展示裝置,包括RFID模塊、串口模塊、LCD模塊、ARM智能網關模塊和Zigbee模塊,所述RFID模塊通過串口模塊與電腦進行交互,RFID模塊還與ARM智能網關模塊直接進行數據交互;ARM智能網關模塊與Zigbee模塊模塊連接,RFID模塊連接LCD模塊。優選地,RFID教學展示裝置中所有的模塊(RFID模塊、串口模塊、LCD模塊、ARM智能網關模塊和Zigbee模塊)都有獨立的供電模塊;所述供電模塊包括LDO穩壓器,所述LDO穩壓器輸出端與各種模塊連接。參見圖3,所述RFID模塊的射頻頻率為13.56MHZ,其原理展開模塊基于15693協議,使用分立器件搭建電路,實現編碼、調制、運放、解調、解碼等功能,學生可結合各功能模塊學習射頻識別工作流程。參加圖5,所述液晶顯示器選用LCD12864,該模塊靈活的接口方式和簡單、方便的操作指令,可構成全中文人機交互圖形界面。該模塊具有低電壓低功耗特點,不論硬件電路結構或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。ARM智能網關模塊的電路原理圖見圖4,Zigbee模塊的電路原理圖見圖6,串口模塊的電路原理圖見圖7。基于上述RFID教學展示裝置進行RFID教學展示的方法如下:基于15693協議的RFID教學原理,將RFID工作流程展開為十五個教學實驗,包括:單卡尋卡實驗、RFID卡選擇實驗、RFID卡復位實驗、RFID卡靜默實驗、RFID單個數據塊讀取實驗、RFID單個數據塊寫實驗、RFID多個數據塊讀取實驗、獲取RFID卡系統信息實驗、RFID寫AFI實驗、RFID寫數據存儲格式標識符實驗、RFID鎖定應用族標識符實驗、RFID鎖定數據存儲格式標識實驗、RFID鎖定數據塊實驗、RFID獲取多個塊安全狀態實驗以及RFID多卡尋卡防沖突實驗。實驗一單卡尋卡實驗一、實驗內容本實驗中實現了RFID最基本的功能,即尋卡功能。RFID尋卡分為單卡尋卡與多卡尋卡,其中單卡尋卡原理較為簡單,發送尋卡指令并接受單卡返回的UID信息即可。二、實驗操作及原理圖8為本實驗的程序例程圖,在程序開始時對主控芯片KM60DN512ZVLQ10進行配置,包括系統的中斷,向量表,IO端口引腳,時鐘,串口,以及外設(LED燈、蜂鳴器,按鍵)等。配置完成后,在while(1)循環中調用函數Key_Scan()來檢查KEY1是否被按下,如果被按下則調用函數Inventory_One_Card()尋卡并接收解析卡返回得信息。使用串口線將RFID卡的COM1與電腦的串口相連,將程序編譯后下載到RFID開發板中運行,程序開始運行后將一直處于檢測按鍵循環中,當按下按鍵則執行尋卡指令。將任意一張15693協議的卡至于RFID開發板的天線上方,RFID開發板發送的尋卡指令通過天線的電感耦合傳送到卡中,15693卡內芯片對尋卡命令進行回應,通過天線電感耦合方式向RFID開發板發回卡的UID信息。三、實驗現象及分析1.串口調試信息將15693協議卡置于RFID開發板天線上方,RFID開發板每次尋卡成功,蜂鳴器就會鳴響一次,同時卡UID號會通過出口傳送到計算機串口助手端,如下圖9所示。2.示波器波形展示RFID開發板上,我們預留出了數字信號、載波、調制波形、解調波形的測試接口,可以通過接入示波器來觀察對應的波形圖,以下對本節實驗中的數字信號,載波,調制波形、解調波形進行截取展示:(1)數字信號波形在RFID開發板右下角處“MEASURE”區為示波器接入處,由“PPM”處接入示波器測量數字信號波形,將示波器探針接到“PPM”處,接地線接到GND處,運行程序觀察波形顯示,示例波形圖如圖10所示。(2)載波由“CARR”處接入示波器測量載波波形,將示波器探針接到“CARR”處,接地線接到GND處,運行程序觀察波形顯示,示例波形如圖11所示:(3)調制波形由“MOD”處接入示波器測量調制波形,將示波器探針接到“MOD”處,接地線接到GND處,運行程序觀察波形顯示,示例波形如圖12所示。(4)解調波形由“ASK”處接入示波器測量解調波形,將示波器探針接到“ASK”處,接地線接到GND處,運行程序觀察波形顯示,示例波形如圖13所示。實驗二RFID卡選擇實驗一、實驗內容在實驗一中,我們可以通過尋卡指令獲得RFID卡的UID號,基于此UID號,我們可以實現對RFID卡的更多的操作。本節中介紹對RFID卡的選擇操作。二、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則執行選卡操作。三、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將己知的卡UID號寫入到Rfid.c文件的Card_UID數組中,如下例所示:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};修改后將程序編譯好下載到RFID開發板中運行,將UID號對應的RFID卡放置到RFID開發板天線的上方,按下KEY1進行選卡。四、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖14所示:從串口返回的信息0078F0,00為卡返回來的標志信息,0F78是00的循環冗余校驗結果。結合15693協議中的選卡的響應格式,00表示沒有發生錯誤。2.示波器觀察參照實驗一單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗三RFID卡復位實驗一、實驗內容本實驗中基于尋卡實驗中獲得的卡UID號進行卡復位實驗。二、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則執行卡復位操作;如果檢測到KEY2鍵被按下則執行尋卡操作。三、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,如下例所示:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};修改后將程序編譯好下載到RFID開發板中運行,將UID號對應的RFID卡放置到RFID開發板天線的上方,按下KEY2進行尋卡,按下KEY1進行卡復位操作。四、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖15所示:從串口返回的信息0078F0,00為卡返回來的標志信息,0F78是00的循環冗余校驗結果。結合15693協議中的復位卡的響應格式,00表示沒有發生錯誤。2.示波器波形展示參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗四RFID卡靜默實驗一、實驗內容本實驗中基于尋卡實驗中獲得的卡UID號進行卡靜默實驗。二、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送指令使卡進入到靜默狀態;如果檢測到KEY2鍵被按下則執行尋卡操作;如果檢測到KEY3被按下,則執行卡復位操作。當RFID卡處于靜默狀態時,將不會對尋卡指令進行響應。在以下情況中,RFID卡將跳出靜默狀態:(1)重新設置(斷電)(2)收到選擇請求。如果支持選擇請求則進入選擇狀態,如果不支持則返回(3)收到卡復位命令三、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,如下例所示:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};修改后將程序編譯好下載到RFID開發板中運行,將UID號對應的RFID卡放置到RFID開發板天線的上方,按下KEY1向RFID卡發布靜默指令,如果成功則RFID卡將進入靜默狀態。這時按下KEY2按鍵進行尋卡操作時,該RFID卡不會對尋卡指令進行響應。為了解除卡的靜默狀態,我們可以按下KEY3按鍵執行卡復位操作,這樣RFID卡就從靜默狀態中跳出;此時再次按下KEY2按鍵進行尋卡操作,RFID卡可以正常的堆尋卡指令返回響應。四、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖16所示:從串口返回的信息0078F0,00為卡返回來的標志信息,0F78是00的循環冗余校驗結果。結合15693協議中的卡靜默的響應格式,00表示沒有發生錯誤。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗五RFID單個數據塊讀取實驗一、實驗內容電子標簽(即RFID卡)由芯片和內置天線組成,芯片內有一定的內存空間用于保存具有一定數據格式的電子數據,作為待識別物品的標識性信息,是射頻識別系統真正的數據載體。RFID卡內的內存空間被分為若干個大小固定的塊,本實驗中實現了對RFID卡內部數據塊的讀取操作。二、實驗原理通過向RFID標簽卡發送讀取單個數據塊命令(命令編碼:‘20’),當RFID標簽收到讀單個數據塊命令時,將讀取該數據塊的數據,并在應答中返回數據。RFID開發板通過天線發給RFID卡的命令幀如表6-1:表6-1RFID開發板發給RFID卡的命令幀當讀取單個數據塊操作出錯時(錯誤標志位置位),RFID卡的響應數據格式如表6-2:表6-2RFID卡的響應數據格式(讀取單個數據塊操作出錯)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當讀取單個數據塊操作正確時,RFID返回的應答幀數據格式如表6-3:表6-3RFID卡的響應數據格式(讀取單個數據塊操作正確)SOF標志塊安全狀態數據CRC16EOF8-bits8-bits塊長度16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送讀取單個數據塊指令;如果讀取成功,則會在串口中打印讀取到的數據。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};在主函數中設定要讀取的數據塊的編號Block_num,本實驗中默認讀取Block_num=2的數據塊,可以通過修改Block_num來讀取其它數據塊的數據內容。編譯修改后的程序并下載到開發板上運行,按下KEY1按鍵執行讀取單個數據塊命令。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖17所示:從串口返回的信息000000000077CF,第一個00為卡返回來的標志信息,后面的四個00為被讀取數據塊中的4個字節內容。CF77是循環冗余校驗結果。結合15693協議中的選卡的響應格式,00表示沒有發生錯誤。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗六RFID單個數據塊寫實驗一、實驗內容上實驗中完成對RFID標簽卡單個數據塊的讀取操作。本實驗中實現對RFID單個數據塊的寫操作,并通過RFID單個數據塊讀取功能檢查寫入操作是否正確。二、實驗原理通過向RIFD標簽卡發送寫單個數據塊命令(命令編碼:‘21’)來完成寫數據塊操作。當RFID標簽卡收到寫單個數據塊命令,其將包含在命令請求中的數據寫入到指定的數據塊,并在應答中報告操作成功與否。RFID開發板發給RFID標簽卡的命令幀數據格式如表7-1:表7-1RFID開發板發給RFID標簽卡的命令幀當寫單個數據塊操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如表7-2:表7-2RFID卡的響應幀數據格式(單個數據塊操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當寫單個數據塊操作無誤時(錯誤標志位為0),RFID的響應幀數據格式為:表7-3RFID卡的響應幀數格式(單個數據塊操作無誤時)SOF標志CRC16EOF8-bits16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則將準備好的數據寫入到RFID卡指定的數據塊中;如果檢測到KEY2按鍵按下,則讀取剛剛寫入數據塊中的數據。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};在主函數中設定要寫入、讀取的數據塊的編號Block_num,本實驗中默認讀取Block_num=2的數據塊,可以通過修改Block_num來寫入、讀取其它數據塊的數據內容。編譯修改后的程序并下載到RFID開發板上運行,按下KEY1按鍵執行寫單個數據塊操作,寫入過程和響應結果通過串口打印出來。按下KEY2按鍵執行讀單個數據塊操作,該讀取操作的數據塊塊號即是步驟(3)中寫數據塊的塊號,因此可以通過將讀出的數據與寫入的數據進行對比來驗證步驟(3)中的寫入操作是否正。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖18示:從串口返回的信息0078F0,00為卡返回來的標志信息,0F78是00的循環冗余校驗結果。結合15693協議中的寫數據塊的響應格式,00表示沒有發生錯誤。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗七RFID多個數據塊讀取實驗一、實驗內容在前面,我們針對于單個RFID標簽卡的數據塊進行讀寫操作,每操作一個數據塊就需要發送一次指令,如果一次要執行對多個數據塊的讀寫操作則需要連續發送多次讀寫指令,這時比較費時的。本實驗中我們介紹通過發送多數據塊讀取指令來完成對多個數據塊讀取的操作。二、實驗原理通過向RIFD標簽卡發送讀多個數據塊命令(命令編碼:‘23’)來完成對多個數據塊讀操作。當RFID標簽卡收到讀多個數據塊命令,其將按照請求中塊地址和塊數讀取數據內容,并在相應中返回數據內容。如果在請求命令中設置了選擇標志,則RFID卡將返回塊安全狀態,接著一個接一個的返回各個數據塊中的內容。如果沒有在請求中設置選擇標志,則RFID卡只返回各個數據中的內容。RFID開發板發出的讀多個數據塊內容的命令幀數據格式如表8-1:表8-1RFID開發板發出的讀多個數據塊內容的命令幀數據格式如上表所示“首個塊序號”從‘00’到‘FF’。請求中,“塊數量”比RFID在其響應中應返回的塊的數目要少一個。例如:“塊數量”域中的值為‘06’,則實際請求讀取7個塊(值‘00’請求讀單個數據塊)。當讀多個數據塊操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如表8-2:表8-2RFID卡的響應幀數據格式(多個數據塊操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當讀多個數據塊操作無誤時(錯誤標志位為0),RFID的響應幀數據格式如表8-3:表8-3RFID卡的響應幀數格式(多個數據塊操作無誤時)SOF標志塊安全狀態數據CRC16EOF8-bits8-bits塊長度16bits當讀取的塊數量大于1時,每個被讀的塊都會返回一個“塊安全狀態+數據”,讀取n個數據塊則會返回n個“塊安全狀態+數據”。三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則讀取指定塊地址和快數目的數據塊。四、試驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};在主函數中設定多數據塊讀操作的起始塊地址Block_addr和要讀取的塊數量Block_count,本實驗中默認設置Block_addr=0;Block_count=4進行讀取。可以通過修改這兩個參數來改變讀取塊的位置和數量。編譯修改后的程序并下載到RFID開發板上運行,按下KEY1按鍵執行讀多個數據塊操作,讀取過程和響應信息可以通過串口打印出來。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖19所示:從串口返回的信息0078563412785534120000000078553412542D,第一個00為卡返回來的標志信息,后面的16個字節為被讀取的4個數據塊中的內容。2D54是循環冗余校驗結果。結合15693協議中的選卡的響應格式,00表示沒有發生錯誤。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗八獲取RFID卡系統信息實驗一、實驗內容在前幾章實驗中,我們對RFID卡的單個、多個數據塊內容進行了操作,在操作過程中發現讀一個數據塊時會返回4個字節的數據內容。那么是不是所有的RFID卡每個數據塊內存儲容量都是4個字節呢?實際上,不同廠家,不同協議的RFID卡卡內的數據塊格式,數據塊容量都不一定是相同的,一張RFID卡內數據塊的個數和數據塊容量信息在卡出廠時已經固化在卡中,我們可以通過獲取RFID卡系統信息來得知某一張RFID卡的數據塊信息。二、實驗原理通過發送請求系統信息指令(指令編碼‘2B’)來獲得系統的信息值。請求系統信息指令的數據格式如下表9-1所示:表9-1請求系統信息指令的數據格式SOF標志獲取系統信息UIDCRC16EOF8-bits8-bits64-bits16-bits當請求操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如下表9-2所示:表9-2RFID卡的響應幀數據格式(多個數據塊操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當請求操作無誤時,RFID卡的響應幀數據格式如下表9-3所示:表9-3RFID卡的響應幀數格式(多個數據塊操作無誤時)信息域如下表9-4:表9-4信息域位16-1413-98-1內容RFU塊容量(單位:字節)塊數目如上表所示:當RFID返回響應幀后,我們可以從響應幀的信息域中提取卡系統信息。三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送請求系統信息指令并等待響應幀,發送指令和接收響應信息將通過串口進行打印。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將編譯好的程序下載到開發板中運行,把RFID卡放置于RFID開發板天線上方,按下KEY1按鍵發送請求系統信息指令,如果成功則將在串口打印出RFID卡系統信息。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖20所示:從串口返回的信息000FE26D2828000104E000001B0301CB2E,第一個00為卡返回來的標志信息,0F為標志信息,可參照協議中的消息標志定義表來查看代表的意思,后面的8個字節為UID卡號,E0后面的第一個00為DSFID的內容,第二個00為AFI的內容,1B0301是信息域返回的內容,CB2E為循環冗余校驗結果。結合15693協議中的獲取系統信息的響應格式,可以得出DSFID、AFI內容,結合協議中的VICC內存容量表可以得出卡的塊容量為03(4字節),塊數目為1R。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗九RFID寫應用族標識符實驗一、實驗內容日常生活中我們會接觸到多種應用的RFID卡,比如門禁卡,公交卡,飯卡等等,那么讀門禁卡的讀卡器是否也能讀公交卡呢?如果能的話,那么RFID卡的使用勢必會出現混亂的局面。實際中,一張專用得RFID卡只會對專用的讀卡器操作做出響應,這是通過AFI功能實現的。AFI(Applicationfamilyidentifier),即應用族標識符,代表由讀卡器鎖定的應用類型,RFID卡只有滿足所需的應用準則才能從出現的多張RFID卡中被挑選出。二、實驗原理在RFID體系中,已經對AFI的編碼對應的應用進行了規定,如下表10-1所示:表10-1AFI的編碼對應的應用通過發送寫應用族標識符命令(命令編碼‘27’)來將一個AFI寫入到RFID卡內存中。寫應用族標識符命令的數據格式如下表10-2所示:表10-2應用族標識符命令的數據格式SOF標志寫AFIUIDAFICRC16EOF8-bits8-bits64-bits8-bits16-bits當寫AFI操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式為如下表10-3所示:表10-3RFID卡的響應幀數據格式(寫AFI操作出錯時)SOF標志錯誤碼CRC16ROF8-bits8-bits16-bits當寫AFI操作無誤時,RFID卡的響應幀數據格式為:表10-4RFID卡的響應幀數據格式(寫AFI操作無誤時)SOF標志CRC16EOF8-bits16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送寫應用族標識符命令并等待響應幀,寫入完成后,如果檢測到KEY2鍵被按下,則執行讀取RFID卡系統信息指令并等待RFID卡返回系統信息,將讀取到的AFI信息與寫入的AFI進行對比,驗證AFI寫入是否正確。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,Ox1F,0x28,0x28,Ox00,Ox01,0x04,0xE0};在主函數中設置將要寫入RFID卡的AFI值AFI_Data,在本實驗中默認設定AFI_Data=0x01,可以修改AFI_Data值來改變RFID卡的應用族標識符。編譯修改后的程序并下載到RFID開發板上運行,按下KEY1按鍵執行寫AFI操作。寫AFI完成后,為了驗證寫入AFI是否正確執行,按下KEY2鍵獲取RFID卡系統信息,將RFID返回的系統信息中的AFI值與(2)椎間盤買個設定的AFI值對比,驗證寫AFI操作是否正確。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖21所示:點擊Keyl執行寫入AFI命令,從串口返回的信息CardResponse0078F0,00表示寫入成功,F078為循環冗余校驗結果。點擊Key2獲取系統信息返回0FE26D2828000104E000011B0301CB2E,結合第九章獲取系統信息分析結果可發現AFI位被寫為了0x01。如果寫入失敗,表明AFI位被鎖定。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗十RFID寫數據存儲格式標識符實驗一、實驗內容數據存儲格式標識符(DSFID)指出了數據在VICC內存中是怎樣構成的。DSFID可被相應的命令編程和鎖定。DSFID被編碼在一個字節里。DSFID允許即時知道數據的邏輯組織。假如VICC不支持DSFID的編程,VICC將以值“0”作為應答。二、實驗原理通過執行寫DSFID命令(命令編碼‘29’)將指定的DSFID值寫入到RFID卡內存中。如果沒有設置選擇標志,則當RFID卡完成寫操作后返回響應;如果設置了選擇標志,則RFID卡將等待收到來自開發板發送的EOF,然后基于該接收信息返回其應答。寫DSFID命令幀數據結構如下表11-1所示:表11-1DSFID命令幀數據結構SOF標志寫DSFIDUIDDSFIDCEC16EOF8-bits8-bits64-bits8-bits16bits當寫DSFID操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如下表11-2所示:表11-2RFID卡的響應幀數據格式(DSFID操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當寫DSFID操作無誤時,RFID卡的響應幀數據格式如下表11-3所示:表11-3RFID卡的響應幀數據格式(DSFID操作無誤時)SOF標志CRC16EOF8-bits16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送寫DSFID命令并等待響應幀,寫入完成后,如果檢測到KEY2鍵被按下,則執行讀取RFID卡系統信息指令并等待RFID卡返回系統信息,將讀取到的DSFID信息與寫入的DSFID進行對比,驗證DSFID寫入是否正確。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};在主函數中設置將要寫入RFID卡DSFID值的變量DSFID_Data,在本實驗中默認設定DSFID_Data=0x01,可以修改DSFID_Data值來改變RFID卡的數據存儲格式標識符。編譯修改后的程序并下載到開發板上運行,按下KEY1按鍵執行寫DSFID操作。寫DSFID完成后,為了驗證寫入DSFID是否正確執行,按下KEY2鍵獲取RFID卡系統信息,將RFID返回的系統信息中的DSFID值與(2)椎間盤買個設定的DSFID值對比,驗證寫DSFID操作是否正確。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖22所示:點擊Keyl執行寫入DSFID命令,從串口返回的信息CardResponse0078F0,00表示寫入成功,F078為循環冗余校驗結果。點擊Key2獲取系統信息返回0FE26D2828000104E001001R0301CB2E,結合第九章獲取系統信息分析結果可發現DSFID位被寫為了0x01。如果寫入失敗,表明DSFID位被鎖定。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗十一RFID鎖定應用族標識符實驗一、實驗內容實際生活中所使用的RFID卡大多是專用卡,所謂專用卡即是只能應用在單一的應用范圍內,如只能被特定的讀卡器讀取并操作。而RFID在出廠時確實通用的,只要發送對應的命令即可進行尋卡或操作。上述特定應用卡是通過鎖定RFID卡中的應用族標識符來實現的。注意,鎖定AFI過程是不可逆的,鎖定之后該RFID卡的AFI就是固定的。本實驗中實現對一張RFID卡進行AFI鎖定。二、實驗原理通過向RFID標簽卡發送鎖定AFI指令(指令編碼‘28’)將AFI值永久的鎖定在其內存中。如果沒有設置選擇標志,當RFID完成寫操作后返回其響應;如果設置了選擇標志,RFID將等待來自開發板發出的EOF,然后基于接收到的指令信息返回應答。鎖定AFI指令命令幀數據結構如下表12-1所示:表12-1鎖定AFI指令命令幀數據結構SOF標志鎖定AFIUIDCRC16EOF8-bits8-bits64-bits16-bits當鎖定AFI操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如下表12-2所示:表12-2RFID卡的響應幀數據格式(鎖定AFI操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當鎖定AFI操作無誤時,RFID卡的響應幀數據格式如下表12-3所示:表12-3RFID卡的響應幀數據格式(鎖定AFI操作無誤時)SOF標志CRC16EOF8-bits16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送鎖定AFI指令,通過串口打印指令發送以及接收響應過程中的相關信息。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0}。按下KEY1鍵執行鎖定AFI操作,執行過后RFID卡內的AFI信息被鎖定,不能再次修改。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖23所示:點擊Keyl執行鎖定AFI命令,從串口返回的信息CardResponse0078F0,00表示鎖定成功,F078為循環冗余校驗結果。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗十二RFID鎖定數據存儲格式標識實驗一、實驗內容本實驗中實現對RFID標簽卡執行數據存儲格式標識(DSFID)鎖定。注意,該過程也是不可逆的,即一張RFID卡在鎖定DSFID后就不能在對其數據存儲格式進行修改。二、實驗原理通過向RFID標簽卡發送鎖定DSFID指令(指令編碼‘2A’)將DSFID值永久的鎖定在其內存中。如果沒有設置選擇標志,當RFID完成寫操作后返回其響應;如果設置了選擇標志,RFID將等待來自開發板發出的EOF,然后基于接收到的指令信息返回應答。鎖定DSFID指令命令幀數據結構如下表13-1所示:表13-1鎖定DSFID指令命令幀數據結構當鎖定DSFID操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如下表13-2所示:表13-2RFID卡的響應幀數據格式(DSFID操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當鎖定DSFID操作無誤時,RFID卡的響應幀數據格式如下表13-3所示:表13-3RFID卡的響應幀數據格式(DSFID操作無誤時)SOF標志CRC16EOF8-bits16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送鎖定DSFID指令,通過串口打印指令發送以及接收響應過程中的相關信息。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};按下KEY1鍵執行鎖定DSFID操作,執行過后RFID卡內的DSFID信息被鎖定,不能再次修改。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖24所示。點擊Keyl執行鎖定DSFID命令,從串口返回的信息CardResponse0078F0,00表示鎖定成功,F078為循環冗余校驗結果。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗十三RFID鎖定數據塊實驗一、實驗內容本實驗中實現對RFID標簽卡執行數據塊鎖定操作。注意,該過程也是不可逆的,即一張RFID卡在鎖定其某一數據塊后,該數據塊內容就不能再進行修改,換言之,該數據塊是只讀的。二、實驗原理通過向RFID標簽卡發送塊鎖定指令(指令編碼‘22’)將指定數據塊中的數據永久的鎖定在其內存中。如果沒有設置選擇標志,當RFID完成寫操作后返回其響應;如果設置了選擇標志,RFID將等待來自開發板發出的EOF,然后基于接收到的指令信息返回應答。鎖定塊指令命令幀數據結構如下表14-1所示:表14-1鎖定塊指令命令幀數據結構SOF標志鎖定塊UID塊號CRC16EOF8-bits8-bits64-bits8-bits16-bits當鎖定塊操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如下表14-2所示:表14-2RFID卡的響應幀數據格式(鎖定塊操作出錯時)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當鎖定塊操作無誤時,RFID卡的響應幀數據格式如下表14-3所示:表14-3RFID卡的響應幀數據格式(鎖定塊操作無誤時)SOF標志CRC16EOF8-bits16-bits三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送鎖定塊指令,通過串口打印指令發送以及接收響應過程中的相關信息。之后為了驗證塊鎖定是否完成,可以通過再次改寫數據塊中的內容,查看是否改寫成功,從而來檢驗是否鎖定完成。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};在主函數中通過設置變量Block_num來設置要鎖定塊的塊號,實驗中默認設定Block_num=2,可以修改Block_num的值來改變要鎖定的數據塊。將程序編譯下載到開發板中運行。按下KEY1按鍵執行塊鎖定操作。為了驗證塊鎖定后是否可以繼續修改數據塊中的數據,按下KEY2鍵執行數據塊寫操作。按下KEY3鍵讀取數據塊中數據,查看數據塊中內容是否被修改。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖25所示。點擊Key1執行鎖定數據塊命令,從串口返回的信息CardResponse0078F0,00表示鎖定成功,F078為循環冗余校驗結果。點擊Key2執行寫單個數據塊命令,串口返回信息010F68EE,其中EE68為循環冗余校驗結果,010F表明寫入錯誤,數據塊被鎖定。點擊Key3執行讀取數據塊命令,串口返回信息0078553412E528,其中最后兩位28E5為循環冗余校驗結果,12345578為數據塊內數據。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗十四RFID獲取多個塊安全狀態實驗一、實驗內容本實驗中實現獲取RFID卡多個塊安全狀態信息。二、實驗原理通過向RFID標簽卡發送獲取多塊安全狀態指令(指令編碼‘2C’)來獲得卡多個數據塊的安全狀態信息。塊的編碼從‘00’到‘FF’(0到255)。獲取多塊安全狀態命令幀的數據格式如下表15-1所示:表15-1獲取多塊安全狀態命令幀的數據格式當請求獲取塊安全狀態操作出錯時(錯誤標志位置位),RFID卡的響應幀數據格式如下表15-2所示:表15-2RFID卡的響應幀數據格式(請求獲取塊安全狀態操作出錯)SOF標志錯誤碼CRC16EOF8-bits8-bits16-bits當請求獲取塊安全狀態操作無誤時,RFID卡的響應幀數據格式如下表15-3所示:表15-3RFID卡的響應幀數據格式(請求獲取塊安全狀態操作無誤)三、實驗流程程序開始時先進行硬件初始化配置,初始化配置完成后,程序進入檢測按鍵循環中。如果檢測到KEY1鍵被按下則發送獲取多個數據塊安全狀態指令。程序執行過程和結果信息將通過串口輸出打印。四、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,將尋卡得到的卡UID號寫入到Rfid.c文件的Card_UID數組中,例如:U8Card_UID[8]={0x5B,0x1F,0x28,0x28,0x00,0x01,0x04,0xE0};在主函數中通過配置變量addr和num來確定要獲取安全狀態的數據塊的首塊序號和塊數目。本實驗中默認設置首塊序號為0,塊數目為4。可以通過修改這兩個變量來獲取任何想了解的塊的安全狀態。將程序編譯下載到RFID開發板中運行。按下KEY1按鍵執行塊安全狀態獲取操作。五、實驗現象1.串口調試信息程序開始運行后,按照實驗操作流程進行操作,串口輸出信息如圖26所示。點擊Keyl執行獲取多個塊安全狀態塊命令,從串口返回的信息CardResponse0001000145C2,C245為循環冗余校驗結果。第一個00為卡返回的標志,01000001為四個數據塊的安全狀態(01表示鎖定、00表示未鎖定)。2.示波器觀察參照章單卡尋卡實驗的示波器操作進行觀測、記錄和分析。實驗十五RFID多卡尋卡防沖突實驗一、實驗目的1、掌握RFID15693協議的多卡防沖突的協議內容和實現方法2、掌握基于K60的cortex-M4嵌入式軟件開發和調試方法二、實驗設備●RFID原理板及標簽●JLINK仿真器●電源適配器及串口線●IAR集成開發環境三、實驗內容本章實驗中實現RFID多卡尋卡功能。相比于單卡尋卡,多卡尋卡的原理復雜的多,本實驗中使用防沖突算法來實現多卡尋卡。四、實驗流程圖27為本實驗的程序執行流程圖,程序開始后先進行硬件配置、硬件初始化。初始化完成后開始循環發送多卡尋卡指令,之后接收卡返回的UID信息,如果有多張卡同時返回UID信息就會產生沖突,程序針對沖突執行防沖突算法來實現對多張卡的尋卡。五、實驗操作使用串口線將RFID卡的COM1與電腦的串口相連,打開并編譯程序,將RFID開發板上電,將編譯好的程序下載到芯片中。程序開始運行后將以1s為間隔循環發送多卡識別指令,將一張卡放置于開發板的天線上,程序將讀到該卡的UID號,過程與第一章中單卡尋卡相同。將兩張RFID卡同時置于RFID開發板天線上方,RFID開發板將先后識別出兩張RFID卡,并按照識別順序打印出RFID卡的UID號。六、實驗現象1.串口調試信息程序開始運行后,將單張15693協議卡置于開發板天線上方,然后按下KEY1鍵進行尋卡。將兩張15693協議卡置于開發板天線上方,然后按下KEY1鍵進行尋卡,開發板若尋卡成功,則會連續發出兩次蜂鳴,同時在串口上輸出兩張卡的UID號,如圖28所示。2.示波器觀察參照單卡尋卡實驗的示波器操作進行觀測、記錄和分析。當前第1頁1 2 3