0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于SLRC610射頻芯片實(shí)現(xiàn)讀卡器模塊的應(yīng)用設(shè)計(jì)

電子設(shè)計(jì) ? 來(lái)源:?jiǎn)纹瑱C(jī)與嵌入式系統(tǒng)應(yīng)用 ? 作者:孫華 ? 2021-06-29 10:57 ? 次閱讀

1 主控和射頻芯片簡(jiǎn)介

1.1 主控芯片NXP LPC812

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

1.2 射頻芯片SLRC610

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

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

2 模塊硬件設(shè)計(jì)

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

圖1 模塊框圖

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

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

圖2 主控芯片電路圖

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

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

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

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

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

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

圖3 射頻芯片電路圖

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

3 模塊軟件設(shè)計(jì)

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

3.1 SLR0610測(cè)試部分

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

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

SLRC610測(cè)試流程圖如圖4所示。

圖4 SLRC610測(cè)試流程圖

3.2 檢測(cè) 15693

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

圖5 檢測(cè)15693流程圖

3.3 Get System lnfo命令

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

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

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

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

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

3.4 SPI通信

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

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

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

4.1 調(diào)試方法

由于15693的編碼方式是SOF信號(hào)后每一定長(zhǎng)度代表一定量的信息,所以可以先取信號(hào)的開(kāi)始時(shí)間,然后計(jì)算下一個(gè)的時(shí)間,去看示波器每一個(gè)時(shí)間段的波形,記錄下來(lái)然后去整體解析。

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

4.2 測(cè)試

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

結(jié)語(yǔ)

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

責(zé)任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 芯片
    +關(guān)注

    關(guān)注

    452

    文章

    50206

    瀏覽量

    420899
  • 射頻
    +關(guān)注

    關(guān)注

    104

    文章

    5534

    瀏覽量

    167460
  • 讀卡器
    +關(guān)注

    關(guān)注

    2

    文章

    409

    瀏覽量

    39317
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于FPGA的無(wú)線射頻讀卡器的設(shè)計(jì)

    基于FPGA的無(wú)線射頻讀卡器的設(shè)計(jì)
    發(fā)表于 08-06 12:51

    射頻讀卡器

    本帖最后由 gk320830 于 2015-3-7 19:55 編輯 我現(xiàn)在有個(gè)短距離射頻讀卡器,想增加讀的距離有什么好的辦法嗎?知道的麻煩告訴下,感謝!
    發(fā)表于 08-19 13:04

    有木有大神懂 畢業(yè)設(shè)計(jì):遠(yuǎn)距離RFID讀寫硬件方面設(shè)計(jì)

    具體要求:1、射頻芯片SLRC610 2、 微處理STM32f103 3、支持ISO15693 4、13.56MHZ有沒(méi)有會(huì)畫關(guān)于這個(gè)的外圍電路
    發(fā)表于 04-20 22:06

    如何設(shè)計(jì)125KHz RFID讀卡器?

    時(shí)無(wú)須人工干預(yù),易于實(shí)現(xiàn)自動(dòng)化且不易損壞,可識(shí)別高速運(yùn)動(dòng)物體并可同時(shí)識(shí)別多個(gè)射頻卡,操作快捷方便,已經(jīng)得到了廣泛的應(yīng)用。目前存在的一些讀卡器,都需要讀卡
    發(fā)表于 08-06 06:56

    求一種RFID讀卡器模塊的設(shè)計(jì)方案

    什么是主控和射頻芯片?RFID讀卡器模塊是由哪些部分組成的?怎樣去設(shè)計(jì)一種RFID讀卡器模塊?如
    發(fā)表于 05-24 07:04

    基于ARM的射頻IC卡讀卡器設(shè)計(jì)

    本文根據(jù)TCP/IP 網(wǎng)絡(luò)中讀卡器的訪問(wèn)需求,提出基于ARM 的射頻IC 卡讀卡器的設(shè)計(jì)方案,并給出了詳細(xì)的設(shè)計(jì)過(guò)程
    發(fā)表于 09-12 16:58 ?63次下載

    射頻讀卡器YW-605使用手冊(cè)

    YW-605系列射頻讀卡器是采用13.56M非接觸射頻技術(shù)設(shè)計(jì)而成的通用型讀卡器,內(nèi)嵌MF RC530、RC531和CL RC632等一些列原裝
    發(fā)表于 04-18 14:34 ?58次下載

    基于15693協(xié)議的射頻識(shí)別讀卡器的設(shè)計(jì)

    【摘要】設(shè)計(jì)了基于15693協(xié)議的射頻識(shí)別讀卡器系統(tǒng)。該系統(tǒng)以RC--632芯片為主控芯片。標(biāo)簽天線將磁場(chǎng)能量轉(zhuǎn)換成電流,激活射頻
    發(fā)表于 03-06 17:30 ?92次下載
    基于15693協(xié)議的<b class='flag-5'>射頻</b>識(shí)別<b class='flag-5'>讀卡器</b>的設(shè)計(jì)

    13.56MHz_RFID讀卡器天線的設(shè)計(jì)

    簡(jiǎn)要介紹了由13.56 MHz射頻芯片MFRC500設(shè)計(jì)的RFID讀卡器,重點(diǎn)論述該讀卡器天線的設(shè)計(jì)與實(shí)現(xiàn). 經(jīng)實(shí)踐證明,該天線具有良好的
    發(fā)表于 02-23 17:33 ?60次下載

    無(wú)線射頻讀卡器的設(shè)計(jì)和應(yīng)用

    無(wú)線射頻識(shí)別(RFID)技術(shù)是一種自動(dòng)識(shí)別技術(shù)。每一個(gè)目標(biāo)對(duì)象在射頻讀卡器中對(duì)應(yīng)唯一的電子識(shí)別碼(UID),或者“電子標(biāo)簽”。嵌入式軟處理內(nèi)核已可顯著提升DMIPS/MHz性能,不久以后,高版本
    發(fā)表于 11-23 15:22 ?2833次閱讀
    無(wú)線<b class='flag-5'>射頻</b><b class='flag-5'>讀卡器</b>的設(shè)計(jì)和應(yīng)用

    基于MSP430F149的RFID讀卡器模塊設(shè)計(jì)的詳細(xì)中文資料介紹

    以TI 公司的超低功耗單片機(jī)MSP430F149為主控芯片,控制恩智浦公司的高集成度讀卡器芯片MFRC522,設(shè)計(jì)實(shí)現(xiàn)了遵循ISO/IEC789 14443A 協(xié)議的
    發(fā)表于 06-04 08:07 ?7次下載
    基于MSP430F149的RFID<b class='flag-5'>讀卡器</b><b class='flag-5'>模塊</b>設(shè)計(jì)的詳細(xì)中文資料介紹

    探析無(wú)線射頻讀卡器的設(shè)計(jì)和應(yīng)用

    無(wú)線射頻識(shí)別(RFID)技術(shù)是一種自動(dòng)識(shí)別技術(shù)。每一個(gè)目標(biāo)對(duì)象在射頻讀卡器中對(duì)應(yīng)唯一的電子識(shí)別碼(UID),或者“電子標(biāo)簽”。標(biāo)簽附著在物體上標(biāo)識(shí)目標(biāo)對(duì)象,如紙箱、貨盤或包裝箱等。射頻
    的頭像 發(fā)表于 02-28 10:07 ?3128次閱讀
    探析無(wú)線<b class='flag-5'>射頻</b><b class='flag-5'>讀卡器</b>的設(shè)計(jì)和應(yīng)用

    基于ADI的UHF RFID讀卡器射頻前端的兩種實(shí)現(xiàn)方法解析

    本文介紹基于ADI公司的信號(hào)鏈的UHF RFID讀卡器射頻前端的兩種實(shí)現(xiàn)方法。
    發(fā)表于 10-25 16:00 ?3069次閱讀
    基于ADI的UHF RFID<b class='flag-5'>讀卡器</b><b class='flag-5'>射頻</b>前端的兩種<b class='flag-5'>實(shí)現(xiàn)</b>方法解析

    CLRC663遷移到MFRC631、MFRC630或SLRC610的步驟

    to MFRC631 MFRC630 or SLRC610 and give a short overview about the changes in soft and hardware。
    發(fā)表于 02-23 09:55 ?22次下載

    13.56 MHz RFID讀卡器天線的設(shè)計(jì)

    簡(jiǎn)要介紹了由13.56 MHz射頻芯片MFRC500設(shè)計(jì)的RFID讀卡器,重點(diǎn)論述該讀卡器天線的設(shè)計(jì)與實(shí)現(xiàn).經(jīng)實(shí)踐證明,該天線具有良好的性能
    發(fā)表于 10-13 15:27 ?56次下載