• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于STM32的Mifare IC卡讀寫卡器設(shè)計(jì)

      2016-05-23 06:14:20韓進(jìn)馬雙
      電子產(chǎn)品世界 2016年4期
      關(guān)鍵詞:IC卡

      韓進(jìn) 馬雙

      摘要:本文設(shè)計(jì)了一款符合14443A標(biāo)準(zhǔn)的Mifdre IC卡讀寫器。系統(tǒng)以STM32F103C8T6為主控芯片,讀寫卡芯片采用MFRC522芯片(支持14443A協(xié)議,其頻率為13.56MHz),采用SPI通訊方式實(shí)現(xiàn)與Mifdre IC卡的通訊;利用雙線并繞的方式設(shè)計(jì)PCB天線,大幅提高了讀寫卡器的天線信號(hào)強(qiáng)度和生產(chǎn)成品率。上位機(jī)軟件基于VC6.0底層代碼編寫,方便地實(shí)現(xiàn)了對(duì)Mifare IC卡的讀寫。

      關(guān)鍵詞:讀/寫卡器設(shè)計(jì);Mifdre IC卡;MFRC522;天線設(shè)計(jì)

      引言

      Mifare類型的非接觸式智能IC卡作為符合14443A標(biāo)準(zhǔn)的IC卡,廣泛應(yīng)用在電子錢包、各類場(chǎng)所的門禁系統(tǒng)中。MFRC522作為支持該標(biāo)準(zhǔn)的射頻讀寫卡芯片,擁有多種通訊接口(例如UART、SPI、IC),可以通過單片機(jī)方便地讀寫MFRC522射頻芯片內(nèi)部的寄存器,配合天線對(duì)Mifare IC卡片進(jìn)行讀寫。

      本文設(shè)計(jì)的讀寫卡器以STM32F103C8T6為主控芯片,通過SPI通訊方式,選用支持14443A協(xié)議的頻率為13.56MHz的讀卡芯片MFRC522與Mifare卡通訊,并利用雙線并繞的方式設(shè)計(jì)PCB天線,可大幅提高讀寫卡器的天線信號(hào)強(qiáng)度和生產(chǎn)成品率。配合上位機(jī)軟件可以便捷地對(duì)Mifare IC卡片進(jìn)行讀寫以作為儲(chǔ)值卡、會(huì)員卡和物品管理卡片使用。

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

      本讀寫卡器的硬件設(shè)計(jì)框圖如圖1所示。

      本設(shè)計(jì)以STM32F103C8T6為主控芯片,采用USB供電方式,可以通過虛擬串口進(jìn)行開發(fā)調(diào)試并且與上位機(jī)進(jìn)行通信。主控芯片通過SPl接口方式與RC522進(jìn)行通訊,RCS22則利用電磁感應(yīng)的原理與無源Mifare IC卡進(jìn)行數(shù)據(jù)交換,上位機(jī)軟件用于對(duì)卡片進(jìn)行配置與讀寫操作,同時(shí)STM32驅(qū)動(dòng)蜂嗚器和貼片LED發(fā)光二極管以告知用戶系統(tǒng)運(yùn)行狀態(tài)。

      1.1相關(guān)芯片及MLfare IC卡片介紹

      STM32F1 03C8T6為ST(意法半導(dǎo)體)公司生產(chǎn)的一款入門級(jí)低功耗32位ARM芯片,擁有64Kb片內(nèi)Flash,以及包括UART、USB、CAN、SPI、12C等在內(nèi)的豐富的硬件接口,結(jié)合keil或者IAR開發(fā)環(huán)境及其標(biāo)準(zhǔn)固件庫(kù)可方便的進(jìn)行產(chǎn)品開發(fā)。

      MFRCS22為NXP公司生產(chǎn)的一款支持ISO/IEC 14443A標(biāo)準(zhǔn)的讀寫芯片,根據(jù)天線尺寸和調(diào)校效果讀寫距離可達(dá)50mm,其多樣化的硬件接口可方便的與單片機(jī)或PLC進(jìn)行通訊,其QFN32的小型封裝,有利于集成到緊湊型產(chǎn)品之中。

      Mifare S50非接觸式智能IC卡片擁有1Kb存儲(chǔ)空間,存儲(chǔ)于16個(gè)扇區(qū)內(nèi),每個(gè)扇區(qū)分為0-3塊,共64塊,每個(gè)數(shù)據(jù)塊包含16個(gè)字節(jié)。其操作頻率為13.56MHz,根據(jù)天線設(shè)計(jì)最高讀寫距離為100mm,數(shù)據(jù)可存儲(chǔ)10年,寫次數(shù)可達(dá)10萬次。

      1.2原理圖設(shè)計(jì)

      考慮到各芯片電源電壓與使用場(chǎng)景,設(shè)置系統(tǒng)的輸入電壓為5V直流,經(jīng)過L1117-3.3穩(wěn)壓芯片輸出3.3V直流電壓供電,為保證直流電源波形噪聲小,可在5V輸入端和3.3V輸出端并聯(lián)2個(gè)100uf鉭電容進(jìn)行濾波。同樣的,可在每個(gè)電源管腳附近布一顆100nf電容用作退耦電容穩(wěn)定輸入電源。主芯片JTAG接口加10k上拉電阻進(jìn)行連接,方便使用Ulink等調(diào)試器進(jìn)行在線調(diào)試及仿真。采用S12301的MOS管芯片驅(qū)動(dòng)發(fā)光二極管與蜂嗚器。將主控芯片與MFRCS22芯片按照SPI接口連接,并按要求,將MFRCS22芯片1腳12C引腳接地,將32腳EA引腳拉高以使其硬件運(yùn)行于SPI模式下。

      SPI串行外設(shè)接口作為單片機(jī)與外設(shè)進(jìn)行通信的一種高速、全雙工的總線模式,因其僅需SPI_SCK(SPI時(shí)鐘)、SPI_MISo(主輸入從輸出)的SPI_MOSI(主輸出從輸入)以及一根SPI_NSS(SPI片選)信號(hào)線即可完成主芯片與MFRC522的通訊接口。利于PCB布局布線,由于MFRCS22與STM32均有SPI接口,并且SPI時(shí)序較為簡(jiǎn)潔易于調(diào)試,故在本設(shè)計(jì)中可以直接通過STM32F103的SPI總線讀寫MFRC522芯片的寄存器來進(jìn)行芯片的設(shè)置與配置。SPI硬件接口如圖2所示。

      1.3天線設(shè)計(jì)

      由于MFRC522與Mifare卡通信是利用電磁感應(yīng),在卡片與天線匹配時(shí)產(chǎn)生電荷進(jìn)行數(shù)據(jù)交換,故天線的設(shè)計(jì)顯得尤為重要,天線部分原理圖如圖3所示。

      根據(jù)官方天線設(shè)計(jì)指導(dǎo)手冊(cè)可得:

      分析可知優(yōu)化前的天線中點(diǎn)接地,其整體也為GND的一部分,故在天線繞制時(shí)相鄰的兩根線在生產(chǎn)的時(shí)候極易發(fā)生短路的情況,導(dǎo)致天線強(qiáng)度大大減小。為保證PCB在制板生產(chǎn)中的合格率,本設(shè)計(jì)采用雙線并繞的方式直接在板上繪制RC522的天線部分。PCB如圖5所示。

      具體設(shè)計(jì)方法是在天線的匹配網(wǎng)絡(luò)中串入2個(gè)歐姆的電阻(R4與R10),在PCB繪制時(shí)將天線兩端同時(shí)開始走線,使得天線的相鄰兩根線在物理上隔離,這樣制板時(shí)機(jī)器可以檢測(cè)出相鄰的天線部分是否有短路情況。通過這種設(shè)計(jì),可將產(chǎn)品的天線合格率由優(yōu)化之前的95%提高到近100%.大大降級(jí)了天線短路所帶來的卡片感應(yīng)距離低,合格率低的問題。

      通過對(duì)MFRC522讀卡芯片天線部分的改進(jìn)與優(yōu)化,使得天線短路情況發(fā)生情況大大減少,產(chǎn)品良品率有較大提高,讀卡距離可達(dá)70mm,配合嵌入式軟件與上位機(jī)軟件,讀寫Mirare IC卡片效率較高。

      2.軟件設(shè)計(jì)與實(shí)現(xiàn)

      通過STM32的SPI對(duì)MFRC522的內(nèi)部寄存器進(jìn)行讀寫,配置所需寄存器以達(dá)到設(shè)置芯片的目的來驅(qū)動(dòng)電線部分,通過芯片的RX、TX引腳發(fā)送和接收信號(hào)對(duì)Mifare卡片進(jìn)行數(shù)據(jù)傳輸,接收到的數(shù)據(jù)則存儲(chǔ)在RC522芯片內(nèi)部FIFO中,stm32讀取FlFOE口可取出相應(yīng)的數(shù)據(jù)。

      STM32軟件內(nèi)采用串口中斷方式查看是否有數(shù)據(jù)接收,主程序的while(1)死循環(huán)內(nèi)輪詢查詢從串口接收的數(shù)據(jù)是否為上位機(jī)下發(fā)來的符合通訊協(xié)議的指令,并對(duì)數(shù)據(jù)進(jìn)行CRC校驗(yàn)查看是否有數(shù)據(jù)遺失和錯(cuò)誤。若收到上位機(jī)指令并數(shù)據(jù)完整正確,則執(zhí)行相應(yīng)的通訊協(xié)議中的Command,并返回執(zhí)行狀態(tài)。具體軟件設(shè)計(jì)框圖如圖6所示。

      2.1系統(tǒng)初始化函數(shù)

      利用STM32的標(biāo)準(zhǔn)庫(kù)函數(shù)可以快速對(duì)芯片的SPI進(jìn)行初始化,其中需要注意的是根據(jù)MFRC522的數(shù)據(jù)手冊(cè)中芯片的SPI時(shí)序圖,其CPOL極性為低電平,即時(shí)鐘空閑時(shí)候的電平是低電平,所以當(dāng)SCLK有效的時(shí)候,就是高電平;相位CPHA為第一個(gè)邊沿,即在CPOL為0時(shí),時(shí)鐘空閑時(shí)是低電平,第一個(gè)邊沿從低變到高,為上升沿。

      在STM32的main函數(shù)中上電后主要完成相應(yīng)的時(shí)鐘、GPIO以及SPI之后,通過讀寫寄存器配置MFRC522芯片,完成設(shè)置芯片工作模式、天線增益、使能天線收發(fā)信號(hào)等操作,之后使能USB時(shí)鐘、配置USB相關(guān)GPIo管腳、USB接收中斷、初始化波特率等。

      2.2硬件與上位機(jī)通訊

      當(dāng)程序運(yùn)行至while(1)循環(huán)時(shí),循環(huán)檢查是串口是否收到數(shù)據(jù),若收到則繼續(xù)檢查數(shù)據(jù)是否為上位機(jī)命令并進(jìn)行CRC校驗(yàn),解析出具體的命令號(hào),即m_nProtocol,根據(jù)該值執(zhí)行相關(guān)命令并返回執(zhí)行結(jié)果,以檢查串口連接為例:

      SendPacket(&m;_NetComm);

      }

      break;

      }

      當(dāng)串口收到數(shù)據(jù)包時(shí),通過判斷是FindDevice指令,執(zhí)行if內(nèi)部語句,通過USB虛擬串口SendPacket(NetComm_Struct*p_net)函數(shù)發(fā)送特定字符,通過上位機(jī)驗(yàn)證即可連接成功。

      軟件使用MFC底層CSeriaICom類中的OpenPo rt函數(shù)打開指定串口,ConfigurePort函數(shù)配置串口,使用ClosePort函數(shù)關(guān)閉串口。與下位機(jī)的程序恰恰相反,上位機(jī)通過發(fā)送請(qǐng)求命令,接收應(yīng)答信息來執(zhí)行相關(guān)指令。通過發(fā)送NetComm_Struct結(jié)構(gòu)體,根據(jù)串口收到的數(shù)據(jù)執(zhí)行相應(yīng)函數(shù)。按照協(xié)議,如果USB有回應(yīng)則確認(rèn)連接成功,可以進(jìn)行使用。在遵循操作Mifare卡的時(shí)序的基礎(chǔ)上,依次進(jìn)行防沖突、選卡、驗(yàn)證和讀寫的順序進(jìn)行卡片的操作。每次不同操作之后都在軟件的右下角EditBox控件內(nèi)有提示信息,結(jié)合蜂嗚器以及LED燈可以方便的了解操作結(jié)果。

      3.結(jié)論

      論文以STM32F103C8T6為主控芯片,以MFRC522為讀寫卡芯片,采用SPI通訊方式與Mifare IC卡的通訊;通過對(duì)MFRC522讀卡芯片天線部分的改進(jìn)與優(yōu)化,使得天線短路情況大大減少,讀卡距離可達(dá)70mm,配合嵌入式軟件和上位機(jī)軟件,方便地實(shí)現(xiàn)了對(duì)Mifare IC卡的讀寫,讀寫效率較高。為非接觸式IC卡讀寫器的設(shè)計(jì)提供了一種有效方案。

      猜你喜歡
      IC卡
      工商業(yè)IC卡控制器改造為物聯(lián)網(wǎng)控制器實(shí)踐
      基于IC卡識(shí)別的電梯層門網(wǎng)絡(luò)監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      在用電梯加裝外接式IC卡運(yùn)行控制系統(tǒng)設(shè)計(jì)改進(jìn)
      一種新的無觸點(diǎn)IC卡的檢測(cè)方法
      淺析銀聯(lián)金融IC卡在高速公路封閉式收費(fèi)中的應(yīng)用
      江蘇省IC卡道路運(yùn)輸證聯(lián)合發(fā)行管理問題研究
      當(dāng)前金融IC卡應(yīng)用中出現(xiàn)的問題及建議
      讀IC卡
      黨員文摘(2014年12期)2014-12-05 20:10:56
      長(zhǎng)春開通公交IC卡充值平
      湖北省高速公路IC卡管理系統(tǒng)淺談
      山丹县| 鄂温| 辛集市| 南川市| 赤城县| 双城市| 嘉义县| 枣阳市| 故城县| 曲阜市| 晋城| 定兴县| 马鞍山市| 游戏| 安塞县| 瑞金市| 古丈县| 镇赉县| 东乌珠穆沁旗| 华坪县| 灵丘县| 三门县| 南部县| 鄂伦春自治旗| 松潘县| 保山市| 中方县| 吴堡县| 兖州市| 苍梧县| 江达县| 滨州市| 汾阳市| 遵义县| 改则县| 新安县| 合阳县| 贵南县| 施甸县| 沁阳市| 延津县|