《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > 新一代Mifare射頻基站IC MF RC522在水表中的應(yīng)用

新一代Mifare射頻基站IC MF RC522在水表中的應(yīng)用

2008-08-01
作者:程東海,, 于海勛

  摘 要: 介紹了Philips公司最新推出的Mifare 非接觸IC卡讀寫芯片MF RC522的主要特性,、引腳功能和基本指令集" title="指令集">指令集,;簡述以MSP430系列低功耗" title="低功耗">低功耗" title="超低功耗" title="超低功耗">超低功耗">超低功耗16位單片機為內(nèi)核的水表設(shè)計以及與MF RC522的硬件接口電路設(shè)計,;重點闡述了MSP430對MF RC522的讀寫控制流程。
  關(guān)鍵詞: MF RC522 MSP430單片機 低功耗 水表


  非接觸式" title="非接觸式">非接觸式智能卡(射頻卡)以其高度安全保密性,、通信高速性,、使用方便性廣泛應(yīng)用于三表行業(yè),,實現(xiàn)預(yù)付費功能,使人們生活質(zhì)量有了很大的提高,。射頻卡技術(shù)應(yīng)用于水表將是智能水表的一次偉大革命,。
  MF RC522是Philips公司針對三表最新推出的一款非接觸式低功耗讀寫基站芯片,它是應(yīng)用于13.56MHz非接觸式通信中高集成讀卡IC系列中的一員,。該讀卡IC系列利用了先進的調(diào)制和解調(diào)概念,,完全集成了13.56MHz下所有類型的被動非接觸式通信方式和協(xié)議。 MF RC522支持ISO14443A所有的層,,傳輸速度最高達424kbps,,具有三種主機接口方式:SPI模式、 UART模式,、 I2C模式,。
  本設(shè)計采用MSP430系列超低功耗16位單片機為主控芯片,系統(tǒng)3.3V供電完全適合MFRC522供電要求,,實現(xiàn)了低功耗的完美結(jié)合,。
1 系統(tǒng)設(shè)計
  該系統(tǒng)以TI MSP430F413單片機為核心,工作電壓為1.8V~3.6V,,內(nèi)置LCD驅(qū)動器24×4段,,可以縮小體積、降低成本,,在休眠模式下典型電流僅為0.7μA,;采用內(nèi)部Flash保存用水數(shù)據(jù)、剩余水量和水表狀態(tài)信息,;電源監(jiān)控采用理光R3111E(可根據(jù)設(shè)定的門限電壓選擇相應(yīng)的型號),;水表閥門采用2.5V~6V直流電機,當人為破壞水表或所購買水量低于設(shè)定值時,,水表報警并及時關(guān)掉閥門,同時將數(shù)據(jù)保存在內(nèi)部Flash中,;采用MF RC522讀寫芯片讀寫Mifare 1 S50卡片實現(xiàn)預(yù)付費功能,。系統(tǒng)框如圖1所示。
  本設(shè)計利用RC522 UART模式與單片機通信,,由于MSP430F413沒有硬件串口,,故需使用TIMERA模擬串口,如圖2所示,。

?


  對于MSP430F413而言,,P1.0(TimerA捕獲/比較輸出口)口是UART的TX,P1.1(TimerA捕獲/比較輸出口)是UART的RX,。
2 MFRC522 命令寄存器及基本指令集
2.1 命令寄存器CommandReg(0x01)
  MF RC522內(nèi)部有64個寄存器,,共分4頁:PAGE0:COMMAND AND STATUS,;PAGE1:COMMAND;PAGE2:CFG,;PAGE3:TEST,。MF RC522通過內(nèi)部寄存器的讀寫控制與Mifare 1 IC卡數(shù)據(jù)通信。
  CommandReg命令控制字如表1所示,。


  Command命令類別如表2所示,。


2.2 基本指令集
  MF RC522有14種基本指令集,實現(xiàn)不同方式的數(shù)據(jù)傳輸,,如表3所示,。


3 軟件設(shè)計
  MSP430F413首先對MF RC522進行初始化配置,寄存器設(shè)置好后,,MF RC522可以接收控制命令執(zhí)行操作,,實現(xiàn)與Mifare 1 S50卡片通信;Mifare 1 S50卡根據(jù)接收到的指令進行相應(yīng)操作,。但是MSP430F413并不是通過簡單的指令就可以讀寫IC卡片,,需要一系列的操作才能完成通信。主要包括:(1)請求喚醒,;(2)防重疊,;(3)選擇卡片;(4)密碼認證,;(5)讀寫操作" title="讀寫操作">讀寫操作,。
  MSP430F413對Mifare 1 S50卡片操作流程,如圖3所示,。


3.1 請求Request Std / Request All
  當在天線有效工作距離內(nèi)檢測到卡片,,MF RC522發(fā)送Request Std / Request All請求指令,卡片接收到請求指令后返回握手信號,,從而判斷操作是否成功,。
  Request Std (0x26) 連續(xù)讀卡指令
  Request All (0x52) 非連續(xù)讀卡指令
3.2 Aticollision(防重疊)
  MF RC522能夠防止多張卡片重疊造成的數(shù)據(jù)錯誤。當在天線有效工作距離內(nèi)檢測到多張卡片時,,MCU讀取序列號進行判斷檢測,。
  Mifare 1 S50 卡具有全球唯一4個字節(jié)的序列號,SN存放在Sector0的Block0內(nèi)前4個字節(jié),,第5個字節(jié)存放校驗碼(4字節(jié)異或結(jié)果),,MCU控制循環(huán)讀取序列號,直到讀取一個校驗正確的序列號后,,保存并退出循環(huán),;當然出錯也會退出循環(huán)。
  Sector0的Block0數(shù)據(jù)格式如表4所示。


3.3 Select(選擇卡片)
  將Anticollision操作讀取的序列號SN 4個字節(jié)還有異或的校驗碼發(fā)送到Mifare 1 S50卡上,,卡片接收后與自身SN及校驗碼核對,,只有完全一樣才能選定卡片。
3.4 Authentication(密碼認證)
  Mifare 1 S50卡 有1KB容量,,分為16個扇區(qū):Sector0至Sector15,,每個Sector(扇區(qū))包括4個Block(塊),每個Block具有16個byte的存儲容量,。Block被分為Block0至Block3,;整個Mifare 1 S50非接觸式智能卡共有64個Block。
  每個Sector的Block3都存放著本扇區(qū)自己的密碼KeyA,、KeyB和Access Bits,。通過Access Bits設(shè)置密碼方式和數(shù)據(jù)塊類型( Write/Read 或 Value )。
  每個Sector的Block3數(shù)據(jù)格式如表5所示,。


  只有密碼完全認證通過后,,才可以對卡片進行Write/Read操作。
3.5 Write/Read(讀寫操作)
  Authentication密碼認證通過后,,可以對64 Block進行讀寫操作,。其中Sector0中的Block0 只能執(zhí)行讀操作。Mifare 1 S50讀寫時是以Block為單位的,,讀或?qū)懚际轻槍φ麄€Block 16字節(jié)的操作,,不能單個字節(jié)讀寫。為了確保數(shù)據(jù)的正確性,,可進行數(shù)據(jù)校驗,。
3.6 Decrement/Increment(增值和減值操作)
  當數(shù)據(jù)塊通過設(shè)置Access bits配置成Value 型時,可以對其進行Decrement/Increment操作,。為了防止數(shù)據(jù)出錯,,Value Block 設(shè)有復(fù)雜的數(shù)據(jù)格式。Value重復(fù)存放3次,,其中原碼存放2次,,補碼再存放1次;Adr重復(fù)存放4次,,其中原碼存放2次,,補碼再存放2次。
  Value Block數(shù)據(jù)格式如表6所示,。


  Value:增值或減值 Adr:操作Block地址
  執(zhí)行Decrement/Increment后,把結(jié)果存放在內(nèi)部數(shù)據(jù)緩沖寄存器中,,等待Transfer指令操作寫入指定的目標Block中,。
3.7 Restore
  Restore指令是將Mifare 1 S50內(nèi)某一Block內(nèi)容讀出,存放在內(nèi)部數(shù)據(jù)緩沖寄存器中,等待Tranfer指令操作寫入指定的目標Block中,。相當于復(fù)制Block a 到Block b中,。
3.8 Transfer(傳送)
  Transfer指令操作是將內(nèi)部數(shù)據(jù)緩沖區(qū)內(nèi)數(shù)據(jù)傳送到目標Block中。執(zhí)行Decrement/Increment和Restore指令操作都需要Transfer指令,,數(shù)據(jù)才能成功傳輸,。
3.9 Halt(停機)
  Halt指令操作將結(jié)束MF RC522與Mifare 1 S50通信。
  MF RC522作為新一代非接觸IC卡與傳統(tǒng)的IC卡相比有著很大的優(yōu)勢,,具有較強的保密性能和防碰撞功能,,特別是采用低電壓供電大大降低功耗,能夠與超低功耗MSP430單片機結(jié)合實現(xiàn)低功耗預(yù)付費水表的設(shè)計,。

參考文獻
1 MF RC522 Contactless Reader IC Date Sheet. Philips Semi-conductors. 2004;11
2 MF1 IC S50 Date Sheet. Philips Semiconductors. 2001;5
3 RC 522 BFL Manual. Philips Semiconductors. 2004;10
4 魏小龍. MSP430系列單片機接口技術(shù)及系統(tǒng)設(shè)計實例.北京:北京航空航天出版社,,2002
5 沈建華,楊艷琴. MSP430系列16位超低功耗單片機原理與應(yīng)用.北京:清華大學出版社,,2004

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章,、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者,。如涉及作品內(nèi)容、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118,;郵箱:[email protected]