物聯(lián)網(wǎng)無線通信技術(shù)RFID卡讀寫實(shí)驗(yàn)(共8頁(yè))_第1頁(yè)
物聯(lián)網(wǎng)無線通信技術(shù)RFID卡讀寫實(shí)驗(yàn)(共8頁(yè))_第2頁(yè)
物聯(lián)網(wǎng)無線通信技術(shù)RFID卡讀寫實(shí)驗(yàn)(共8頁(yè))_第3頁(yè)
物聯(lián)網(wǎng)無線通信技術(shù)RFID卡讀寫實(shí)驗(yàn)(共8頁(yè))_第4頁(yè)
物聯(lián)網(wǎng)無線通信技術(shù)RFID卡讀寫實(shí)驗(yàn)(共8頁(yè))_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上實(shí)驗(yàn)報(bào)告【20162017學(xué)年第2學(xué)期】【基本信息】【開課部門】青軟實(shí)訓(xùn)【實(shí)驗(yàn)課程】嵌入式系統(tǒng)【設(shè)課形式】獨(dú)立非獨(dú)立 þ【實(shí)驗(yàn)項(xiàng)目】 RFID卡讀寫實(shí)驗(yàn)【項(xiàng)目類型】基礎(chǔ)þ綜合設(shè)計(jì)研究創(chuàng)新其它【項(xiàng)目學(xué)時(shí)】【學(xué)生姓名】【學(xué)號(hào)】【專業(yè)】【班級(jí)】【同組學(xué)生】【實(shí)驗(yàn)室名】【實(shí)驗(yàn)日期】2018.3.15【教師對(duì)報(bào)告的最終評(píng)價(jià)及處理意見】成績(jī)(百分制):(涂改無效)教師:年月日【實(shí)驗(yàn)報(bào)告】實(shí)驗(yàn)?zāi)康模耗軌驅(qū)ι漕l卡進(jìn)行讀寫操作實(shí)驗(yàn)步驟:1. 先來復(fù)習(xí)一下RFID卡的操作過程,如圖5-1所示。主要分為5個(gè)步驟:l 尋卡l 防沖突檢測(cè)l 選卡l 密碼驗(yàn)證其中尋卡、防沖突

2、檢測(cè)可以參考實(shí)驗(yàn)4。本實(shí)驗(yàn)講解選卡、密碼驗(yàn)證和讀寫操作。圖5- 1 RFID操作流程2. 選卡。選卡操作函數(shù)實(shí)現(xiàn)如下所示char PcdSelect(unsigned char *pSnr) char status; unsigned char i; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_ANTICOLL1; ucComMF522Buf1 = 0x70; ucComMF522Buf6 = 0; for (i=0; i<4; i+) ucComMF522Bufi+2 = *

3、(pSnr+i); ucComMF522Buf6 = *(pSnr+i); CalulateCRC(ucComMF522Buf,7,&ucComMF522Buf7); ClearBitMask(Status2Reg,0x08); status=PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,9,ucComMF522Buf,&unLen); if (status = MI_OK) && (unLen = 0x18) status = MI_OK; else status = MI_ERR; return status; 整個(gè)選擇環(huán)

4、節(jié)的過程為: 步驟1:PCD為選擇的防沖突類型和串聯(lián)級(jí)別分配了帶有編碼的SEL。 步驟2:PCD分配了帶有值為20的NVB。 步驟3:PCD發(fā)送SEL和NVB。 步驟4:工作場(chǎng)內(nèi)的所有PICC應(yīng)使用它們的完整的UID CLn響應(yīng)。 步驟5:假設(shè)場(chǎng)內(nèi)的PICC擁有唯一序列號(hào),那么,如果一個(gè)以上的PICC響應(yīng),則沖突發(fā)生。如果沒有沖突發(fā)生,則步驟6到步驟10可被跳過。 步驟6:PCD應(yīng)識(shí)別出第一個(gè)沖突的位置。 步驟7:PCD分配了帶有值的NVB,該值規(guī)定了UID CLn有效比特?cái)?shù)。這些有效位應(yīng)是PCD所決定的沖突發(fā)生之前被接收到的UID CLn的一部分再加上(0)b或(1)b。典型的實(shí)現(xiàn)是增加(1

5、)b。 步驟8:PCD發(fā)送SEL和NVB,后隨有效位本身。 步驟9:只有PICC的UID CLn中的一部分等于PCD所發(fā)送的有效位時(shí),PICC才應(yīng)發(fā)送其UID CLn的其余部分。 步驟10:如果出現(xiàn)進(jìn)一步的沖突,則重復(fù)步驟69。最大的環(huán)數(shù)目是32。 步驟11:如果不出現(xiàn)進(jìn)一步的沖突,則PCD分配帶有值為70的NVB。 步驟12:PCD發(fā)送SEL和NVB,后隨UID CLn的所有40個(gè)位,后面又緊跟CRC_A校驗(yàn)和。 步驟13:它的UID CLn與40個(gè)比特匹配,則該P(yáng)ICC以其SAK表示響應(yīng)。 步驟14:如果UID完整,則PICC應(yīng)發(fā)送帶有清空的串聯(lián)級(jí)別位的SAK,并從READY狀態(tài)轉(zhuǎn)換到AC

6、TIVE狀態(tài)。 步驟15:PCD應(yīng)檢驗(yàn)SAK(選擇確認(rèn))的串聯(lián)比特是否被設(shè)置,以決定帶有遞增串聯(lián)級(jí)別的進(jìn)一步防沖突環(huán)是否應(yīng)繼續(xù)進(jìn)行。如果PICC的UID是已知的,則PCD可以跳過步驟210來選擇該P(yáng)ICC,而無需執(zhí)行防沖突環(huán)。3. 密碼驗(yàn)證。在進(jìn)行讀卡的操作前要對(duì)要進(jìn)行操作的扇區(qū)進(jìn)行密碼驗(yàn)證操作,其函數(shù)實(shí)現(xiàn)如下:char PcdAuthState(unsigned char auth_mode,unsigned char addr,unsigned char *pKey,unsigned char *pSnr) char status; unsigned int unLen; unsigned

7、 char ucComMF522BufMAXRLEN; ucComMF522Buf0 = auth_mode; ucComMF522Buf1 = addr; memcpy(&ucComMF522Buf2, pKey, 6); memcpy(&ucComMF522Buf8, pSnr, 6); status = PcdComMF522(PCD_AUTHENT,ucComMF522Buf,12,ucComMF522Buf,&unLen); if (status != MI_OK) | (!(ReadRawRC(Status2Reg) & 0x08) status =

8、 MI_ERR; return status;驗(yàn)證對(duì)應(yīng)扇區(qū)的KEYA是否與對(duì)應(yīng)扇區(qū)的尾塊中的KEYA相同,即三輪認(rèn)證。MIFARE 1 卡(射頻卡)的密碼認(rèn)證方式如圖5-2所示圖5- 2 三次相互認(rèn)證的令牌原理框圖 詳細(xì)的驗(yàn)證過程如下:(A) 環(huán):由MIFARE 1卡片向讀寫器發(fā)送一個(gè)隨機(jī)數(shù)據(jù)RB。 (B) 環(huán):由讀寫器收到RB后向MIFARE 1卡片發(fā)送一個(gè)令牌數(shù)據(jù)TOKEN AB,其中包含了用讀寫器中存放的密碼加密后的RB及讀寫器發(fā)出的一個(gè)隨機(jī)數(shù)據(jù)RA。(C) 環(huán):MIFARE 1卡片收到 TOKEN AB 后,用卡中的密碼對(duì)TOKEN AB的加密的部分進(jìn)行解密得到RB',并校驗(yàn)第

9、一次由(A)環(huán)中MIFARE 1卡片發(fā)出去的隨機(jī)數(shù)RB是否與(B)環(huán)中接收到的TOKEN AB中的RB'相一致;若讀寫器與卡中的密碼及加密/解密算法一致,將會(huì)有RB=RB',校驗(yàn)正確,否則將無法通過校驗(yàn)。(D) 環(huán):如果(C)環(huán)校驗(yàn)是正確的,則MIFARE 1卡片用卡中存放的密碼對(duì)RA加密后發(fā)送令牌TOKEN BA給讀寫器。 (E) 環(huán):讀寫器收到令牌TOKEN BA后,用讀寫器中存放的密碼對(duì)令牌TOKEN BA中的RA(隨機(jī)數(shù))進(jìn)行解密得到RA';并校驗(yàn)第一次由(B)環(huán)中讀寫器發(fā)出去的隨機(jī)數(shù)RA是否與(D)環(huán)中接收到的TOKEN BA中的RA' 相一致;同樣,

10、若讀寫器與卡中的密碼及加密/解密算法一致,將會(huì)有RA=RA',校驗(yàn)正確,否則將無法通過校驗(yàn)。如果上述的每一個(gè)環(huán)都為“真”,且都能正確通過驗(yàn)證,則整個(gè)的認(rèn)證過程將成功。讀寫器將允許對(duì)剛剛認(rèn)證通過的卡片上的這個(gè)扇區(qū)進(jìn)入下一步的操作(讀/寫等操作)。4. 讀寫操作。認(rèn)證通過后即可進(jìn)行讀寫操作PcdRead( 4, CardReadBuf )/4為數(shù)據(jù)塊,是第一扇區(qū)的第0塊 PcdWrite( 4, CardWriteBuf ) /4為數(shù)據(jù)塊,是第一扇區(qū)的第0塊詳細(xì)的程序設(shè)計(jì)如下所示char PcdRead(unsigned char addr,unsigned char *pData) ch

11、ar status; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_READ; ucComMF522Buf1 = addr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status = MI_OK) && (unLen = 0x90) memcpy(

12、pData, ucComMF522Buf, 16); else status = MI_ERR; return status;其功能是讀取M1卡的一塊數(shù)據(jù),addr為要讀取的地址,pData為讀取出的數(shù)據(jù)。詳細(xì)的說明可以參考【MiFare_one卡介紹】。寫入操作和讀取類似char PcdWrite(unsigned char addr,unsigned char *pData) char status; unsigned int unLen; unsigned char ucComMF522BufMAXRLEN; ucComMF522Buf0 = PICC_WRITE; ucComMF522

13、Buf1 = addr; CalulateCRC(ucComMF522Buf,2,&ucComMF522Buf2); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,4,ucComMF522Buf,&unLen); if (status != MI_OK) | (unLen != 4) | (ucComMF522Buf0 & 0x0F) != 0x0A) status = MI_ERR; if (status = MI_OK) memcpy(ucComMF522Buf, pData, 16); CalulateCRC(ucComMF522Buf,16,&ucComMF522Buf16); status = PcdComMF522(PCD_TRANSCEIVE,ucComMF522Buf,18,ucComMF522Buf,&unLen); if (st

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論