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

    聯(lián)系興邦電子

    全國咨詢熱線:40000-63966

    售后:0371-55132951/55132952

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

    基于MF RC500的Mifare射頻卡讀寫器設(shè)計(jì)

    文章出處:http://www.xujuanpiju.com 作者:李和平 黎福海   人氣: 發(fā)表時(shí)間:2011年10月22日

    [文章內(nèi)容簡介]:介紹基于MF RC500讀寫卡芯片和STC89C52RC型單片機(jī)實(shí)現(xiàn)的Mifarel射頻卡讀寫器的設(shè)計(jì)方法。對其系統(tǒng)硬件設(shè)計(jì)進(jìn)行分析。并給出對Mifarel卡操作流程。

    0 引 言 

        射頻識別(Radio Frequency Identification。以下簡稱RFID技術(shù),是利用無線射頻方式進(jìn)行非接觸雙向通信并交換數(shù)據(jù),以達(dá)到識別目的。與傳統(tǒng)的條碼或磁條識別技術(shù)相比,RFID技術(shù)具有非接觸、精度高、作用距離遠(yuǎn)、可動態(tài)識別多個(gè)數(shù)據(jù)及應(yīng)用環(huán)境適應(yīng)性較好等優(yōu)點(diǎn)。在工業(yè)自動化、倉儲管理、門禁控制等眾多領(lǐng)域得到廣泛的應(yīng)用與發(fā)展。本文基于MF RC500設(shè)計(jì)了RFID技術(shù)的Mifarel卡讀寫器。該讀寫器能完成對Mifarel卡的讀、寫及控制操作。具有響應(yīng)速度快、讀卡距離遠(yuǎn)、通信穩(wěn)定等優(yōu)點(diǎn)。

    1 Mifare1卡特點(diǎn)及原理

        射頻卡屬于非接觸IC卡,它避免了普通IC卡與讀卡器之間的物理接觸,減少了卡的磨損。識別工作無須人工干預(yù)。可工作于各種惡劣環(huán)境。當(dāng)前世界上非接觸式IC智能射頻卡的核心是Philips公司的Mifare1 IC s5o(一01,一02,一03,一04)系列微模塊。已被定制為國際標(biāo)準(zhǔn):ISO/IEC 14443 TYPE A標(biāo)準(zhǔn)。目前。許多較大的IC卡制造商的非接觸式卡制造均以Mifare技術(shù)為標(biāo)準(zhǔn)。Mifarel卡上有8Kb EEPROM存儲容量。并劃分為16個(gè)扇區(qū)。每個(gè)扇區(qū)劃分為4個(gè)數(shù)據(jù)存儲塊。

        各扇區(qū)的密碼和存取控制都是獨(dú)立的。可以根據(jù)實(shí)際需要設(shè)定各自的密碼及存取控制。因此一張卡能同時(shí)運(yùn)用在16個(gè)不同的系統(tǒng)中。并可以根據(jù)每個(gè)系統(tǒng)的實(shí)際情況決定各區(qū)的密碼及數(shù)據(jù)形式。Mifarel卡上具有先進(jìn)的數(shù)據(jù)通信加密并雙向驗(yàn)證密碼系統(tǒng)。具有防重疊功能。能在同一時(shí)間內(nèi)處理重疊在讀寫器天線的有效工作距離內(nèi)的多張重疊的卡片。卡片上還內(nèi)建有增值、減值的專項(xiàng)數(shù)學(xué)運(yùn)算電路。非常適合公交、地鐵等行業(yè)的檢票、收票系統(tǒng)。卡片上的數(shù)據(jù)讀寫可超過10萬次以上,數(shù)據(jù)保存期可達(dá)1O年以上。且卡片抗靜電保護(hù)能力可達(dá)2kV以上。

        Mifare1卡中包含一塊ASIC微晶片和一個(gè)高頻天線,卡片上無源(無電池)。其基本工作原理是:讀寫器中的Mifare基站向Mifarel卡發(fā)一組固定頻率(13.56MHz)的電磁波,卡片內(nèi)有一個(gè)LC串聯(lián)諧振電路。其頻率與基站發(fā)射的頻率相同。在電磁波的激勵(lì)下,LC諧振電路產(chǎn)生共振,使卡片內(nèi)具有電荷,當(dāng)所積累的電荷達(dá)到2V時(shí)。卡片中芯片將卡內(nèi)數(shù)據(jù)發(fā)射出去或接收基站對卡片的操作。射頻卡的標(biāo)準(zhǔn)操作距離為lOOmm,與卡片讀寫器的通信速率高達(dá)106Kb/s。

    2 讀寫器芯片特性和功能簡介

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

    3 RFID讀寫器的設(shè)計(jì)

    3.1 系統(tǒng)硬件設(shè)計(jì) 

        3.1.1 讀卡器硬件系統(tǒng)框圖 

        基于MF RC500的RFID技術(shù)Mifare卡讀寫器系統(tǒng),其系統(tǒng)結(jié)構(gòu)框圖如圖1所示。 

    讀卡器硬件系統(tǒng)框圖

        硬件主要由STC89C52RC單片機(jī)、MF RC500、以及232通信等接口模塊組成。讀卡器用sTC89C52RC單片機(jī)作主控制器.單片機(jī)控制MF RC500驅(qū)動天線對Mifare卡進(jìn)行讀寫操作。74HC595作顯示驅(qū)動器驅(qū)動LED數(shù)碼顯示器,PS/2總線作為通用編碼鍵盤接口,鍵盤與LED顯示器作為人機(jī)交互接口.MAX232作串口信號轉(zhuǎn)換。由于主控芯片STC89C52RC有8K的FLASH.并且內(nèi)含2K的EEPROM,可方便反復(fù)擦寫、修改程序。同時(shí),由于外部不用擴(kuò)展程序存儲器,可以簡化電路設(shè)計(jì).減小讀卡器的尺寸.同時(shí)有較多的I/O口提供給系統(tǒng)使用。

        3.1.2 讀寫器的原理圖設(shè)計(jì) 

        讀寫器電路是由STC89C52RC型單片機(jī)控制專用讀寫芯片(MF RC500)組成。系統(tǒng)的工作方式是先由MCU控制MF RC500驅(qū)動天線對Mifare卡進(jìn)行讀寫操作,然后與PC通信,把數(shù)據(jù)傳給上位機(jī)。其主要原理如圖2~圖5所示。

        讀寫模塊MF RC500是整個(gè)讀寫器的核心,它完成讀寫Mifare卡的所有必需功能,包括RF信號的產(chǎn)生、調(diào)制、解調(diào)、安全認(rèn)證和防重疊等。作為單片機(jī)與射頻卡通訊的中介,MF RC500與Mifarel卡由射頻場來建立無線鏈接并完成數(shù)據(jù)交換。其原理如圖2所示。 

    基于MF RC500的Mifare射頻卡讀寫器設(shè)計(jì)

        MCU是通過對讀寫模塊MF RC500內(nèi)核特殊的內(nèi)存寄存器的讀寫來控制MF RC500。MF RC500射頻模塊的DO—D7(數(shù)據(jù)端口1和單片機(jī)數(shù)據(jù)端口P0口直接連接進(jìn)行數(shù)據(jù)傳送,中斷請求口IRQ和單片機(jī)的中斷0f INT0)連接,即單片機(jī)利用MF RC500提供中斷信息對其進(jìn)行控制。讀寫器的控制單片機(jī)原理如圖3所示。 

    讀寫器的控制單片機(jī)原理

        天線部分電路如圖4所示。天線拾取的信號經(jīng)過天線匹配電路送到RX腳,MF RC500的內(nèi)部接收器對信號進(jìn)行檢測和解調(diào)并根據(jù)寄存器的設(shè)定進(jìn)行處理,然后數(shù)據(jù)發(fā)送到并行接口,由MCU進(jìn)行讀取。 

    天線部分電路圖

        MF RC500通過TX1和TX2提供13.56 MHz的能量載波驅(qū)動天線。根據(jù)寄存器的設(shè)定對發(fā)送數(shù)據(jù)進(jìn)行調(diào)制來得到發(fā)送的信號。Mifarel卡采用RF場的負(fù)載調(diào)制進(jìn)行響應(yīng)。 

    第1頁第2頁

        讀寫器與上位機(jī)的通信采用RS一232方式。單片機(jī)STC89C52RC 與PC 串口電平不匹配,使用MAX232型電平轉(zhuǎn)換器進(jìn)行電平轉(zhuǎn)換。接口電路如圖5所示。 

    讀寫器與PC通過RS232連接的接口圖

    3.2 程序設(shè)計(jì) 

        設(shè)計(jì)思想:當(dāng)有Mifare1射頻卡進(jìn)入距離射頻天線100ram內(nèi),讀卡器就可以讀到卡中的數(shù)據(jù)。系統(tǒng)單片機(jī)要將所讀數(shù)據(jù)進(jìn)行分析處理,如果符合條件,則讀卡成功指示燈閃一下,蜂嗚器嗚叫一聲。并將卡片數(shù)據(jù)與當(dāng)前時(shí)間一起存入單片機(jī)內(nèi)的EEPROM.并在LED顯示器上顯示卡數(shù)據(jù)。沒有卡進(jìn)入讀卡器工作范圍時(shí),在顯示器上顯示當(dāng)前時(shí)間。若讀卡出錯(cuò),顯示出錯(cuò)標(biāo)志。在與上位機(jī)通訊時(shí)。將單片機(jī)內(nèi)部EEPROM存入的信息發(fā)往上位機(jī)。

        單片機(jī)程序包括以下幾個(gè)部分:讀寫器按鍵處理程序、讀寫卡程序、數(shù)據(jù)存儲程序、與上位機(jī)的通訊程序、顯示驅(qū)動程序、時(shí)基生成程序。以下重點(diǎn)介紹讀寫卡程序的設(shè)計(jì)。

        讀寫卡過程包括裝載密碼、詢卡、防沖突、選卡、驗(yàn)證密碼、讀寫卡和停卡。這一系列操作必須按固定的順序進(jìn)行。在沒有射頻卡進(jìn)入射頻天線有效范圍時(shí),在低5位顯示當(dāng)前時(shí)鐘;當(dāng)有射頻卡進(jìn)入到射頻天線的有效范圍,讀卡程序驗(yàn)證卡及密碼成功后.將卡號和讀卡時(shí)間及相關(guān)數(shù)據(jù)作為一條記錄存入EEP—ROM存儲器中,并在LED顯示器高5位上顯示卡號。

        (1)詢卡過程:當(dāng)一張Mifare卡處在卡讀寫器的天線工作范圍之內(nèi)時(shí)。MCU將通過MF RC500發(fā)送一個(gè)詢卡請求,詢卡請求有兩種,一種是request all,這指令是非連續(xù)性的讀卡指令,只讀一次;另一種是re—quest std,這是連續(xù)性的讀卡指令。當(dāng)卡片收到該指令后,卡片內(nèi)的ATR將啟動.并將卡片的Block 0中的卡片類型(TagType)號共2個(gè)字節(jié)傳送給讀卡器,從而建立卡片與讀卡器的第一步通信聯(lián)絡(luò).完成詢卡過程。
        (2)防沖突:如果有多張Mifare卡片處在卡片讀寫器的天線工作范圍之內(nèi).MF RC500能檢測出來并通知到MCU。此時(shí)MCU通過防沖突算法來與每一張卡進(jìn)行通訊。由于每一張Mifare卡片都具有其唯一的序列號而決不會相同,因此,MCU根據(jù)卡片的序列號來保證一次只對一張卡進(jìn)行操作。(根據(jù)ISO14443協(xié)議,M1型卡傳統(tǒng)的防沖突算法是動態(tài)二進(jìn)制檢索樹算法。它首先利用MANCHESTER編碼“沒有變化”的狀態(tài)來檢測碰撞位,然后把碰撞位設(shè)為二進(jìn)制“1”,用SELECT命令發(fā)送碰撞前接收的部分卡片序列號和碰撞位,如果卡片開頭部分序列號與其相同,則做出應(yīng)答,不相同則沒有響應(yīng)。以此來縮小卡片范圍,最終達(dá)到無碰撞)。
        (3)選卡:通過以上兩步以后,MCU選取一張卡的序列號進(jìn)行通訊,即選卡。
        (4)驗(yàn)證密碼:選定要處理的卡片之后,MCU確定要訪問的扇區(qū)號,并對該扇區(qū)密碼進(jìn)行密碼校驗(yàn),在三次相互認(rèn)證之后就可以通過加密流進(jìn)行通訊。(在選擇另一扇區(qū)時(shí),必須進(jìn)行另一扇區(qū)密碼校驗(yàn)。)
        (5)讀寫卡:讀寫操作是對卡的最后操作,包括讀(Read)、寫(Write)、增值(Increment)、減值(Decre-ment)、存儲(Restore)和傳送(Transfer)等操作。
        (6)停卡:當(dāng)一系列的操作完成后,MCU發(fā)送一個(gè)停卡命令給卡片,使其退出工作。

    在非接觸通訊中,為了保證讀寫器和卡片之間數(shù)據(jù)傳遞完整、可靠,采取以下措施:一是防沖突算法,二是通過16位CRC糾錯(cuò),三是檢查每字節(jié)的奇偶校驗(yàn)位,四是檢查位數(shù),五是用編碼方式來區(qū)分“1”、“O”或無信息。

        為提高處理和響應(yīng)速度,程序設(shè)計(jì)采用單片機(jī)匯編語言和C語言混合編程。中斷服務(wù)程序采用匯編語言編寫.其它程序采用C語言編寫。主程序流程圖如圖6所示。 

    基于MF RC500的Mifare射頻卡讀寫器設(shè)計(jì)

    4 結(jié)束語

        本文設(shè)計(jì)了基于MF RC500的Mifarel射頻卡嵌入式讀寫器。經(jīng)實(shí)踐驗(yàn)證.本系統(tǒng)能對范圍內(nèi)的多個(gè)卡準(zhǔn)確無誤地讀寫。在此讀寫器的基礎(chǔ)上,稍加修改就能開發(fā)成不同的射頻識別應(yīng)用系統(tǒng),對RFID的推廣具有一定的實(shí)用價(jià)值。

    參考文獻(xiàn):
    [1]游戰(zhàn)清,李蘇建.無線射頻識別技術(shù)(RFID)理論與應(yīng)用[M].北京:電子工業(yè)出版社。2004.
    [2]Klans Finkertzeller[德]著,吳曉峰譯.射頻識別技術(shù)(第3版)[M].北京:電子工業(yè)出版社,2006.
    [3]徐新民,張春升.TEMIC系列射頻卡及其應(yīng)用叨.電測與儀表,2002,(1):49—52.
    [4]Philips.MF RC50 m#y Integrated ISO 14443A Reader IC[R],2002.

    作者簡介:
    李和平(1971一),男,漢族,婁底職業(yè)技術(shù)學(xué)院電子學(xué)講師,高級技師,湖南大學(xué)電氣與信息工程學(xué)院碩士研究生。主要研究方向?yàn)殡娮蛹夹g(shù)應(yīng)用。Email:lhp1397381200l@sina.com
    黎福海(1964一),男,漢族,湖南大學(xué)電氣與信息工程學(xué)院教授,目前研究領(lǐng)域?yàn)閿?shù)字信號處理和集成電路。

    第1頁第2頁

    本文關(guān)鍵詞:射頻卡讀寫器,讀寫器,mifare1卡,,頻卡讀寫器,讀寫器,mifare1卡,m,卡讀寫器,讀寫器,mifare1卡,mf,讀寫器,讀寫器,mifare1卡,mfr,寫器,讀寫器,mifare1卡,mfrc,器,讀寫器,mifare1卡,mfrc5,,讀寫器,mifare1卡,mfrc50,讀寫器,mifare1卡,mfrc500,寫器,mifare1卡,mfrc500,,器,mifare1卡,mfrc500,射,,mifare1卡,mfrc500,射頻,mifare1卡,mfrc500,射頻卡
    回到頂部