<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 一款專(zhuān)用射頻讀卡器的軟件系統的設計及實(shí)現

一款專(zhuān)用射頻讀卡器的軟件系統的設計及實(shí)現

作者: 時(shí)間:2009-04-01 來(lái)源:網(wǎng)絡(luò ) 收藏
程序執行完Init_System()函數后執行RcChipReady函數。此函數的功能是初始化MF RC630芯片。
4.2 硬件驅動(dòng)
4.2.1 PCF8563驅動(dòng)
由于本芯片是一款標準的I2C總線(xiàn)設備,所以硬件驅動(dòng)實(shí)際上就是標準的I2C總線(xiàn)控制。由于篇幅有限,這里就不介紹了。
4.2.2 驅動(dòng)
是MF RC500芯片的升級產(chǎn)品,所以MFRC630的大部分寄存器與MF、RC500均相同,它們對卡的操作流程也基本相同。下面介紹對卡的操作流程。
(1)卡的操作流程
整個(gè)系統的工作由對Mifare卡操作和系統后臺處理兩大部分組成。由于篇幅有限,本文只對Mifare卡的操作流程進(jìn)行簡(jiǎn)單介紹。Mifare One卡的操作可以分為以下幾項:
①復位請求。當一張Mifare卡片處在卡片讀寫(xiě)器天線(xiàn)的工作范圍之內時(shí),程序員控制讀寫(xiě)器便向卡片發(fā)出REQUEST all(或REQUEST std)命令??ㄆ腁TR將啟動(dòng),將卡片Block 0中的卡片類(lèi)型(TagType)號共2個(gè)字節傳送給讀寫(xiě)器,建立卡片與讀寫(xiě)器的第一步通信聯(lián)絡(luò )。如果不進(jìn)行“得位請求”操作,讀寫(xiě)器對卡片的其他操作將不會(huì )進(jìn)行。
②反碰撞操作。如果有多張Mifare卡片處在卡片讀寫(xiě)器天線(xiàn)的工作范圍之內,PCD將首先與每一張卡片進(jìn)行通信,取得每一張卡片的序列號。由于每一張Mifare卡片都具有其唯一的序列號,決不會(huì )相同,因此PCD根據卡片的序列號來(lái)保證一次只對一張卡操作。該操作PCD得到PICC的返回值為卡的序列號。
③卡選擇操作。完成了上述2個(gè)步驟之后,PCD必須對卡片進(jìn)行選擇操作。執行操作后,返回卡上的SIZE字節。
④認證操作。經(jīng)過(guò)上述3個(gè)步驟,在確認已經(jīng)選擇了一張卡片時(shí),PCD在對卡進(jìn)行讀/寫(xiě)操作之前,必須對卡片上已經(jīng)設置的密碼進(jìn)行認證。如果匹配,才允許進(jìn)一步的讀/寫(xiě)操作。
⑤讀/寫(xiě)操作。對卡的最后操作是讀、寫(xiě)、增值、減值、存儲和傳送等操作。
(2)MF RC500開(kāi)發(fā)包移植
在本系統中,主要是將標準的MF RC500開(kāi)發(fā)包進(jìn)行移植來(lái)完成驅動(dòng)的編寫(xiě)。在本系統中使用的是SPI總線(xiàn),所以只要將MF RC500標準開(kāi)發(fā)包中對寄存器讀/寫(xiě)的函數改成SPI總線(xiàn)的讀/寫(xiě)函數即可。在本系統中主要是增加了SpiSendByte()和SpiReByte()函數,同時(shí)修改了 ReadRawRc(uchar Address)和WriteR-awRc(uchar Address,uchar value)函數。部分代碼如下:
4.2.3存儲器驅動(dòng)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>