隨著RFID應(yīng)用的普及,越來越多的軟件工程師需要使用RFID讀寫器編程來實現(xiàn)自己的需求。為了使軟件工程師更快的了解RFID讀寫器的使
用,本文選擇一款市面上常用的USB免驅(qū)RFID讀寫器SDT-HA來做解析。USB免驅(qū)一般是使用USB HID接口,因為windows系統(tǒng)本身帶有HID接口的驅(qū)
動,所以不需要單獨發(fā)布驅(qū)動程序。
要編寫RFID讀寫器的程序,先必須了解RFID讀寫器讀寫的卡的內(nèi)存結(jié)構(gòu)�,F(xiàn)在廣泛使用的是以M1(S50)卡及其兼容卡為代表的智能卡,以
下將詳細(xì)介紹S50卡的內(nèi)存結(jié)構(gòu)。
標(biāo)準(zhǔn)S50智能卡有8Kbits內(nèi)存,相當(dāng)于1K字節(jié),實際可以用來的存儲數(shù)據(jù)的有752字節(jié),為什么會縮水,在稍后的內(nèi)存介紹中將會解釋。
標(biāo)準(zhǔn)S50智能卡有16個扇區(qū),每個扇區(qū)有4塊,每塊有16個字節(jié)。這全部算下來就是16*4*16=1024字節(jié)(1K)。由于塊是卡結(jié)構(gòu)的最小管理
單位,所以我們在讀寫這張卡的時候就是按照塊來操作的,就是說必須是16個字節(jié)。每4個塊組成了一個扇區(qū)單元,組成扇區(qū)單元的目的就是為
了管理卡的密鑰,也就是卡的密鑰和扇區(qū)是對應(yīng)的。有16個扇區(qū),也就有16組密鑰各自獨立的工作著。某組密鑰只是對這個扇區(qū)(4個塊)管用
,與其他的扇區(qū)無關(guān)。這種設(shè)計可以使此智能卡可以同時作多達(dá)16種不同的應(yīng)用。
每個扇區(qū)的密鑰都存放在該扇區(qū)的最后一塊,占用了一個單獨的塊。密鑰分為A密鑰和B密鑰,關(guān)于密鑰可以參見文章《關(guān)于S50卡密鑰A和密鑰B》。
第0扇區(qū)的第0塊用于保存序列號等相關(guān)數(shù)據(jù),是只讀的,不能寫入任何數(shù)據(jù)。如果我們按照順序定義塊,那么塊號就是從0到63。0到3塊
為第0扇區(qū),4到7塊為第1扇區(qū),依此類推,第60到63塊為第15扇區(qū)。其中第0塊是只讀的,第3塊,7塊....第63塊全部是密鑰塊,不能用來保存
數(shù)據(jù), 所以總的可以保存數(shù)據(jù)的塊為16*3-1=47塊,共47*16=752字節(jié)。
(轉(zhuǎn)載請注明出處: 友我科技網(wǎng)站 http://www.gdfkthg.cn)
最新版RFID讀寫器產(chǎn)品手冊下載
(轉(zhuǎn)載請注明出處: 友我科技網(wǎng)站 http://www.gdfkthg.cn)
最新版RFID讀寫器產(chǎn)品手冊下載