歡迎您訪問鄭州興邦電子股份有限公司官方網(wǎng)站!
    阿里巴巴誠信通企業(yè)
    全國咨詢熱線:40000-63966
    興邦電子,中國水控機第一品牌

    聯(lián)系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

    工廠:河南省 鄭州市 高新區(qū)蓮花街電子電器產(chǎn)業(yè)園

    非接觸式IC卡讀卡器模塊實驗

    文章出處:http://www.xujuanpiju.com 作者:北京達盛科技有限公司   人氣: 發(fā)表時間:2011年09月01日

    [文章內(nèi)容簡介]:本文用非接觸式IC卡讀卡器模塊對M1卡進行讀/寫操作。

        一、實驗?zāi)康?/strong>
     
        1、掌握 8255 可編程并行口的應(yīng)用
        2、掌握非接觸式IC卡讀卡器及M1 卡原理及編程方法
        3、掌握液晶顯示模塊與單片機接口及編程方法
     
        二、實驗設(shè)備
     
        EL-MUT-III 型單片機實驗箱、8051CPU 模塊、非接觸式IC 卡模塊。
     
        三、實驗內(nèi)容

     
        用非接觸式IC卡讀卡器模塊對M1卡進行讀/寫操作。
     
        四、實驗原理
     
        上電后首先用程序?qū)ψx卡器芯片(以下簡稱PCD)進行寄存器初始化,完成后進入尋卡狀態(tài),通過天線發(fā)出尋卡信號。當有IC 卡(以下簡稱PICC,實驗程序所使用的卡為MF1 S50 卡)進入天線有效操作區(qū),并且得到能量后,返回給PCD 卡類型值。下一步PCD 對卡進行防沖突操作,PICC 得到防沖突操作信號后,返回給PCD 卡序列號。PCD 接收到序列號后,程序?qū)π蛄刑栍行耘卸ā.敶_認PICC 序列號有效后,PCD 發(fā)送選卡命令,選卡命中包含送出所選卡序列號,這樣保證進行下一步操作的卡唯一。PCD 裝載密匙,所裝載密匙與所要操作的PICC 扇區(qū)密匙一致,同一個扇有兩組密匙,密匙A、B。如進行A 密匙認證則,裝載的密匙為A 密匙,進行B 密匙認證,則需裝載B 密匙。裝載密匙成功后,開始三遍認證操作。
     
        如下圖所示為三遍認證的令牌原理框圖:

        認證過程是這樣進行的:
        (A)環(huán):由 Mifare 1 卡片向讀寫器 發(fā)送一個隨機數(shù)據(jù) RB;
        (B)環(huán):由讀寫器收到RB 后向Mifare 1 卡片發(fā)送一個令牌數(shù)據(jù)TOKEN AB,其中包含了讀寫器發(fā)出的一個隨機數(shù)據(jù) RA;
        (C)環(huán):Mifare 1 卡片收到 TOKEN AB 后,對TOKEN AB 的加密的部分進行解密,并校驗第一次由(A)環(huán)中Mifare 1 卡片發(fā)出去的隨機數(shù)RB 是否與(B)環(huán)中接收到的TOKEN AB 中的RB 相一致;
        (D) 環(huán) : 如果(C)環(huán)校驗是正確的,則Mifare 1 卡片向讀寫器 發(fā)送令牌TOKEN BA 給讀寫器;
        (E)環(huán):讀寫器收到令牌TOKEN BA 后,讀寫器將對令牌TOKEN BA 中的RB(隨機數(shù))進行解密;并校驗第一次由(B)環(huán)中讀寫器發(fā)出去的隨機數(shù)RA 是否與(D)環(huán)中接收到的 TOKEN BA 中的RA 相一致;
        如果上述的每一個環(huán)都為“真”,都能正確通過驗證,則整個的認證過程將成功。
     
        讀寫器將能對剛剛認證通過的卡片上的這個扇區(qū)可以進入下一步的操作(READ/WRITE 等操作)。卡片中的其他扇區(qū)由于有其各自的密碼,因此不能對其進行進一步的操作。如想對其他扇區(qū)進行操作,必須完成上述的認證過程。

        認證過程中的任何一環(huán)出現(xiàn)差錯,整個認證將告失敗。必須從新開始。如果事先不知卡片上的密碼,則由于密碼的變化可以極其復(fù)雜,因此靠猜測密碼而想打開卡片上的一個扇區(qū)的可能性幾乎為零。
     
        這里提醒一下程序員和卡片的使用者,必須牢記卡片中的 16 個扇區(qū)的每一個密碼,否則,遺忘某一扇區(qū)的密碼,將使該扇區(qū)中的數(shù)據(jù)不能讀寫。沒有任何辦法可以挽救這種低級錯誤。但是,卡片上的其他扇區(qū)可以照樣使用。
     
        上述的敘述已經(jīng)可以充分地說明了 Mifare 1 卡片的高度安全性,保密性,及卡片的應(yīng)用場合多樣性,一卡多用(一卡通)。
     
        詳細操作流程參閱:FM1702 手冊,MF1 S50 手冊,14443 協(xié)議。
     
        五、實驗原理圖:

        六、實驗步驟
     
        1、實驗連線:
        8255 的片選CS8255 與CS2 相連;PA0~PA7 分別與DB0~DB7 相連;PC0 與REQ 相連;PC7 與BUSY 相連。讀卡模塊片選CS500 接CS0,或用跳線短接模塊上CS0,EST 接CPU 板的TXD,CPU板的RXD 接實驗箱K1,K1 高電平控制讀卡,低電平控制寫卡。P0.0~P0.7 分別接LED1~LED8,用來動態(tài)觀察程序執(zhí)行到的具體位置,此8 條線可不接。LED1 尋卡成功,LED2 防沖突成功,LED3 選卡成功,LED4 裝載密匙成功,LED5驗證AUTHENT1 成功,LED6 驗證AUTHENT2 成功,LED7 讀卡成功,LED8 寫卡成功。
        2、全速運行實驗程序:OK_STD.ASM
        3、M1 卡于讀卡模塊天線上方逐漸向下水平靠近讀卡模塊,觀察LCD 顯示內(nèi)容。
        4、改變K1 狀態(tài),再次重復(fù)步驟3。
     
        七、實驗結(jié)果
     
        當 K1 打到高電平時,LCD 上第一行顯示:CARD_SN:+ M1 卡序列號,第二行顯示讀操作:READ_CARD:第三、四行顯示從M1 卡讀出來的16 個8 位16 進制數(shù)據(jù)。當K1 打到低電平時,LCD 上第一行顯示:CARD_SN:+ M1 卡序列號,第二行顯示讀操作:WRITE_CARD:第三、四行顯示寫入M1 卡的16 個8 位16 進制數(shù)據(jù)。
     
        八、程序框圖

     

    本文關(guān)鍵詞:非接觸式IC卡,讀卡器,模塊
    回到頂部