国产成人精品a视频一区www_国产区视频在线观看_99色视频_欲色av_亚洲一区电影_亚洲综合视频一区

基于Cortex-M0+的RFID讀卡器模塊設(shè)計

來源:網(wǎng)絡(luò)

點擊:1084

A+ A-

所屬頻道:新聞中心

關(guān)鍵詞: RFID,讀卡器,Cortex-M0+

      1主控和射頻芯片簡介

      1.1主控芯片NXPLPC812

      LPCS00系列是基于ARMCortex-M0+的低成本32位MCU系列產(chǎn)品,工作時CPU頻率最高可達30MHz。它支持最高16KB的閃存和4KB的SRAM。

      1.2射頻芯片SLRC610

      SLRC610是NXP公司新一代多協(xié)議無線近場芯片中的一員,它是用于13.56MHz的非接觸式通信的高度集成的收發(fā)器芯片,支持并遵守IS0/IEC15693、EPCUID和ISO/IEC18000-3mode3/EPCClass-1HF協(xié)議的卡片。它與主機的通信接口有SPI、UART、I2C總線(包括I2C和I2CL模式)三種。另外,它的安全性比上一代更高,支持安全訪問模塊(SAM)的連接。

      數(shù)據(jù)手冊的第一個正式版(SLRC610v.3.1)在2012年9月6日發(fā)布,從目前最新的數(shù)據(jù)手冊(SLRC6l0v.3.4)來看,新版主要是修正發(fā)現(xiàn)的描述錯誤和數(shù)據(jù)值的更新。

      2模塊硬件設(shè)計

      模塊主要由通信升級接口、調(diào)試接口、提示信號、LPC812、SLRC610、模塊內(nèi)置天線等組成。模塊框圖如圖1所示。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      圖1模塊框圖

      2.1主控芯片電路設(shè)計

      LPC812是LPC800系列配置最高的型號,它有TSSOP16、SO2O、TSSOP20三種封裝,因為設(shè)計的是小模塊,所以選用了sO2O塑料小型封裝。由于LPC812支持通過開關(guān)矩陣將特殊功能分配到某個I/O引腳,所以在設(shè)計原理圖的時候可以充分考慮將某個功能分配到哪個引腳上既方便布線、性能又好。另外,本次設(shè)計中LPC812內(nèi)置的1%精度的12MHz內(nèi)部RC振蕩器作系統(tǒng)時鐘。主控芯片電路如圖2所示。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      圖2主控芯片電路圖

      2.1.1通信、升級接口設(shè)計

      LPC812繼承NXP以往單片機的在系統(tǒng)編程(ISP)升級功能。由于在ISP模式下占用了USARTO,而本次設(shè)計模塊的通信接口也是串口,故將通信和升級合并為一個接口。要模塊正常工作則將IsPEN懸空(推薦接VCC);要升級固件,則將ISPEN接GND,然后給LPC812上電,再通過工具軟件FlashMagic燒寫新固件。這部分對應(yīng)圖2中的J1接口。

      2.1.2調(diào)試接口設(shè)計

      LPC812支持SWD調(diào)試、JTAG邊界掃描、微跟蹤緩沖區(qū)(MTB)三種方式。其中,SWD使用較為方便,僅僅需要串行線調(diào)試數(shù)據(jù)輸入/輸出(SWDIO)、串行線時鐘(SWCLK)、復(fù)位(nRST)這i根線。本設(shè)計中為了調(diào)試方便又加了VCC和GND這兩根線,也就是說可以在只插這個調(diào)試接口的情況下對模塊進行調(diào)試。在默認情況下它的VCC是從外界取電的,所以要外部給板子供電才能調(diào)試。打開JTAG的外殼,將內(nèi)部的跳線帽插到靠近VCC的兩針上,那么JTAG工具的VCC就對外供電了,對板子調(diào)試可以不用再外部供電。這部分對應(yīng)圖2中J2接口。

      2.2射頻芯片電路設(shè)計

      SLRC610只有一種小型的HVQFN32封裝,特別要注意它的第33引腳,也就是芯片朝PCB面正中間一個正方形的面,這個面必須良好接地,否則會出現(xiàn)些奇怪的現(xiàn)象。SLRC610支持SPI、I2C總線、I2CI和UART四種接口,它會在掉電復(fù)位后通過IFSEL0和IFSEL1電平組合來判斷當(dāng)前主機接口類型。本次設(shè)計是采用了硬編碼的SPI接口,在硬件電路上需IFSEL0接地、IFSEL1接VCC。射頻芯片電路如圖3所示。其巾,引在SLRC610芯片中33引腳VSS的作用是接地和散熱,所以此引腳必須良好接地。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      圖3射頻芯片電路圖

      天線的匹配電路包含一個EMC低通濾波器(L1、L2、C5、C6),一個匹配電路(C3、C4、C7~C1O),一個接收電路(R2、R3、C15)和天線本身。接收電路的元件值需被特別設(shè)計并根據(jù)板子實際情況調(diào)整。本次設(shè)計模塊的尺寸有限,接收電路采用了元器件較少的單端模式,且天線線圈是內(nèi)置在PCB中間層,以方便應(yīng)用,減小體積。

     

      3模塊軟件設(shè)計

      主程序包含系統(tǒng)初始化、LED測試、串口測試、SLRC610測試這4部分。系統(tǒng)初始化部分主要有系統(tǒng)內(nèi)核時鐘更新、GPIO初始化、systick配置功能。LED測試部分主要包含LED端口初始化、更新為滅狀態(tài)、更新為亮狀態(tài)、翻轉(zhuǎn)亮滅狀態(tài)功能測試。當(dāng)然這之后LED已經(jīng)配置好,可以隨意使用三個更新狀態(tài)函數(shù)。串口測試主要包括對串口功能引腳分配(LPC812的開關(guān)矩陣,這部分放在SPI配置部分詳細敘述)、串口初始化、發(fā)送字符串等功能測試。這之后,就可以通過串口打印調(diào)試信息。

      3.1SLR0610測試部分

      SLRC610測試部分包含設(shè)置接口連接、SLRC610復(fù)位、NXPlib初始化、等待SLRC610復(fù)位就緒進人空閑狀態(tài)、檢測15693卡、LED燈提示等。設(shè)置接口連接部分主要是通過軟件來設(shè)置IFSEL0和IFSEL1的電平,告訴SLRC610采用哪種接口,因為本設(shè)計中這兩個引腳是通過硬件方式設(shè)置的,所以這里沒有執(zhí)行實際操作,僅打印了當(dāng)前使用了SPI接口的提示信息。

      SLRC610復(fù)位是通過將SLRC610的PDOwN引腳加載超過10μs的持續(xù)高電平來啟動內(nèi)部復(fù)位程序的,它包含復(fù)位電源和啟動時間兩個階段。由于它的復(fù)位方式和老一代的方式不同,所以升級射頻芯片的時候要格外注意。筆者調(diào)試的時候就遇到過因復(fù)位導(dǎo)致的問題,當(dāng)循環(huán)跑SLRC610測試時,會偶爾成功。追蹤發(fā)現(xiàn)讀寫寄存器不是每次都成功,后來調(diào)了較長一段時間才發(fā)現(xiàn)是復(fù)位的問題。在本次設(shè)計中為確保復(fù)位成功,后面又加了"等待SLRC610復(fù)位就緒進入空閑狀態(tài)"這一步驟。

      SLRC610測試流程圖如圖4所示。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      圖4SLRC610測試流程圖

      3.2檢測15693

      檢測15693協(xié)議主要包含SLRC610軟復(fù)位、初始化15693協(xié)議層、應(yīng)用15693協(xié)議設(shè)置、獲取15693卡系統(tǒng)信息。SLRC61O軟復(fù)位就是將SLRC610內(nèi)部E2PROM中保存的寄存器的默認值重新加載到寄存器中。一般初始化的時候會用到,當(dāng)然切換協(xié)議的時候也會用到。初始化15693協(xié)議層主要完成參數(shù)結(jié)構(gòu)體長度檢查和私有變量初始化。應(yīng)用15693協(xié)議設(shè)置是根據(jù)參數(shù)中設(shè)置的卡的類(PHHAL_Hw_CARDTYPE_ISO15693)來加載該協(xié)議下SLRC610的寄存器的默認配置,包括調(diào)制深度、調(diào)制方式、超時時間等。檢測15693流程圖如圖5所示。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      圖5檢測15693流程圖

      3.3GetSystemlnfo命令

      GetSystemInfo是ISI15693的可選命令,主要用來檢索卡片的基本信息。請求和應(yīng)答幀都是有幀頭和幀尾的,如下所示。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      去掉幀頭幀尾一共有4個字段,其中一個字段(8字節(jié)的UID)是可選的。它的響應(yīng)信息格式如下所示,其中斜體部分的字段表示,只有在響應(yīng)信息中有該標(biāo)志,才有這個字段的信息。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      由于它發(fā)送的字節(jié)少(在不加UID的情況,加上CRC才4字節(jié)),而且只要卡在場中就能使用,比較方便用示波器抓波形以分析收發(fā)的數(shù)據(jù)是否正常。

      獲取15693卡系統(tǒng)信息的寫法有兩種:第一種是用phpalSlil5693_Sw_Exchange和卡片交換信息的時傳兩字節(jié)數(shù)據(jù)"0x020x2B",并設(shè)發(fā)送長度為兩字節(jié);第二種是用phpalSlil5693_Sw_Exchange和卡片交換信息的時傳兩字節(jié)數(shù)據(jù)"0x2B",并設(shè)發(fā)送長度為一字節(jié)。從本質(zhì)上來講,這兩種做法的最終結(jié)果都是發(fā)了同樣的數(shù)據(jù),不同之處在于它們的發(fā)送方式。phpalSli15693_Sw_Exchange的第二個參數(shù)有一個是寫選項,對于第一種,要將其設(shè)為PH_EXCHANGE_LEAVE_BUFFER_BIT,第二種設(shè)為PH_EXCHANGE_DEFAULT,還得將0x02設(shè)置到第一個參數(shù)的bFlags上。另外在使用phpalSli15693_Exchange時要特別注意,在該函數(shù)前面用phpalSli15693_SetConfig函數(shù)設(shè)置超時。假如沒有設(shè)置該函數(shù),那么每次只能收到卡片返回的前5位正確數(shù)據(jù)。獲取15693卡系統(tǒng)信息流程圖如圖6所示。

    基于Cortex-M0+的RFID讀卡器模塊設(shè)計

      圖6獲取15693卡系統(tǒng)信息流程圖

      3.4SPI通信

      采用宏定義加數(shù)組的方式來配置I/O引腳,這種方法比較靈活,可移植性很強,又方便代碼維護。LPC800系列加了一個開關(guān)矩陣,將可轉(zhuǎn)移功能通過開關(guān)矩陣分配給引腳PIO0_0~PIO0_17,使用起來很方便。使用的時候需要先查可轉(zhuǎn)移功能所對應(yīng)的SWM引腳分配寄存器。找到后先將原來的數(shù)據(jù)清除,再寫上新分配的引腳。操作過程中要謹慎,絕不能修改不該動的位。

      這里初始化調(diào)用LPC812的庫函數(shù),將SP10設(shè)置為主機模式,為確保通信可靠在SSEL置位和數(shù)據(jù)幀起點之間、制數(shù)據(jù)幀末尾和SSEL解除置位之間、相鄰數(shù)據(jù)幀之間插入2個SPI時鐘周期,兩次傳輸之間SSEL解除置位的最短時間為3個SPI時鐘周期。

      4模塊調(diào)試和測試

      4.1調(diào)試方法

      由于15693的編碼方式是SOF信號后每一定長度代表一定量的信息,所以可以先取信號的開始時間,然后計算下一個的時間,去看示波器每一個時間段的波形,記錄下來然后去整體解析。

      抓到數(shù)據(jù)后開始解析數(shù)據(jù),比如獲取卡片信息的命令(0x020x2B0x260xA3),它總共有4個字節(jié),最后兩個字節(jié)是CRC校驗。通過調(diào)程序可以看到VCD發(fā)的實際命令(0x020x2B),而CRC則是硬件算好直接發(fā)的,所以通過調(diào)程序無法看到它。

      4.2測試

      模塊的實際大小為45mm×45mill,模塊中芯片、元器件都集中在模塊中間,線圈以蝕刻的方式在靠近的邊緣的PCB中間層。筆者手上有TI、NXP、ST公司的15693卡共4種型號,做了讀卡距離測試。測試方法是將卡放于模塊天線正對面,通過觀察模塊上LED燈是否亮就能知道是否讀卡成功,將卡放到能讀到的高度,再用直尺去量高度。

      結(jié)語

      本模塊設(shè)計中采用的是較新的主控和射頻芯片,價格較低,性能又強,而且在很長一段時間內(nèi)不會有供貨、價格等方面的問題。LPC800系列既增加了開關(guān)矩陣等實用的功能,方便用戶電路設(shè)計,也集成了老一代單片機的ISP升級功能。本文詳細描述了這兩顆芯片的使用方法以及對模塊的調(diào)試方法與步驟等。該模塊采用貼面封裝的元件,具有低成本、低功耗、小尺寸、讀寫卡距離遠等特點,使用起來很方便,具有較高的應(yīng)用價值。

    (審核編輯: 智匯張瑜)

    聲明:除特別說明之外,新聞內(nèi)容及圖片均來自網(wǎng)絡(luò)及各大主流媒體。版權(quán)歸原作者所有。如認為內(nèi)容侵權(quán),請聯(lián)系我們刪除。

    主站蜘蛛池模板: 久久国产精品久久久久久 | 成人在线观看免费 | 国产精品久久久99 | 青草青草 | 综合久久综合久久 | 欧美黄色大片网站 | 三级在线视频 | 久久精品极品 | 黄色片免费在线 | 香蕉大人久久国产成人av | 日韩免费在线视频 | 欧美成人第一页 | 国产视频精品久久 | 人人干美女 | 观看av| 五月激情六月婷婷 | 国产一级电影网 | 永久精品 | 欧美专区在线 | av福利在线观看 | 538在线精品 | 欧美一区二区大片 | 台湾佬成人网 | 99这里只有精品视频 | 国产精品3区 | 欧美日韩不卡合集视频 | 一区二区三区在线 | 久久99精品久久久久久琪琪 | 一区二区三区国产好 | 日韩精品一区二区三区中文字幕 | 国产欧美在线观看 | 黄色一级免费大片 | 国产精一区二区 | 狠狠综合久久 | 国产精品久久久久久无遮挡 | √新版天堂资源在线资源 | 免费一区二区三区 | 搞黄视频在线观看 | 日韩午夜 | 四虎网站 | 97网站 |