




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第2章 接觸式IC卡技術(shù)第2章 接觸式IC卡技術(shù)2.1 實(shí)訓(xùn)實(shí)訓(xùn)1:接觸式存儲(chǔ)器卡與邏輯加密卡的存儲(chǔ)結(jié)構(gòu):接觸式存儲(chǔ)器卡與邏輯加密卡的存儲(chǔ)結(jié)構(gòu)2.2 接觸式接觸式IC卡的基本物理特性卡的基本物理特性 2.3 接觸式接觸式IC卡的芯片技術(shù)卡的芯片技術(shù) 2.4 典型存儲(chǔ)器卡典型存儲(chǔ)器卡 2.5 實(shí)訓(xùn)實(shí)訓(xùn)2:接觸式存儲(chǔ)器卡的操作控制:接觸式存儲(chǔ)器卡的操作控制2.6 典型邏輯加密卡典型邏輯加密卡 2.7 實(shí)訓(xùn)實(shí)訓(xùn)3:接觸式邏輯加密卡的操作控制:接觸式邏輯加密卡的操作控制2.8 接觸式接觸式IC卡接口技術(shù)卡接口技術(shù) 思考題思考題 第2章 接觸式IC卡技術(shù)2.1 實(shí)訓(xùn)實(shí)訓(xùn)1:接觸式存儲(chǔ)器卡與邏輯加密卡的存
2、儲(chǔ)結(jié)構(gòu):接觸式存儲(chǔ)器卡與邏輯加密卡的存儲(chǔ)結(jié)構(gòu)1實(shí)訓(xùn)目的實(shí)訓(xùn)目的(1) 建立對(duì)接觸式IC卡的感性認(rèn)識(shí)。(2) 理解和掌握接觸式存儲(chǔ)器卡的訪問(wèn)方式和典型存儲(chǔ)結(jié)構(gòu)。(3) 理解和掌握接觸式邏輯加密卡的訪問(wèn)方式和典型存儲(chǔ)結(jié)構(gòu)。第2章 接觸式IC卡技術(shù) 2實(shí)訓(xùn)設(shè)備與器件實(shí)訓(xùn)設(shè)備與器件 (1) 實(shí)訓(xùn)設(shè)備:通用接觸式IC卡讀寫器,586電腦,通用接觸式IC卡讀寫器DEMO軟件(使用方法參見廠商提供的使用手冊(cè))。 (2) 實(shí)訓(xùn)器件:AT24C01卡、SLE4442卡、AT88SC1604卡(白卡,實(shí)驗(yàn)室準(zhǔn)備),IC卡電話卡(已發(fā)行,自備)。第2章 接觸式IC卡技術(shù) 3實(shí)訓(xùn)步驟與要求實(shí)訓(xùn)步驟與要求 1) 通用接
3、觸式IC卡讀寫器及DEMO軟件的安裝 (1) 按系統(tǒng)提示安裝通用接觸式IC卡讀寫器DEMO軟件。 (2) 按標(biāo)志連接通用接觸式IC卡讀寫器的電源線及串口線,注意電源 +5 V與地不可接反。 2) 使用DEMO軟件訪問(wèn)AT24C01卡 (1) 按使用手冊(cè)的說(shuō)明操作演示軟件,對(duì)通用接觸式IC卡讀寫器進(jìn)行建立連接操作。 (2) 將AT24C01卡插入讀寫器卡座,選擇卡型(自動(dòng)識(shí)別卡型或選擇AT24C01卡),進(jìn)入卡操作界面。 (3) 對(duì)AT24C01卡進(jìn)行讀/寫/擦除操作,記錄操作結(jié)果及操作條件。第2章 接觸式IC卡技術(shù) 3) 使用DEMO軟件訪問(wèn)自備的IC卡電話卡 (1) 將IC卡電話卡插入讀寫器
4、卡座,選擇自動(dòng)識(shí)別卡型,記錄卡型。 (2) 進(jìn)入卡操作界面對(duì)電話卡進(jìn)行讀/寫/擦除操作,在表2.1中記錄操作結(jié)果及操作條件。表表2.1 電話卡存儲(chǔ)結(jié)構(gòu)記錄表電話卡存儲(chǔ)結(jié)構(gòu)記錄表區(qū)域名 字段內(nèi)容 字節(jié)地址 字節(jié)數(shù) 讀/寫/擦除條件 第2章 接觸式IC卡技術(shù) 4) 使用DEMO軟件訪問(wèn)SLE4442卡 (1) 將SLE4442卡插入讀寫器卡座,選擇卡型,進(jìn)入卡操作界面。 (2) 對(duì)SLE4442卡進(jìn)行讀/寫/擦除操作,在表2.2中記錄操作結(jié)果及操作條件。表表2.2 SLE4442卡存儲(chǔ)結(jié)構(gòu)記錄表卡存儲(chǔ)結(jié)構(gòu)記錄表區(qū)域名 字段內(nèi)容 字節(jié)地址 字節(jié)數(shù) 讀/寫/擦除條件 第2章 接觸式IC卡技術(shù) 5) 使
5、用DEMO軟件訪問(wèn)AT88SC1604卡 (1) 將AT88SC1604卡插入讀寫器卡座,選擇卡型,進(jìn)入卡操作界面。 (2) 對(duì)AT88SC1604卡進(jìn)行讀/寫/擦除操作,在表2.3中記錄操作結(jié)果及操作條件。表表2.3 AT88SC1604卡存儲(chǔ)結(jié)構(gòu)記錄表卡存儲(chǔ)結(jié)構(gòu)記錄表區(qū)域名 字段內(nèi)容 字節(jié)地址 字節(jié)數(shù) 讀/寫/擦除條件 第2章 接觸式IC卡技術(shù) 4實(shí)訓(xùn)總結(jié)與分析實(shí)訓(xùn)總結(jié)與分析 (1) AT24C01卡的操作界面如圖2.1所示。 可以看到,AT24C01的存儲(chǔ)容量為1 Kb(128 B),存儲(chǔ)結(jié)構(gòu)為1288 b。可以按字節(jié)操作,所有字節(jié)的讀/寫/擦除均可任意進(jìn)行。這種卡被稱為存儲(chǔ)器卡。存儲(chǔ)器
6、卡的詳細(xì)內(nèi)容參見2.3節(jié)。第2章 接觸式IC卡技術(shù) (2) IC電話卡的操作界面如圖2.2所示。 DEMO軟件自動(dòng)識(shí)別該卡為SLE4406卡。可以看到,這種卡的存儲(chǔ)容量為104 b(13 B),其中僅后5個(gè)字節(jié)為用戶區(qū),可按位操作。用戶區(qū)可任意讀、任意寫(由1變?yōu)?稱為寫),但只能按字節(jié)借位擦除(由0變?yōu)?稱為擦除)。當(dāng)用戶區(qū)全為0時(shí),卡將作廢。SLE4406卡是一種按位操作的邏輯加密卡,它以一次性的計(jì)數(shù)方式操作,因此這種卡也稱為計(jì)數(shù)卡(Token Memory Card),其詳細(xì)介紹參見2.6.1節(jié)。第2章 接觸式IC卡技術(shù)圖2.1 AT24C01卡的操作界面 第2章 接觸式IC卡技術(shù)圖2.
7、2 IC電話卡的操作界面 第2章 接觸式IC卡技術(shù)(3) SLE4442卡的操作界面如圖2.3所示。圖2.3 SLE4442卡的操作界面 第2章 接觸式IC卡技術(shù) 通過(guò)操作我們發(fā)現(xiàn),SLE4442卡具有2 Kb(256 B)的存儲(chǔ)容量,它采用多存儲(chǔ)器結(jié)構(gòu),包括三個(gè)存儲(chǔ)器:2568 b的EEPROM型主存儲(chǔ)器,321 b的PROM型保護(hù)存儲(chǔ)器和48 b的EEPROM型加密存儲(chǔ)器。主存儲(chǔ)器可重復(fù)擦除使用,按字節(jié)操作,并分為保護(hù)數(shù)據(jù)區(qū)和應(yīng)用數(shù)據(jù)區(qū),讀出均不受限制,但保護(hù)數(shù)據(jù)區(qū)的擦除和寫入受保護(hù)存儲(chǔ)器熔絲狀態(tài)的保護(hù),而應(yīng)用數(shù)據(jù)區(qū)的擦除和寫入則受加密存儲(chǔ)器中的密碼及密碼計(jì)數(shù)器保護(hù)。SLE4442卡是一種
8、按字節(jié)操作的多存儲(chǔ)器邏輯加密卡。第2章 接觸式IC卡技術(shù) (4) AT88SC1604卡的操作界面如圖2.4所示。 通過(guò)操作我們發(fā)現(xiàn),AT88SC1604卡的存儲(chǔ)容量為16 384 b(2048 B)。它采用單存儲(chǔ)器多邏輯分區(qū)結(jié)構(gòu),主存儲(chǔ)器除劃分了特定的標(biāo)志數(shù)據(jù)區(qū)和控制數(shù)據(jù)區(qū)之外,還將應(yīng)用數(shù)據(jù)區(qū)分成四個(gè)完全隔離的子區(qū),并在每個(gè)子區(qū)中配備了各自的讀、寫控制標(biāo)志和寫入/擦除密碼以及密碼輸入錯(cuò)誤計(jì)數(shù)器等邏輯控制。AT88SC1604卡是一種按字節(jié)操作的大容量邏輯加密卡。第2章 接觸式IC卡技術(shù) 5思考思考 (1) 若要構(gòu)成一個(gè)接觸式IC卡門禁系統(tǒng),應(yīng)采用哪一種卡,為什么?與傳統(tǒng)的鎖加鑰匙的方式相比較
9、,由接觸式IC卡及其讀寫器構(gòu)成的接觸式IC卡門禁系統(tǒng)有何優(yōu)勝之處? (2) 分別說(shuō)明AT24C01A、SLE4442和AT88SC1604的安全性是由哪些環(huán)節(jié)保證的?第2章 接觸式IC卡技術(shù)圖2.4 AT88SC1604卡的操作界面 第2章 接觸式IC卡技術(shù)2.2 接觸式接觸式IC卡的基本物理特性卡的基本物理特性 所謂接觸式IC卡,就是在使用時(shí),通過(guò)有形的金屬電極觸點(diǎn)將卡的集成電路與外部接口設(shè)備直接接觸連接,提供集成電路工作的電源并進(jìn)行數(shù)據(jù)交換的IC卡。其特點(diǎn)是在卡的表面有符合ISO/IEC 7816標(biāo)準(zhǔn)的多個(gè)金屬觸點(diǎn)。第2章 接觸式IC卡技術(shù)2.2.1 接觸式接觸式IC卡的基本構(gòu)成卡的基本構(gòu)
10、成圖2.5 接觸式IC卡外形圖電極膜片塑料基片0.76 mm85.6 mm53.98 mm第2章 接觸式IC卡技術(shù)圖2.6 接觸式IC卡內(nèi)部結(jié)構(gòu)剖視圖0.76 mm塑 料 基 片半 導(dǎo) 體 芯 片芯 片 信 號(hào) 引 線電 極 膜 片封 口 膠芯 片 封 裝 樹 脂第2章 接觸式IC卡技術(shù) 在圖2.6中,其各組成部分說(shuō)明如下: (1) 半導(dǎo)體芯片:它是IC卡的核心部分。一般采用0.380.8 m的HCMOS或NMOS工藝制造的超大規(guī)模集成電路。在半導(dǎo)體芯片中包括存儲(chǔ)器、譯碼電路、接口驅(qū)動(dòng)電路、邏輯加密控制電路,甚至微處理器單元(CPU)等各種功能電路。其外形大小約為2 mm1 mm0.3 mm。
11、第2章 接觸式IC卡技術(shù) (2) 電極膜片:它是作為半導(dǎo)體芯片各輸入/輸出信號(hào)引腳與外部設(shè)備接觸連接的導(dǎo)電體,它實(shí)際是一種精密的印刷電路板(PCB)。其基底為一層絕緣材料,(一般為環(huán)氧樹脂玻璃或聚酰亞胺薄膜)。在基底的絕緣材料上沉積一層銅合金,并在其外端表面鍍金,以提高其導(dǎo)電性能和防氧化能力。電極膜片的外形大小約為:長(zhǎng)9.6213.65 mm,寬9.3211.56 mm。電極膜片的外形一般為矩形或橢圓形。這種形狀上的差異主要是為了改善卡片的抗扭曲方面的機(jī)械特性。電極膜片上共有多個(gè)芯片電極,每個(gè)電極的中心位置和最小面積是有規(guī)定的。但各電極表面分隔形狀沒有規(guī)定。第2章 接觸式IC卡技術(shù)圖2.7 接
12、觸式IC卡模塊C1M2.2第2章 接觸式IC卡技術(shù) (3) 塑料基片:它是半導(dǎo)體芯片和電極膜片的載體。根據(jù)各生產(chǎn)廠家制卡工藝設(shè)備的要求,一般采用PVC(聚氯乙烯)、PET和ABS塑料材料。目前在國(guó)內(nèi)所使用或封裝生產(chǎn)的IC卡,基片材料大都使用PVC材料。 但隨著制卡技術(shù)不斷發(fā)展和對(duì)工業(yè)環(huán)保的要求,PVC材料的使用將會(huì)逐漸受到一定的限制。因而目前國(guó)外的一些制卡廠商已逐漸將IC卡的基片材料轉(zhuǎn)向改用PET或ABS材料。塑料基片的大小,對(duì)于滿足國(guó)際標(biāo)準(zhǔn)識(shí)別卡的ID-1型的尺寸是85.6 mm(長(zhǎng))53.98 mm (寬)0.75 mm(厚)。應(yīng)該說(shuō)明,由半導(dǎo)體芯片和電極膜片封裝而成的IC卡模塊(Wire
13、 Boded Module,如圖2.7所示)就可以實(shí)現(xiàn)IC卡的基本功能。第2章 接觸式IC卡技術(shù)2.2.2 接觸式接觸式IC卡的觸點(diǎn)尺寸和位置卡的觸點(diǎn)尺寸和位置 符合國(guó)際標(biāo)準(zhǔn)的IC卡的物理特性主要由國(guó)際標(biāo)準(zhǔn)ISO 7810、ISO 7811-1/2/3/4、ISO 7812、ISO 7813和ISO/IEC 7816-1等定義。其主要特性指標(biāo)包括幾何尺寸、抗X射線能力、觸點(diǎn)與卡基表面的誤差、電阻(觸點(diǎn))、抗電磁干擾、抗磁場(chǎng)干擾、抗靜電能力、熱耗、抗彎曲特性以及抗扭曲特性等。上述物理特性及其檢測(cè)方法參見相關(guān)國(guó)際標(biāo)準(zhǔn)。 接觸式IC卡有8個(gè)觸點(diǎn),即集成電路引腳,從C1到C8,如圖2.8所示。國(guó)際標(biāo)準(zhǔn)
14、ISO/IEC 7816-2對(duì)接觸式集成電路卡的觸點(diǎn)尺寸和芯片位置以及功能作了具體的規(guī)定。第2章 接觸式IC卡技術(shù)圖2.8 接觸式IC卡的觸點(diǎn)位置C1C2C3C4C5C6C7C810.25max12.25min17.87max19.87min19.23max20.93min21.77max23.47min24.31max26.01min26.85max28.55min左邊沿塑料基片上邊沿第2章 接觸式IC卡技術(shù) IC卡的電極膜片(即8個(gè)觸點(diǎn))既可安排在塑料基片的正面,也可安排在反面。觸點(diǎn)之間的排列順序必須按圖2.8所示排列。各觸點(diǎn)在卡基平面的幾何尺寸、位置均以卡觸點(diǎn)的接觸面的左邊沿和上邊沿為基
15、準(zhǔn)邊。其觸點(diǎn)的尺寸及位置如圖2.8所示。 在ISO/IEC 7816-2中對(duì)每個(gè)觸點(diǎn)的幾何形狀和最大面積雖然沒有規(guī)定,但卻規(guī)定了每個(gè)觸點(diǎn)表面積的內(nèi)切矩形面積不得小于2 mm1.7 mm。 各觸點(diǎn)之間應(yīng)相互隔離。而相鄰兩個(gè)觸點(diǎn)之間的最大距離為0.84 mm。8個(gè)觸點(diǎn)所占最大面積沒有規(guī)定,但規(guī)定最小面積不小于9.62 mm(長(zhǎng))9.32 mm(寬)的矩形平面。第2章 接觸式IC卡技術(shù)表表2.4 接觸式接觸式IC卡的觸點(diǎn)功能卡的觸點(diǎn)功能觸點(diǎn)編號(hào) 功 能 觸點(diǎn)編號(hào) 功 能 C1 VCC(電源電壓) C5 GND(地) C2 RST(復(fù)位信號(hào)) C6 VPP(編程電壓) C3 CLK(時(shí)鐘) C7 I/
16、O(數(shù)據(jù)輸入/輸出端) C4 ISO/IEC JTC1/SC17 保留使用 C8 ISO/IEC JTC1/SC17 保留使用 第2章 接觸式IC卡技術(shù)2.3 接觸式接觸式IC卡的芯片技術(shù)卡的芯片技術(shù)2.3.1 存儲(chǔ)器卡存儲(chǔ)器卡 1存儲(chǔ)器卡的邏輯結(jié)構(gòu)存儲(chǔ)器卡的邏輯結(jié)構(gòu)圖2.9 存儲(chǔ)器卡的邏輯結(jié)構(gòu)圖串 行 鏈 接通 信 接 口無(wú) 芯 片 安 全 保 護(hù) 措 施 , 無(wú) 安全 控 制 邏 輯EEPROM存 儲(chǔ) 器觸 點(diǎn)第2章 接觸式IC卡技術(shù) 2存儲(chǔ)器卡的特點(diǎn)存儲(chǔ)器卡的特點(diǎn) (1) 卡內(nèi)嵌入的芯片多為通用EEPROM(或Flash Memory)。 (2) 無(wú)安全控制邏輯,可對(duì)片內(nèi)信息不受限制地任
17、意存取。 (3) 卡片制造中也很少采取安全保護(hù)措施。 (4) 不完全符合或支持ISO/IEC 7816國(guó)際協(xié)議,而多采用2線串行通信協(xié)議(I2C總線協(xié)議)或3線串行通信協(xié)議(SPI協(xié)議)。第2章 接觸式IC卡技術(shù) 3存儲(chǔ)器卡的主要應(yīng)用場(chǎng)合存儲(chǔ)器卡的主要應(yīng)用場(chǎng)合 存儲(chǔ)器卡功能簡(jiǎn)單,沒有(或很少有)安全保護(hù)邏輯,但價(jià)格低廉、開發(fā)使用簡(jiǎn)便、存儲(chǔ)容量增長(zhǎng)迅猛,因此多用于某些簡(jiǎn)單的、內(nèi)部信息無(wú)需保密或不允許加密(如急救卡)的場(chǎng)合。 4存儲(chǔ)器卡的代表產(chǎn)品存儲(chǔ)器卡的代表產(chǎn)品 存儲(chǔ)器卡的代表產(chǎn)品為美國(guó)Atmel公司的EEPROM 卡AT24系列2線串行芯片和AT93系列3線串行系列,F(xiàn)lash Memory卡
18、AT45D系列(28 Mb,SPI協(xié)議)。第2章 接觸式IC卡技術(shù)表表2.5 EEPROM存儲(chǔ)器卡芯片存儲(chǔ)器卡芯片AT24C系列 01A 02 04 08 16 32 64 128 256 容量/Kb 1 2 4 8 16 32 64 128 256 內(nèi)存組織形式 1288 2568 5128 10248 2568 20488 81928 16 3848 327868 頁(yè)面寫入方式/B 8 8 16 16 16 32 32 64 64 通信協(xié)議 ISO/IEC 7816-3同步協(xié)議,雙線串行接口 工作頻率 1 MHz(5 V),1 MHz(2.7 V),400 kHz(1.8 V) 工作電壓
19、5 V,最低可至 1.8 V ICC電流 讀:1 mA,寫:3 mA 工作溫度 070 寫/擦除次數(shù) 大于 1 000 000次 數(shù)據(jù)保護(hù) 100年 應(yīng)用領(lǐng)域 數(shù)據(jù)存儲(chǔ) 第2章 接觸式IC卡技術(shù)2.3.2 邏輯加密卡邏輯加密卡1邏輯加密卡的邏輯結(jié)構(gòu)邏輯加密卡的邏輯結(jié)構(gòu)圖2.10 邏輯加密卡的邏輯結(jié)構(gòu)圖具有芯片安全保護(hù)措施觸點(diǎn) PROM ROM EEPROM等 存儲(chǔ)器安全及控制邏輯通信接口第2章 接觸式IC卡技術(shù) 2邏輯加密卡的特點(diǎn)邏輯加密卡的特點(diǎn) (1) 具有安全控制邏輯,安全性能較好。 (2) 同時(shí)采用ROM、PROM、EEPROM等存儲(chǔ)技術(shù)。 (3) 從芯片制造到交貨,均采取較好的安全保護(hù)
20、措施,如運(yùn)輸密碼TC(Transport Code)的取用。 (4) 支持ISO/IEC 7816國(guó)際標(biāo)準(zhǔn)。 (5) 一般均為專門為IC卡設(shè)計(jì)的芯片。 (6) 為提高安全性,邏輯加密卡的存儲(chǔ)空間被分為多個(gè)不同的功能區(qū),典型的存儲(chǔ)結(jié)構(gòu)如表2.6所示。 第2章 接觸式IC卡技術(shù)表2.6 邏輯加密卡的存儲(chǔ)結(jié)構(gòu)區(qū)域名 地址(字節(jié)) 位數(shù) 說(shuō) 明 制造區(qū) 01 16 芯片制造商代碼(一旦寫入,不可更改,用于識(shí)別卡的來(lái)源) 發(fā)行區(qū) 25 32 卡制造商、發(fā)行商代碼 密碼區(qū) 68 24 持卡人密碼(PIN,由發(fā)行商在卡個(gè)人化時(shí)預(yù)寫入,用卡時(shí)將之與持卡人輸入的密碼相比較, 相符才允許對(duì)應(yīng)用區(qū)進(jìn)行讀寫和修改該密
21、碼) 密碼計(jì)數(shù)區(qū) 9 8 允許連續(xù)輸入錯(cuò)誤密碼的次數(shù)(34 次),若達(dá)到則卡自鎖,以防止對(duì) PIN 的非法試探 個(gè)人區(qū) 1013 32 持卡人個(gè)人信息,可自由讀寫 應(yīng)用區(qū) 1477 512 應(yīng)用數(shù)據(jù) 擦除密碼區(qū) 7880 24 擦除密碼,僅供發(fā)行商使用,與發(fā)行商輸入密碼比較,相等即可對(duì)整個(gè)應(yīng)用區(qū)置 1(擦除),以實(shí)現(xiàn)卡的重復(fù)使用 擦除計(jì)數(shù)區(qū) 8188 64 擦除次數(shù),該區(qū)每一個(gè) 1 表示可進(jìn)行 1 次擦除操作,每輸入 1次擦除密碼(無(wú)論對(duì)錯(cuò))就將 1 個(gè) 1 置 0,該區(qū)全為 0 時(shí),卡片使用壽命結(jié)束。該區(qū)本身的擦除只能在發(fā)行前進(jìn)行,一旦發(fā)行,只能置 0 和讀出 第2章 接觸式IC卡技術(shù) 3邏
22、輯加密卡的應(yīng)用場(chǎng)合與代表產(chǎn)品邏輯加密卡的應(yīng)用場(chǎng)合與代表產(chǎn)品 由于具有一定的保密功能,且價(jià)格較CPU卡低,因此在需要保密但對(duì)安全性要求不是太高的場(chǎng)合,邏輯加密卡得以大量應(yīng)用,如電話卡、網(wǎng)吧上網(wǎng)卡、停車卡等小額消費(fèi)場(chǎng)合,已成為目前IC卡在非金融領(lǐng)域的最主要的應(yīng)用形式。 (1) 安全數(shù)據(jù)存儲(chǔ)、傳輸和處理:面向字節(jié)操作的邏輯加密卡,如Atmel的AT88SC200、Philips的PC2032/2042、Siemens的SLE4418/4428/4432/4442等,應(yīng)用于保險(xiǎn)卡、加油卡、駕駛卡、借書卡等。第2章 接觸式IC卡技術(shù) (2) 相關(guān)數(shù)據(jù)記錄、存儲(chǔ)、處理,包括: 一次性使用的不可重置式,如S
23、iemens的SLE4406/4436、Atmel的AT88SC06、Gemplus的GPM276/103。 可重置式,如Siemens的SLE4404(64次)、Atmel的AT88SC101/102(128次),應(yīng)用于IC卡電話、小額電子錢包。 第2章 接觸式IC卡技術(shù)表表2.7 Siemens系列邏輯加密卡芯片的特性參數(shù)系列邏輯加密卡芯片的特性參數(shù) SLE4406 SLE446x SLE4442 SLE4418 產(chǎn)品描述 帶保密邏輯的88B EEPROM計(jì)數(shù)卡 帶保密邏輯和高級(jí) 保 密 認(rèn) 證 的498B EEPROM 計(jì)數(shù)卡 帶寫保護(hù)功能和 保 密 邏 輯 的256B EEPROM計(jì)數(shù)
24、卡 帶寫保護(hù)功能的 1 KB EEPROM計(jì)數(shù)卡 ROM 16 B 16 B PROM 56 B 185 B 32 B 1024 B EEPROM 32 B 36 B 256 B 1024 B 保密特性 傳輸代碼; 保密邏輯; 芯片代碼一經(jīng)寫入不可更改 密碼保護(hù); 傳輸代碼; 高級(jí)保密認(rèn)證; 芯片代碼一經(jīng)寫入不可更改; CBC 校驗(yàn); 響應(yīng)計(jì)數(shù)器; 計(jì)數(shù)器數(shù)值驗(yàn)證 密碼保護(hù); 傳輸代碼; 字節(jié)保護(hù); 芯片代碼一經(jīng)寫入不可更改 字節(jié)保護(hù); 芯片代碼一經(jīng)寫入不可更改 最小寫/擦除時(shí)間/ms 5 3 5 5 工作電壓/V 5 5 5 5 最大供電電流/mA 3 10 10 10 寫/擦除次數(shù)/次 1
25、00 000 100 000 100 000 100 000 數(shù)據(jù)保持/年 10 10 10 10 注釋 20 000 個(gè)計(jì)數(shù)單位 120 000 個(gè)計(jì)數(shù)單位 典型應(yīng)用 預(yù)付費(fèi)電話卡 電子錢包 健康保險(xiǎn)卡; 訪問(wèn)控制; 電子票據(jù); 忠誠(chéng)卡 健康保險(xiǎn)卡; 訪問(wèn)控制; 會(huì)員卡 第2章 接觸式IC卡技術(shù)2.3.3 CPU卡卡 1CPU卡的邏輯結(jié)構(gòu)卡的邏輯結(jié)構(gòu) CPU卡的硬件構(gòu)成包括CPU、存儲(chǔ)器(含RAM、ROM、EEPROM等)、卡與讀寫終端通信的I/O接口及加密運(yùn)算協(xié)處理器CAU,其中: (1) CPU一般均為兼容于位字長(zhǎng)單片機(jī)(如MC68HC05、Intel8051等)的微處理器。它將在COS
26、(Chip Operation System,片內(nèi)操作系統(tǒng))控制下,實(shí)現(xiàn)卡與外界的信息傳輸、加密、解密和判別處理等。 (2) ROM用于存放COS,316 KB。 (3) RAM用于存放中間處理結(jié)果及作為卡與讀寫器間信息交換的中間緩存器,128 B1 KB。第2章 接觸式IC卡技術(shù) (4) EEPROM則是真正可供用戶訪問(wèn)的存儲(chǔ)區(qū),用于保存卡的各種信息、密碼、密鑰、應(yīng)用文件等,116 KB。 (5) CPU卡通常采用DES、RSA等加密、解密算法提高系統(tǒng)的安全度,采用RSA等算法時(shí)要進(jìn)行對(duì)運(yùn)算速度要求較高的大指數(shù)模運(yùn)算,8位的CPU將難以勝任,因此多設(shè)有專用加密、解密運(yùn)算協(xié)處理器CAU。 例如
27、Siemens的SLE44C20,內(nèi)含8位字長(zhǎng)的CPU、15 KB的ROM、32 B的PROM、2 KB的EEPROM和256 B的RAM。第2章 接觸式IC卡技術(shù) 2CPU卡的特點(diǎn)卡的特點(diǎn) (1) 片內(nèi)帶有CPU、各種存儲(chǔ)器ROM、RAM以及專用加密、解密運(yùn)算協(xié)處理器CAU,具有很高的數(shù)據(jù)處理和計(jì)算能力以及較大存儲(chǔ)容量,因此應(yīng)用的靈活性、適應(yīng)性較強(qiáng)。 (2) 在硬件結(jié)構(gòu)、操作系統(tǒng)、制作工藝上采取多層次安全措施,保證了其極強(qiáng)的安全防偽能力。它不僅可驗(yàn)證卡和持卡人的合性法,而且可鑒別讀寫終端,即進(jìn)行雙向認(rèn)證。第2章 接觸式IC卡技術(shù) 3CPU卡的主要應(yīng)用場(chǎng)合與典型產(chǎn)品卡的主要應(yīng)用場(chǎng)合與典型產(chǎn)品
28、目前CPU卡多用于一卡多用(一卡通)及對(duì)數(shù)據(jù)安全保密性特別敏感的場(chǎng)合,如金融信用卡、手機(jī)SIM卡等。 CPU卡的詳細(xì)內(nèi)容參見第4章。本章將以存儲(chǔ)器卡和邏輯加密卡為基礎(chǔ)介紹接觸式IC卡的芯片及接口技術(shù)。第2章 接觸式IC卡技術(shù)2.4 典型存儲(chǔ)器卡典型存儲(chǔ)器卡2.4.1 AT24Cxx系列存儲(chǔ)器卡芯片總體描述系列存儲(chǔ)器卡芯片總體描述 1芯片特點(diǎn)芯片特點(diǎn) (1) 低電壓/標(biāo)準(zhǔn)電壓操作:1.85 V。 (2) 內(nèi)部組成:1288(AT24C01),2568(AT24C02),5128(AT24C04),10248(AT24C08),20488(AT24C16)的串行EEPROM。 (3) 2線串行接口
29、。 (4) 雙向數(shù)據(jù)傳輸協(xié)議。第2章 接觸式IC卡技術(shù) (5) 支持ISO/IEC 7816-10同步協(xié)議。 (6) 8 B頁(yè)面(AT24C01/02),16 B頁(yè)面(AT24C04/08/16)寫入方式。 (7) 自定時(shí)寫入周期(最大10 ms)。 (8) 高可靠性:使用壽命為100 000次寫/擦除,數(shù)據(jù)保留期為100年。 (9) 多種封裝形式:提供芯片、模塊及標(biāo)準(zhǔn)封裝形式。 第2章 接觸式IC卡技術(shù)2芯片封裝及引腳功能芯片封裝及引腳功能1) 封裝圖2.11 AT24Cxx觸點(diǎn)分配圖C1VCCC2NCC3SCLC4NCC5C6C7C8GNDNCSDANC第2章 接觸式IC卡技術(shù)卡觸點(diǎn) 引腳
30、名 功 能 C1 VCC 工作電壓 C2 NC 未連接 C3 SCL 串行時(shí)鐘(輸入) C4 NC 未連接 C5 GND 地線 C6 NC 未連接 C7 SDA 串行數(shù)據(jù)(輸入/輸出) C8 NC 未連接 表表2.9 IC卡觸點(diǎn)功能表卡觸點(diǎn)功能表 第2章 接觸式IC卡技術(shù) 2) 引腳功能說(shuō)明 SCL:串行時(shí)鐘輸入(Serial Clock Input)。串行時(shí)鐘上升沿時(shí),數(shù)據(jù)輸入芯片(寫入);串行時(shí)鐘下降沿時(shí),數(shù)據(jù)從芯片輸出(讀出)。 SDA:串行數(shù)據(jù)(Serial DAta),雙向串行傳送數(shù)據(jù)。該端為漏極開路驅(qū)動(dòng),可與任意數(shù)量的其他漏極開路或集電極開路器件“線或”。 A2、A1、A0:器件/
31、頁(yè)面地址(DevicPage Addresses)。器件地址輸入端,應(yīng)用于標(biāo)準(zhǔn)封裝中,在IC卡模塊封裝中不將A2、A1、A0引出到觸點(diǎn)上,詳細(xì)使用見“器件尋址”。第2章 接觸式IC卡技術(shù)3邏輯結(jié)構(gòu)與存儲(chǔ)器組織邏輯結(jié)構(gòu)與存儲(chǔ)器組織圖2.12 AT24Cxx的邏輯結(jié)構(gòu)數(shù)據(jù)輸出 /確認(rèn)邏輯串行多路開關(guān)EEPROMX譯碼數(shù)據(jù)寄存器升壓 / 定時(shí)串行控制邏輯數(shù)據(jù)字地址 / 計(jì)數(shù)器INCY譯碼LOADCOMPR / W設(shè)備地址比較器LOAD開始 / 停止邏輯DINDOUTWPSCLSDAA2A1A0GNDVCCEN第2章 接觸式IC卡技術(shù)2.4.2 器件操作器件操作1時(shí)鐘和數(shù)據(jù)轉(zhuǎn)換時(shí)鐘和數(shù)據(jù)轉(zhuǎn)換圖2.13
32、 AT24Cxx數(shù)據(jù)的有效性時(shí)序圖SDASCL數(shù)據(jù)變化數(shù)據(jù)穩(wěn)定數(shù)據(jù)穩(wěn)定第2章 接觸式IC卡技術(shù) 1) 輸出數(shù)據(jù) 當(dāng)數(shù)據(jù)(包括地址、數(shù)據(jù))由接口設(shè)備送往AT24Cxx時(shí),稱為輸出數(shù)據(jù)(寫數(shù)據(jù))。數(shù)據(jù)總是按字節(jié)(8位)逐位串行輸出,每個(gè)時(shí)鐘脈沖輸出一位。SDA總線上的數(shù)據(jù)應(yīng)在SCL低電平期間改變(輸出),在SCL高電平期間穩(wěn)定。 基于MCS-51單片機(jī)的接口設(shè)備可利用如下串行輸出字節(jié)子程序SHOUT來(lái)實(shí)現(xiàn)輸出(寫)一個(gè)字節(jié)數(shù)據(jù)的操作。第2章 接觸式IC卡技術(shù) SHOUT: ;串行輸出一個(gè)字節(jié)到AT24Cxx,高位在前。調(diào)用前,SCL、SDA為低。返回時(shí),SCL為低。調(diào)用時(shí)數(shù)據(jù)置入A中。返回CY為1
33、表明應(yīng)答失敗。占用A累加器PUSH BMOVB,#8;設(shè)置位計(jì)數(shù)器L1:RLCA;移一位到CY中MOVSDA,C;輸出位NOP ;保持SCL為低且使數(shù)據(jù)穩(wěn)定SETBSCL;升高時(shí)鐘ACALLDELAY_4 s;保持SCL為高第2章 接觸式IC卡技術(shù)CLRSCL;降低時(shí)鐘DJNZB, L1;傳送下一位SETBSDA;釋放SDA等待應(yīng)答NOP;保持SCL為低,保持時(shí)間tAANOPSETBSCL;升高ACK時(shí)鐘脈沖ACALLDELAY_4 s;保持SCL為高M(jìn)OVC, SDA;讀入ACK位CLRSCL;降低ACK時(shí)鐘脈沖POPBRET第2章 接觸式IC卡技術(shù) 2) 輸入數(shù)據(jù) 當(dāng)接口設(shè)備從AT24Cx
34、x的數(shù)據(jù)線上讀取數(shù)據(jù)時(shí),稱為輸入數(shù)據(jù)(讀數(shù)據(jù))。數(shù)據(jù)總是按字節(jié)(8位)逐位串行輸入,每個(gè)時(shí)鐘脈沖輸入一位。AT24Cxx的EEPROM在SCL低電平期間將數(shù)據(jù)送往SDA總線,在SCL高電平期間,SDA總線上的數(shù)據(jù)穩(wěn)定,可供接口設(shè)備讀取。 基于MCS-51單片機(jī)的接口設(shè)備可利用如下串行輸入字節(jié)子程序SHIN來(lái)實(shí)現(xiàn)輸入(讀)一個(gè)字節(jié)數(shù)據(jù)的操作。第2章 接觸式IC卡技術(shù) SHIN: ;從AT24Cxx串行輸入一個(gè)字節(jié),高位在前。調(diào)用前,SCL為低。返回時(shí),SCL為低。返回時(shí)接收到的數(shù)據(jù)置于A中SETBSDA ;使SDA為高,準(zhǔn)備讀PUSHBMOVB,#8 ;設(shè)置位計(jì)數(shù)器L2:NOP ;保持SCL為低
35、且使數(shù)據(jù)穩(wěn)定NOPSETBSCL ;升高時(shí)鐘第2章 接觸式IC卡技術(shù)NOP;保持SCL為高NOPMOVC, SDA;輸入位RLCA;將位移入ACLRSCL;降低時(shí)鐘DJNZB, L2;傳送下一位POPBRET第2章 接觸式IC卡技術(shù) 2開始狀態(tài)開始狀態(tài)(START) SCL處于高電平時(shí),SDA從高電平轉(zhuǎn)向低電平表示一個(gè)“開始”狀態(tài),該狀態(tài)表示一種操作的開始,因此必須在任何其他命令之前執(zhí)行。AT24Cxx開始/停止定義時(shí)序圖見圖2.14。圖2.14 AT24Cxx開始/停止定義時(shí)序圖SDASCL開始停止第2章 接觸式IC卡技術(shù) 基于MCS-51單片機(jī)的接口設(shè)備可利用如下開始子程序START來(lái)實(shí)現(xiàn)
36、一個(gè)開始操作。 START: ;發(fā)送START狀態(tài),定義當(dāng)SCL為高時(shí),SDA從高到低。返回時(shí),SCL、SDA為低。當(dāng)總線無(wú)效時(shí),返回CY位為高SETB SDA;升高SDASETB SCL;校驗(yàn)總線有效JNBSDA, ERROR1;若SDA不為高則跳轉(zhuǎn)到ERROR1JNBSCL, BACK1 ;若SDA不為高則跳轉(zhuǎn)到BACK1NOP;保持?jǐn)?shù)據(jù)建立延遲及周期延遲第2章 接觸式IC卡技術(shù)CLRSDA;降低SDAACALLDELAY_4 s;保持SDA為低,保持時(shí)間hold delayCLRSCL;降低SDLCLRC;清零錯(cuò)誤標(biāo)志AJMPBACK1ERROR1: SETBC;置位錯(cuò)誤標(biāo)志BACK1:
37、RET第2章 接觸式IC卡技術(shù) 3停止?fàn)顟B(tài)停止?fàn)顟B(tài)(STOP) SCL處于高電平時(shí),SDA由低電平轉(zhuǎn)向高電平表示一個(gè)“停止”狀態(tài)。該狀態(tài)表示一種操作的結(jié)束并將終止所有通信。在一個(gè)讀序列之后,停止命令置EEPROM于待機(jī)模式。其停止定義時(shí)序圖見圖2.14。 基于MCS-51單片機(jī)的接口設(shè)備可利用如下停止子程序STOP來(lái)實(shí)現(xiàn)一個(gè)停止操作。第2章 接觸式IC卡技術(shù) STOP: ;發(fā)送STOP狀態(tài),定義當(dāng)SCL為高時(shí),SDA從低變高。調(diào)用前,SCL為低。返回時(shí),SCL、SDA為高CLRSDANOP;保持SCL為低及數(shù)據(jù)穩(wěn)定NOPSETBSCLACALLDELAY_4 s;保持建立延遲SETBSDARE
38、T第2章 接觸式IC卡技術(shù) 4確認(rèn)應(yīng)答確認(rèn)應(yīng)答(ACK) 所有地址和數(shù)據(jù)字以位碼串行輸入/輸出EEPROM,EEPROM在收到每個(gè)地址或數(shù)據(jù)碼之后,置SDA于低電平作為確認(rèn)應(yīng)答,該確認(rèn)應(yīng)答發(fā)生于第9個(gè)時(shí)鐘周期,見圖2.15。圖2.15 AT24Cxx確認(rèn)應(yīng)答時(shí)序圖189SCL數(shù)據(jù)輸入數(shù)據(jù)輸出應(yīng)答開始第2章 接觸式IC卡技術(shù) 在串行輸出字節(jié)子程序SHOUT中我們可以清楚地看到,當(dāng)接口設(shè)備向卡發(fā)送完8位數(shù)據(jù)后,程序?qū)a(chǎn)生第9個(gè)時(shí)鐘脈沖并將SDA線讀入CY位,此時(shí)CY位的狀態(tài)即為卡響應(yīng)狀態(tài)。當(dāng)CY=1時(shí)表示卡尚未接收到數(shù)據(jù),不能進(jìn)行下一步的操作;當(dāng)CY=0時(shí)表示卡已接收到數(shù)據(jù),可以進(jìn)行下一步的操作。
39、第2章 接觸式IC卡技術(shù) 5待機(jī)模式待機(jī)模式 AT24Cxx的特性之一是具備待機(jī)模式,這一模式當(dāng)電源掉電;接收到STOP位或完成任何一個(gè)內(nèi)部處理之后有效。 6存儲(chǔ)器復(fù)位存儲(chǔ)器復(fù)位 當(dāng)電源掉電、系統(tǒng)復(fù)位或協(xié)議中斷時(shí),任何一個(gè)2線的部分都可通過(guò)以下步驟復(fù)位:(1) 9個(gè)時(shí)鐘周期之后;(2) 在每個(gè)時(shí)鐘周期當(dāng)SCL為高時(shí)等待SDA為高;(3) 產(chǎn)生一個(gè)START狀態(tài)。第2章 接觸式IC卡技術(shù)2.4.3 器件尋址器件尋址 以上AT24系列EEPROM在緊接著開始狀態(tài)后均需一個(gè)8位器件地址(Device Address),如圖2.16所示,以使器件能夠進(jìn)行讀/寫操作。 器件地址高4位為1010,這對(duì)所有
40、器件都是相同的。 在標(biāo)準(zhǔn)封裝中,接下來(lái)的3位器件尋址碼將因芯片容量的不同而有不同的定義: 對(duì)于AT24C01/02來(lái)說(shuō),下面3位器件尋址碼是A2、A1、A0,這3位必須與它們相應(yīng)的硬件連線輸入引腳相對(duì)應(yīng)。第2章 接觸式IC卡技術(shù)圖2.16 AT24Cxx器件地址1010P2P1P0W/R1010A2P1P0W/R1010A2A1P0W/R1010A2A1A0W/RAT24C01/02MSBLSBAT24C04AT24C08AT24C016第2章 接觸式IC卡技術(shù) 對(duì)于AT24C04來(lái)說(shuō),僅用A2和A1器件尋址位,第3位是存儲(chǔ)器頁(yè)面尋址位。2個(gè)器件尋址位必須與硬件連線輸入引腳相對(duì)應(yīng),A0引腳不連
41、接。 對(duì)于AT24C08來(lái)說(shuō),僅用A2器件尋址位,下面2位是存儲(chǔ)器頁(yè)面尋址。A2必須與硬件連線輸入引腳相對(duì)應(yīng),A1和A0引腳不連接。 對(duì)于AT24C16來(lái)說(shuō),無(wú)器件尋址位。這3位均用于存儲(chǔ)器頁(yè)面尋址,A0、A1、A2不連接。第2章 接觸式IC卡技術(shù) AT24C04/08/16的頁(yè)面尋址位應(yīng)被視為隨后數(shù)據(jù)碼尋址的最高位。 IC卡上使用的EEPROM芯片,因受尺寸限制,一般只能使用一個(gè)芯片,同時(shí)應(yīng)符合國(guó)際標(biāo)準(zhǔn),因此A2、A1、A0未引出到觸點(diǎn)上,A2A1A0=000。 器件尋址的第8位是讀/寫操作選擇位,該位為高電平時(shí)啟動(dòng)讀操作,處于低電平時(shí)啟動(dòng)寫操作。 設(shè)備尋址一經(jīng)成功,EEPROM將在SDA總
42、線上輸出一個(gè)確認(rèn)應(yīng)答ACK;相反,則芯片回到待機(jī)狀態(tài)。第2章 接觸式IC卡技術(shù)2.4.4 寫操作寫操作 1寫字節(jié)寫字節(jié)(BYTE WRITE) 寫字節(jié)時(shí)序見圖2.17。寫字節(jié)時(shí)序要求在給出“開始”狀態(tài)、器件地址碼和收到卡的確認(rèn)應(yīng)答ACK后,緊跟著給出一個(gè)8位地址碼(32 KB芯片是2個(gè)8位地址碼)。卡收到地址碼后發(fā)出確認(rèn)應(yīng)答ACK。然后送要寫的8位數(shù)據(jù)到SDA線上,并進(jìn)入EEPROM單元,每個(gè)時(shí)鐘節(jié)拍送入1位。EEPROM單元收到數(shù)據(jù)后,通過(guò)SDA線發(fā)出確認(rèn)應(yīng)答ACK。數(shù)據(jù)傳送設(shè)備必須用“停止”狀態(tài)來(lái)結(jié)束寫操作。這時(shí)EEPROM進(jìn)入內(nèi)部定時(shí)的寫周期,如圖2.18中的tWR,在寫周期期間,將數(shù)據(jù)
43、寫入非易失性存儲(chǔ)器,并禁止所有其他操作直到寫完成。第2章 接觸式IC卡技術(shù)圖2.17 AT24Cxx寫字節(jié)時(shí)序圖開始MSB器件地址寫字節(jié)地址數(shù)據(jù)停止*R/WLSBACKMSBLSBACKACK(*: 對(duì)AT24C01無(wú)意義)第2章 接觸式IC卡技術(shù)圖2.18 AT24Cxx寫周期時(shí)序圖字n第8位停止?fàn)顟B(tài)tWR開始狀態(tài)ACKSCLSDA(*:對(duì)AT24C01無(wú)意義)注:寫周期時(shí)間是指從寫時(shí)序的有效停止?fàn)顟B(tài)到內(nèi)部寫循環(huán)結(jié)束的時(shí)間第2章 接觸式IC卡技術(shù) 基于MCS-51單片機(jī)的接口設(shè)備可利用如下寫字節(jié)子程序WRITE_BYTE來(lái)實(shí)現(xiàn)寫字節(jié)操作。 WRITE_BYTE: ;AT24Cxx寫字節(jié)功能。
44、調(diào)用前可編程的器件地址programmable address置于A中,字節(jié)地址置于寄存器ADDR_HI和ADDR_LO中,數(shù)據(jù)置于寄存器XDATA中。未等待寫周期完成。返回CY為1表明總線無(wú)效或該器件無(wú)應(yīng)答。占用A累加器ACALLSTARTJCBACK2;若總線無(wú)效則中斷RLA;可編程地址左移一位ORLA, #FADDR;加入固定器件地址CLRACC.0;設(shè)置寫,建立器件地址第2章 接觸式IC卡技術(shù)ACALLSHOUT;發(fā)送器件地址JCERROR2;若無(wú)應(yīng)答則中斷MOVA, ADDR_HI;發(fā)送字節(jié)地址的高8位ACALLSHOUTJCERROR2;若無(wú)應(yīng)答則中斷MOVA, ADDR_LO;發(fā)
45、送字節(jié)地址的低8位ACALLSHOUTJCERROR2;若無(wú)應(yīng)答則中斷MOVA, ADATA;取數(shù)據(jù)ACALLSHOUT;發(fā)送數(shù)據(jù)JCERROR2;若無(wú)應(yīng)答則中斷CLRC;清零錯(cuò)誤標(biāo)志ERROR2:ACALLSTOPBACK2: RET第2章 接觸式IC卡技術(shù) 2寫頁(yè)面寫頁(yè)面(PAGE WRITE) AT24C01/02可以進(jìn)行8 B頁(yè)面寫入,AT24C04/08/16可以進(jìn)行16 B頁(yè)面寫入。啟動(dòng)寫頁(yè)面與啟動(dòng)寫字節(jié)操作一樣,但數(shù)據(jù)傳送設(shè)備無(wú)需在第一個(gè)字節(jié)隨時(shí)鐘輸入后發(fā)出一個(gè)停止?fàn)顟B(tài);在EEPROM確認(rèn)收到第一個(gè)數(shù)據(jù)碼之后,數(shù)據(jù)傳送設(shè)備再傳送7個(gè)(對(duì)于AT24C01/02)或15個(gè)(對(duì)于AT2
46、4C04/08/16)數(shù)據(jù)碼;每收到一個(gè)數(shù)據(jù),EEPROM都將通過(guò)SDA回送一個(gè)確認(rèn)應(yīng)答信號(hào),最后數(shù)據(jù)傳送設(shè)備通過(guò)“停止”狀態(tài)終止寫頁(yè)面操作,其過(guò)程見圖2.19。第2章 接觸式IC卡技術(shù)圖2.19 寫頁(yè)面時(shí)序圖開始*器件地址寫SDA字節(jié)地址(n)數(shù)據(jù)(n)數(shù)據(jù)(n1)數(shù)據(jù)(nx)停止( 對(duì)AT24C01無(wú)意義)*MSBR/WLSBACKACKACKACKACK:第2章 接觸式IC卡技術(shù) 數(shù)據(jù)地址的低3位(對(duì)于AT24C01/02)或4位(對(duì)于AT24C04/08/16)在收到每個(gè)數(shù)據(jù)字后,在芯片內(nèi)部自動(dòng)加1。數(shù)據(jù)字地址的高位字節(jié)保持不變,以保持存儲(chǔ)器頁(yè)地址不變。如果傳送到EEPROM中的數(shù)據(jù)字
47、超過(guò)8(對(duì)于AT24C01/02)或16(對(duì)于AT24C04/08/16),數(shù)據(jù)字地址將“滾動(dòng)覆蓋”,以前寫入的數(shù)據(jù)將被覆蓋。 基于MCS-51單片機(jī)的接口設(shè)備可利用如下寫塊子程序WRITE_BLOCK來(lái)實(shí)現(xiàn)寫頁(yè)面操作。第2章 接觸式IC卡技術(shù) WRITE_BLOCK: ;向AT24Cxx寫入一頁(yè)數(shù)據(jù)。調(diào)用時(shí)器件地址的可編程地址置于A中,第一個(gè)字節(jié)地址置于寄存器ADDR_HI和ADDR_LO中,數(shù)據(jù)置于BUFFER中,字節(jié)計(jì)數(shù)器置于寄存器COUNT中。未等待寫周期完成。返回時(shí)CY位為1表明總線無(wú)效或器件無(wú)應(yīng)答。占用A,COUNT,INDEX(注:INDEX為數(shù)據(jù)緩沖區(qū)指針,可使用工作寄存器R0
48、)ACALLSTARTJCBACK3;總線無(wú)效則中斷RLAORLA, #FADDR;生成器件地址第2章 接觸式IC卡技術(shù)CLRACC.0;定義寫操作ACALLSHOUT;發(fā)送器件地址JCERROR3;無(wú)應(yīng)答則中斷MOVA, ADDR_HI ;發(fā)送字節(jié)地址高8位ACALLSHOUTJCERROR3;無(wú)應(yīng)答則中斷MOVA, ADDR_LO;發(fā)送字節(jié)地址低8位ACALLSHOUTJCERROR3;無(wú)應(yīng)答則中斷MOVINDEX, #BUFFER;指向數(shù)據(jù)緩沖區(qū)首地址第2章 接觸式IC卡技術(shù)L3: MOVA, INDEX ;取數(shù)據(jù) ACALLSHOUT;發(fā)送數(shù)據(jù) JCERROR3;無(wú)應(yīng)答則中斷 INCI
49、NDEX;地址指針加1 DJNZCOUNT, L3;下一個(gè)字節(jié) CLRC;清零錯(cuò)誤標(biāo)志ERROR3: ACALLSTOPBZCK3: RET第2章 接觸式IC卡技術(shù) 3確認(rèn)查詢確認(rèn)查詢(ACKNOWLEDGE POLLING) 一旦內(nèi)定時(shí)寫循環(huán)開始且禁止EEPROM輸入,確認(rèn)查詢將被啟動(dòng)。當(dāng)數(shù)據(jù)傳送設(shè)備在送出一個(gè)“開始”狀態(tài)以及緊隨其后的器件地址碼(讀/寫位代表所要進(jìn)行的操作)時(shí),只有在內(nèi)定時(shí)寫循環(huán)完成時(shí),EEPROM才通過(guò)拉低SDA總線發(fā)出“確認(rèn)”應(yīng)答,允許讀或?qū)戇^(guò)程繼續(xù)進(jìn)行。AT24Cxx系列存儲(chǔ)器芯片的內(nèi)定時(shí)寫周期(tWR)最大為10 ms,因此,每完成一個(gè)寫操作,應(yīng)延時(shí)約10 ms或查
50、詢SDA總線重新為低時(shí)才能發(fā)出下一個(gè)操作的開始命令,否則下一次操作命令將不被器件接收、執(zhí)行。第2章 接觸式IC卡技術(shù)2.4.5 讀操作讀操作 1現(xiàn)行地址讀現(xiàn)行地址讀(CURRENT ADDRESS READ) 內(nèi)部數(shù)據(jù)字地址指針總是保持最后一次讀/寫操作中最后訪問(wèn)的地址,并按“1”遞增。只要芯片保持上電,該地址在兩次操作之間一直保持有效。如果最后一個(gè)操作是在地址n處讀取,則現(xiàn)行地址是n+1;如果最后一個(gè)操作是在地址n處寫入,則當(dāng)前地址也是n+1。在出現(xiàn)“滾動(dòng)覆蓋”的情況時(shí),讀操作的地址是從最后一頁(yè)的最后一個(gè)字節(jié)滾動(dòng)覆蓋到第一頁(yè)的第一個(gè)字節(jié),而寫操作的地址是從當(dāng)前頁(yè)的最后一個(gè)字節(jié)滾動(dòng)覆蓋到同一頁(yè)
51、的第一個(gè)字節(jié)。第2章 接觸式IC卡技術(shù)圖2.20 現(xiàn)行地址讀時(shí)序圖開始器件地址 讀數(shù)據(jù)停止MSBR/WLSBACKNO ACK第2章 接觸式IC卡技術(shù) 一旦讀/寫選擇位置于1,器件地址隨時(shí)鐘輸入,并收到EEPROM的確認(rèn)應(yīng)答,現(xiàn)行地址的數(shù)據(jù)碼隨時(shí)鐘被EEPROM串行輸出。此時(shí)數(shù)據(jù)傳送設(shè)備(微控制器)可在SDA線上隨時(shí)鐘串行讀入數(shù)據(jù)。讀取數(shù)據(jù)結(jié)束后,微控制器不是通過(guò)確認(rèn)(低電平ACK)來(lái)應(yīng)答,而是使總線處于高電平(NO ACK),隨后產(chǎn)生一個(gè)停止?fàn)顟B(tài),見圖2.20。 基于MCS-51單片機(jī)的接口設(shè)備可利用如下現(xiàn)行地址讀子程序READ_CURRENT來(lái)實(shí)現(xiàn)現(xiàn)行地址讀操作。第2章 接觸式IC卡技術(shù)
52、READ_CURRENT: ;AT24Cxx現(xiàn)行地址讀功能。調(diào)用時(shí),器件地址的可編程地址置于A中,返回?cái)?shù)據(jù)置于A中。返回時(shí),CY位為1表明總線無(wú)效或器件無(wú)應(yīng)答 ACALL START JCBACK4;若總線無(wú)效則中斷 RLA ORLA, #FADDR;生成器件地址 SETBACC.0;設(shè)置讀操作 ACALLSHOUT;發(fā)送器件地址 JCERROR4;若無(wú)應(yīng)答則中斷 ACALLSHIN;接收數(shù)據(jù)字節(jié)第2章 接觸式IC卡技術(shù) ACALLNAK;發(fā)送高電平NAK應(yīng)答 CLRC;清零錯(cuò)誤標(biāo)志ERROR4:ACALLSTOPBACK4:RET 注意: 寫操作中卡接收到數(shù)據(jù)(地址、數(shù)據(jù))后向接口設(shè)備發(fā)送低
53、電平應(yīng)答ACK,程序通過(guò)將第9個(gè)時(shí)鐘周期的SDA線讀入CY位來(lái)接收應(yīng)答,查詢CY位是否為低來(lái)判斷是否收到卡確認(rèn)應(yīng)答。而讀操作中是接口設(shè)備接到數(shù)據(jù)后向卡發(fā)送高電平應(yīng)答(NO ACK),該高電平應(yīng)答由NAK子程序來(lái)產(chǎn)生。第2章 接觸式IC卡技術(shù) NAK子程序: NAK: ;隨時(shí)鐘輸出一個(gè)高電平的負(fù)應(yīng)答位。調(diào)用前SCL為低,返回時(shí)SCL為低,SDA為高SETB SDA;NAK位NOP;保持SCL為低及數(shù)據(jù)穩(wěn)定NOPSETB SCL;升高時(shí)鐘ACALL DELAY_4 s;保持SCL為高CLR SCL;降低時(shí)鐘RET第2章 接觸式IC卡技術(shù) 2隨機(jī)地址讀隨機(jī)地址讀(RANDOM ADDRESS REA
54、D) 隨機(jī)讀取需要一個(gè)“空”字節(jié)寫序列來(lái)載入數(shù)據(jù)地址,一旦器件地址(讀/寫選擇位置低)和數(shù)據(jù)地址隨時(shí)鐘輸入,并被EEPROM確認(rèn),傳送設(shè)備必須產(chǎn)生另一個(gè)開始狀態(tài)。此時(shí)送出的器件地址中讀/寫選擇位處于高電平,將啟動(dòng)一個(gè)現(xiàn)行地址讀,EEPROM收到器件地址后回送確認(rèn)應(yīng)答,并隨時(shí)鐘串行輸出數(shù)據(jù)碼,微控制器讀取數(shù)據(jù)后不通過(guò)確認(rèn)應(yīng)答,而是使SDA總線處于高電平,隨后產(chǎn)生一個(gè)停止?fàn)顟B(tài),見圖2.21。 基于MCS-51單片機(jī)的接口設(shè)備可利用如下隨機(jī)地址讀子程序READ_RANDOM來(lái)實(shí)現(xiàn)隨機(jī)地址讀操作。從程序中可以看到,在完成了一個(gè)“空”寫之后,直接調(diào)用上面給出的現(xiàn)行地址讀子程序就可以實(shí)現(xiàn)隨機(jī)地址讀操作了。
55、第2章 接觸式IC卡技術(shù)圖2.21 隨機(jī)地址讀時(shí)序圖開 始*器 件 地 址寫SDA字 節(jié) 地 址 (n)停 止開 始器 件 地 址讀數(shù) 據(jù) nMSBR/WLSBACK MSBLSBACKMSBLSB ACKNO ACK空 寫( 對(duì) AT24C01無(wú) 意 義 )*:第2章 接觸式IC卡技術(shù)READ_RANDOM:;AT24Cxx隨機(jī)地址讀功能。調(diào)用時(shí)器件地址的可編程地址置于A中,字節(jié)地址置于寄存器ADDR_HI和ADDR_LO中,返回?cái)?shù)據(jù)置于A中。返回時(shí)CY位為1表明總線無(wú)效或器件無(wú)應(yīng)答PUSHBMOV B, A;可編程器件地址暫存B中;*發(fā)送空寫命令來(lái)設(shè)置內(nèi)部地址*ACALLSTARTJCBA
56、CK5;總線無(wú)效則中斷RLA ORLA, #FADDR;生成器件地址第2章 接觸式IC卡技術(shù)CLRACC.0;設(shè)置寫操作ACALLSHOUT;發(fā)送器件地址JCERROR5;無(wú)應(yīng)答則中斷MOVA,ADDR_HI;發(fā)送字節(jié)地址高8位ACALLSHOUTJCERROR5;無(wú)應(yīng)答則中斷MOVA, ADDR_LO;發(fā)送字節(jié)地址低8位ACALLSHOUTJCERROR5;無(wú)應(yīng)答則中斷;*調(diào)用現(xiàn)行地址讀功能*第2章 接觸式IC卡技術(shù)MOVA, B ;取可編程器件地址ACALLREAD_CURRENTAJMPBACK4 ;退出ERROR5:ACALLSTOPBACK5:POPBRET第2章 接觸式IC卡技術(shù)
57、3順序讀順序讀(SEQUENTIAL READ) 順序讀取由現(xiàn)行讀或隨機(jī)地址讀啟動(dòng)。微控制器收到一個(gè)數(shù)據(jù)碼之后回送“確認(rèn)”應(yīng)答,只要EEPROM收到“確認(rèn)”之后,便會(huì)繼續(xù)增加數(shù)據(jù)地址并隨時(shí)鐘串行輸出后面的數(shù)據(jù)。當(dāng)達(dá)到存儲(chǔ)地址極限時(shí),數(shù)據(jù)地址將重復(fù)滾動(dòng),順序讀取將繼續(xù);當(dāng)終止順序讀操作時(shí),微控制器不產(chǎn)生低電平確認(rèn)信號(hào),而是使SDA總線處于高電平應(yīng)答,隨后產(chǎn)生一個(gè)停止?fàn)顟B(tài)。順序讀時(shí)序圖見圖2.22。 第2章 接觸式IC卡技術(shù)圖2.22 順序讀時(shí)序圖SDA器件地址 讀數(shù)據(jù)(n)數(shù)據(jù)(n1)數(shù)據(jù)(n2)數(shù)據(jù)(nx)停止ACKACKACKNO ACKR/WACK第2章 接觸式IC卡技術(shù) 基于MCS-51
58、單片機(jī)的接口設(shè)備可利用如下讀塊子程序READ_BLOCK來(lái)實(shí)現(xiàn)順序讀操作。 READ_BLOCK: ;從AT24Cxx讀一頁(yè)數(shù)據(jù)。當(dāng)讀出超過(guò)一個(gè)字節(jié)時(shí)執(zhí)行由隨機(jī)地址讀擴(kuò)展而來(lái)的順序讀。調(diào)用時(shí)器件地址的可編程地址置于A中,第一個(gè)字節(jié)地址置于寄存器ADDR_HI和ADDR_LO中,字節(jié)計(jì)數(shù)器置于寄存器COUNT中。返回時(shí)數(shù)據(jù)置于BUFFER中。返回時(shí)CY為1表明總線無(wú)效或器件無(wú)應(yīng)答。占用A,COUNT,INDEX(注:COUNT為字節(jié)計(jì)數(shù)器,可使用工作寄存器R1) 第2章 接觸式IC卡技術(shù);*發(fā)送空寫命令來(lái)設(shè)定第一個(gè)字節(jié)的地址*ACALLSTARTJCBACK6;若總線無(wú)效則中斷RLAORLA,
59、#FADDR;生成器件地址MOVINDEX, A;暫存器件地址于INDEXCLRACC.0;設(shè)置寫操作ACALLSHOUT;發(fā)送器件地址JCERROR6;若無(wú)應(yīng)答則中斷MOVA, ADDR_HI ;發(fā)送字節(jié)地址高8位ACALLSHOUTJCERROR6;若無(wú)應(yīng)答則中斷MOVA, ADDR_LO;發(fā)送字節(jié)地址低8位ACALLSHOUTJCERROR6;若無(wú)應(yīng)答則中斷 第2章 接觸式IC卡技術(shù);*發(fā)送讀命令及接收數(shù)據(jù)*ACALLSTART;第二次開始啟動(dòng)讀操作JCERROR6;若總線無(wú)效則中斷MOVA,INDEX;從INDEX中取器件地址SETBACC.0;設(shè)置讀操作ACALL SHOUT;發(fā)送器
60、件地址JCERROR6;若無(wú)應(yīng)答則中斷MOVINDEX, #BUFFER;指向數(shù)據(jù)緩沖區(qū)首地址L6:ACALLSHIN;接收數(shù)據(jù)字節(jié)MOVINDEX, A;保存數(shù)據(jù)CJNECOUNT, #1, NEXT;不是最后一個(gè)字節(jié)則繼續(xù)ACALL NAK;讀完發(fā)送NAK應(yīng)答AJMPDONE;完成第2章 接觸式IC卡技術(shù)NEXT: ACALL ACK;發(fā)送ACK應(yīng)答字節(jié) INCINDEX;數(shù)據(jù)緩沖區(qū)地址加1 DJNZCOUNT, L6;讀下一個(gè)字節(jié)DONE: CLRC;清零錯(cuò)誤標(biāo)志ERROR6: ACALL STOPBACK6: RET 第2章 接觸式IC卡技術(shù) 注意: 寫操作中卡接收到數(shù)據(jù)后向接口設(shè)備發(fā)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公務(wù)員協(xié)議書范本
- 環(huán)保產(chǎn)業(yè)代收款合作協(xié)議范本
- 高新技術(shù)產(chǎn)業(yè)園區(qū)廠房租賃安全合同樣本
- 特色美食街三股東合作協(xié)議及區(qū)域經(jīng)濟(jì)發(fā)展貢獻(xiàn)
- 車輛租賃合同保證金與車輛租賃企業(yè)社會(huì)責(zé)任履行協(xié)議
- 企業(yè)參股合作協(xié)議書范本
- 生物質(zhì)能源財(cái)產(chǎn)抵押合同
- 城市交通車輛翻新烤漆租賃合作協(xié)議
- 餐廳餐飲員工離職合同范本
- 廢舊鋼模板翻新工藝技術(shù)方案
- 鐵路車輛-鐵路車輛的運(yùn)用與檢修
- 火鍋店領(lǐng)班的崗位職責(zé)和工作流程
- 二人合伙協(xié)議書(電子版)
- 上門廚師項(xiàng)目商業(yè)計(jì)劃書
- 第35屆中國(guó)化學(xué)奧林匹克(初賽競(jìng)賽)試題及參考答案
- 許可證有效期內(nèi)輻射安全和防護(hù)工作總結(jié)
- 四川省中小流域暴雨洪水計(jì)算表格(尾礦庫(kù)洪水計(jì)算)
- 山東大學(xué)齊魯醫(yī)學(xué)院
- 椅子部件圖紙
- 街道綜合協(xié)管員筆試題
- 入庫(kù)單(標(biāo)準(zhǔn)范本)
評(píng)論
0/150
提交評(píng)論