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

    聯(lián)系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

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

    基于MF RC500的非接觸式IC卡讀寫器設(shè)計(jì)

    文章出處:http://www.xujuanpiju.com 作者:位永輝 劉篤仁   人氣: 發(fā)表時(shí)間:2011年10月21日

    [文章內(nèi)容簡介]:介紹了一種基于Philips公司的基站芯片MF RC500的非接觸式IC卡讀寫器的設(shè)計(jì)方法,給出了MF RC500的特性、系統(tǒng)組成和天線的設(shè)計(jì)規(guī)范,同時(shí)給出了AT89S52單片機(jī)與MF RC500、AT 89C52與RS232、以及MF RC500與天線的接口原理電路,最后還給出了對Mi-fare卡的操作流程和讀卡程序。

    0 引言 
      
        近幾年來,IC卡中非接觸式射頻卡的高度安全保密性和使用簡單等特點(diǎn),使之在各領(lǐng)域的應(yīng)用中異軍突起,成為當(dāng)今IC智能卡中的流行寵物,應(yīng)用前景十分廣闊。與傳統(tǒng)的接觸式IC卡、磁卡相比,利用射頻識(shí)別技術(shù)(radio frequncy i-dentification)開發(fā)的非接觸式IC識(shí)別器,無論在系統(tǒng)壽命、防監(jiān)聽、防解密等性能上都具有很大的優(yōu)勢。為此,本文給出了利用AT 89C52、MFRC500、Mifare卡來構(gòu)建非接觸式IC讀寫器,并在該讀寫器基礎(chǔ)上開發(fā)適用各方面自動(dòng)識(shí)別系統(tǒng)。 

    1 MF RC500的主要特性 

        MF RC500是應(yīng)用于13.56 MHz非接觸式通信中高集成讀卡器IC系列中的一員。該讀卡IC利用先進(jìn)的調(diào)制和解調(diào)概念,完全集成了13.56 MHz下所有類型的被動(dòng)非接觸式通信方式和協(xié)議。MF RC500能夠支持ISO14443A所有的層。其內(nèi)部的發(fā)送器部分不需要增加有源電路就能夠直接驅(qū)動(dòng)近操作距離的天線(可   
    達(dá)100 mm);MFRC500的接收器部分提供有一個(gè)堅(jiān)固而有效的解調(diào)和解碼電路,可用于ISO14443兼容的應(yīng)答器信號;數(shù)字部分則用于處理ISO14443A幀和錯(cuò)誤檢測(奇偶&CRC)。此外,它還支持快速CRYPTO1加密算法,以用于驗(yàn)證Mifare系列產(chǎn)品。其方便的并行接口可直接連接到任何8位微處理器上,這樣就給讀卡器/終端的設(shè)計(jì)提供了極大的靈活性。 

        MF RC500的主要特點(diǎn)如下: 

        ◇帶有高集成度模擬電路以用于卡應(yīng)答的解調(diào)和解碼; 

        ◇緩沖輸出驅(qū)動(dòng)器可使用最少數(shù)目的外部元件以連接到天線; 

        ◇近距離操作(可達(dá)100 mm); 

        ◇有用于連接13.56 MHz石英晶體的快速內(nèi)部振蕩器緩沖區(qū); 

        ◇帶低功耗的硬件復(fù)位功能; 

        ◇并行微處理器接口帶有內(nèi)部地址鎖存和IRQ線; 

        ◇有易用的發(fā)送和接收FIFO緩沖區(qū); 

        ◇支持MIFARE Clasic; 

        ◇支持MIRFARE有源天線; 

        ◇適合高安全性的終端。 

        MF RC500采用SO32封裝的管腳配置如圖1所示。 

    2 IC卡系統(tǒng)組成 

        圖2所示是基于MF RC500的非接觸式IC卡讀寫器的系統(tǒng)結(jié)構(gòu)框圖。該系統(tǒng)主要由MCU、MFRC500、看門狗以及232通信模塊組成。系統(tǒng)的工作方式是先由MCU控制MF RC500驅(qū)動(dòng)天線對Mifare卡(也就是應(yīng)答器PICC)進(jìn)行讀寫操作。然后,根據(jù)所得的數(shù)據(jù)對其它接口器件進(jìn)行響應(yīng)操作。最后,與PC機(jī)之間進(jìn)行通信,并把數(shù)據(jù)傳給上位機(jī)。 

        系統(tǒng)MCU選用AT 89C52主要是因?yàn)锳T 89C52開發(fā)簡單,運(yùn)行穩(wěn)定。為了防止系統(tǒng)“死機(jī)”,系統(tǒng)中使用X5045作為看門狗。由于此系統(tǒng)的通訊距離要求不是太遠(yuǎn),故采用RS-232通訊模塊與PC機(jī)進(jìn)行通訊。   

    3 天線的設(shè)計(jì) 

        由于MF RC500的頻率是13.56 MHz,屬于短波段,因此可以采用小環(huán)天線。小環(huán)天線有方形、圓形、橢圓形、三角形等,本系統(tǒng)采用方形設(shè)計(jì)。其天線示意圖如圖3所示。  

        該天線的最大幾何尺寸同工作波長之間沒有一個(gè)嚴(yán)格的界限。對于13.6 MHz的系統(tǒng)來說,天線的最大尺寸在50 cm左右。 

        在天線設(shè)計(jì)中,品質(zhì)因數(shù)Q是一個(gè)非常重要的參數(shù)。對于電感耦合式射頻識(shí)別系統(tǒng)的PCD天線來說,較高品質(zhì)因數(shù)會(huì)使天線線圈中的電流強(qiáng)度大些,由此可改善對PICC的功率傳送。 

        若以f0表示工作頻率,那么通過品質(zhì)因數(shù)就可以很容易計(jì)算出天線的帶寬: 

        B="f0"/Q   (1) 

        從式(1)中可以看出,天線的傳輸帶寬與品質(zhì)因數(shù)成反比。因此,過高的品質(zhì)因數(shù)會(huì)導(dǎo)致帶寬縮小。從而減弱PCD的調(diào)制邊帶,這樣可能導(dǎo)致PCD無法與卡通信。因此,一般系統(tǒng)的最佳品質(zhì)因數(shù)應(yīng)為10~30,最大不能超過60。  

    4 MF RC500與AT89S52的接口電路 

        圖4為MF RC500與AT89S52的接口電路,圖5為AT89S52與RS-232接口電路。  

    5 對Mifare1卡的操作流程 

        整個(gè)系統(tǒng)的工作由對Mifare卡操作和系統(tǒng)后臺(tái)處理兩大部分組成。本文只介紹對Mifare卡的操作流程。Mifare卡的操作可以分為以下幾項(xiàng): 

        (1) 復(fù)位請求 

        當(dāng)一張Mifare卡片處在卡讀寫器的天線工作范圍之內(nèi)時(shí),程序員控制讀寫器向卡片發(fā)出RE-QUEST all(或REQUEST std)命令。此時(shí)卡片的ATR將啟動(dòng),并將卡片Block 0中的卡片類型(TagType)號共2個(gè)字節(jié)傳送給讀寫器,從而建立卡片與讀寫器的第一步通信聯(lián)絡(luò)。 

        
      如果不進(jìn)行該位請求操作,讀寫器對卡片的其它操作將不能進(jìn)行。 

        (2) 反碰撞操作 

        如果有多張Mifare卡片處在卡片讀寫器的天線工作范圍之內(nèi),PCD將首先與每一張卡片進(jìn)行通信,以取得每一張卡片的系列號。由于每一張Mifare卡片都具有其唯一的序列號而決不會(huì)相同,因此,PCD根據(jù)卡片的序列號來保證一次只對一張卡進(jìn)行操作。該操作將使PCD得到PICC的返回值作為卡的序列號。 

        (3) 卡選擇操作 

        完成了上述二個(gè)步驟之后,PCD必須對卡片進(jìn)行選擇操作。執(zhí)行該操作后,將返回卡上的SIZE字節(jié)。 

        (4) 認(rèn)證操作 

        經(jīng)過前面敘述的三個(gè)步驟以后,便可以在確認(rèn)已經(jīng)選擇了一張卡片時(shí),在PCD對卡進(jìn)行讀寫操作之前,使系統(tǒng)對該卡片上已經(jīng)設(shè)置的密碼進(jìn)行認(rèn)證。如果該認(rèn)證匹配,便可允許進(jìn)一步的讀寫操作。 

        (5) 讀寫操作 

        對卡的最后操作即是讀、寫、增值、減值、存儲(chǔ)和傳送等操作。 

    6 讀卡程序 

        根據(jù)上面的流程,便可采用基于Keil C的C語言進(jìn)行編程,程序如下:  

        RC500發(fā)送請求時(shí),req_code是請求模式,一共有request all和Request std兩種模式。Requestall指令是非連續(xù)性讀卡指令,只讀一次。但有一個(gè)例外,即當(dāng)某一次Request all指令讀卡失敗時(shí),如卡片沒能通過密碼認(rèn)證或其它原因而出錯(cuò)時(shí),Request all指令將連續(xù)地讀卡,直到讀卡成功才進(jìn)入非連續(xù)性的讀卡模式。Request std指令的使用和Request all指令剛巧相反。Request std指令是連續(xù)性的讀卡指令。當(dāng)某一張卡片在MCM天線的有效工作范圍(距離)內(nèi)時(shí),Request std指令在成功地讀取這一張卡片之后,將進(jìn)入MCM對卡片的其它操作。如果其它操作完成,程序員又將MCM進(jìn)入Request std指令操作,那么,Request std指令將連續(xù)地再次進(jìn)行讀卡操作,而不管這些片卡是否被拿走。只要有一張卡片進(jìn)入MCM之天線有效工作范圍(范圍)內(nèi),Request std指令將始終連續(xù)地再次進(jìn)行讀卡操作。對于Mifare1卡,該函數(shù)反回值為0004H。其程序如下: 

        這是三輪認(rèn)證函數(shù),整個(gè)過程是先將所要訪問的區(qū)密碼加密(如區(qū)0的初始密碼為6個(gè)FFH),再將加密后的密碼通過Loadkey存入MF RC500的Key緩存中,接著進(jìn)行認(rèn)證。  

    7 結(jié)束語 

        IC卡以其高度的信息集成及安全性已經(jīng)融人當(dāng)今信息技術(shù)的主流,并越來越受到人們的青睞。本文介紹了PHILIPS公司的MFICS50非接觸式IC卡的內(nèi)部結(jié)構(gòu)和工作原理,給出了基于MFRC500的嵌入式讀寫模塊的軟硬件設(shè)計(jì)方法。此讀寫模塊的使用使復(fù)雜的IC卡技術(shù)變得非常簡單,因而對非接觸式智能卡的推廣具有重要意義。目前,該系統(tǒng)已可用于考勤、門禁、售飯等多種系統(tǒng)中。與磁卡、只讀射頻卡(EM卡)組成的系統(tǒng)相比,該系統(tǒng)的性能大大改善,并且為“一卡通”的實(shí)現(xiàn)提供了必備條件。   

    本文關(guān)鍵詞:IC卡讀寫器,讀寫器,非接觸式IC卡,M,C卡讀寫器,讀寫器,非接觸式IC卡,MF,卡讀寫器,讀寫器,非接觸式IC卡,MFR,讀寫器,讀寫器,非接觸式IC卡,MFRC,寫器,讀寫器,非接觸式IC卡,MFRC5,器,讀寫器,非接觸式IC卡,MFRC50,,讀寫器,非接觸式IC卡,MFRC500,讀寫器,非接觸式IC卡,MFRC500,,寫器,非接觸式IC卡,MFRC500,I,器,非接觸式IC卡,MFRC500,IC,,非接觸式IC卡,MFRC500,IC卡
    回到頂部