亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 用單片機實現通用存貯器ic卡的讀寫.txt

?? 壓縮包中包括多個驅動程序的原代碼
?? TXT
字號:
用單片機實現通用存貯器IC卡的讀寫 
發表時間:2005-12-13 9:04:37   瀏覽人數:20 
本文對AT24系列存貯器和AT89系列單片機的特征及總線狀態作為介紹,并以AT24C01與AT89C2051為例詳細描述了通用存貯器IC卡的工作原理及用單片機對其進行讀寫操作的基本電路連接和軟件編程方法。 

通用存貯器IC卡是由通用存貯器芯片封裝而成的,由于它的結構和功能簡單,生產成本低,使用方便,因此在各領域都得到了廣泛的應用。目前用于IC卡的通用存貯器芯片多為E2PROM,其常用的協議主要有兩線串行連接協議(I2C)和三線串行鏈接協議,其中比較常用的是ATMEL公司生產的AT24系列芯片。以該系列中的AT24C01為例,它具有1k的存貯容量,適用于2V~5V的低電壓/標準電壓的操作,具有低功耗和高可靠性等優點。而AT89C2051雖是ATMEL公司89系列單片機的低檔型,但它具有2k的FLASH 
ROM(可重編閃速存貯器)、128×8位內部RAM及全靜態操作方式,同樣也具有低功耗和較強的功能。下面以AT24C2051為例,對通用存貯器IC卡的工作原理及基本電路連線作一介紹,該線路簡單,使用靈活,能可靠地對通用存貯器IC卡進行讀寫。 
2 硬件特性 
2.1 AT24系列存貯器的特性 
AT24系列存貯器芯片采用CMOS工藝制造,內置有高壓泵,可在單電壓供電條件下工作。其標準封裝為8腳DIP封裝形式,各引腳的功能說明如下: 
SCL:串行時鐘。在該腳的上升沿時,系統將數據輸入到每個EEPROM器件,在下降沿時輸出。 
SDA:串行數據。該引腳為開漏極驅動,可雙向傳送數據。 
A0、A1、A2:器件/頁面尋址。為器件地址輸入端。在AT24C01/02中,該引腳被硬連接。 
Vcc:一般輸入+5V的工作電壓。 
圖1是符合ISO7816-2標準的IC卡的觸點圖。對于AT24系列通用存貯器IC卡來說,通常只需使用四個觸點。AT24C01的內部組態為128個8位字節,而對隨機字尋址則需要一個7位地址。 
2.2 總線狀態及時序 
A24C01的SCL及SDA兩總線可通過一個電阻上拉為高電平,SDA上的數據僅在SCL為低電平時周期才能改變。當SCL為高電平時,SDA的改變表示“開始”和“停止”狀態。此時,所有地址和數據字都以8位串行碼方式輸入輸出EEPROM。 
開始狀態:SCL為高電平時,SDA由高電平轉入低電平。該命令必須在其它命令前執行。 
停止狀態:SCL為高電平時,SDA由低電平轉入高電平。該命令可終止所有通訊。 
確認:相同總線上的設備在收到數據后,以置SDA為低電平的方式對其進行確認。 
2.3 器件尋址 
AT24系列EEPROM在開始狀態后需緊接一個8位器件地址,以進行應讀寫操作。設備尋址碼的高4位為1、0、1、0,對于AT24C01/02,尋址碼高4位后面的三位是器件尋址碼,與它們的硬連線管腳相對應。最低應是讀寫選擇位,置0時可激發讀操作。 
具體的格式如下: 
1010A2A1A0R/W 

2.4 AT89C2051芯片 
AT89C2051是MCS-51產品的兼容型,它具有2k的FLASH 
ROM、128字節ROM,15根I/O引線、兩個16位定時/計數器、一個五向量兩級中斷結構、一個全雙工串行口、一個精密模擬比較器以及片內振蕩電路和時鐘電路。它的P1口和P3口是雙向I/O口,其中P1.2~P1.7、P3.0~P3.5和P3.7帶有內部上拉電阻。在AT89C2051用作輸入端時,將首先向引腳寫“1”而使內部MOS管截止以便引腳處于懸浮狀態,從而可獲得高阻抗輸入。 
圖2為通用存貯器IC卡的基本電路連接圖。 
3 讀寫操作軟件 
當系統采用6MHz晶體振蕩器時所定義的I/O口線及器件地址如下: 
SCL BIT P1.7 
SDA BIT P1.6 
DEVICEAD_W DATA 10100000B ;寫卡器件地址 
DEVICEAD_R DATA 10100001B ;讀卡器件地址 
3.1 開始條件(START_IC) 
在開始條件下,當SCL為高電平時,SDA由高轉為低。程序如下: 
START_IC:CLR SCL;SCL低電平時才允許SDA更改 
NOP ;加入空指令延時以確保信號可靠 
NOP 
SETB SDA 
NOP 
NOP 
SETB SCL 
NOP 
NOP 
CLR SDA 
NOP 
NOP 
CLR SCL 
NOP 
RET 
3.2 停止條件(STOP_C) 
在停止條件下,當SCL為高電平時,SDA由低轉為高。程序如下: 
STOP_IC:CLR SCL 
NOP 
NOP 
CLR SDA 
NOP 
NOP 
SETB SCL 
NOP 
NOP 
SETB SDA 
NOP 
NOP 
CLR SCL 
NOP 
NOP 
CLR SDA 
RET 
3.3 確認信號(ACK_IC) 
在接收方應答下,每收到一字節后便將SDA電平拉低,程序如下: 
ACK_IC:CLR SCL 
NOP 
NOP 
CLR SDA 
NOP 
NOP 
SEIB SCL 
NOP 
NOP 
CLR SCL 
NOP 
SETB SDA 
NOP 
RET 
3.4 寫一字節數據到IC卡(WR_BYTE) 
在下列程序中,參數A表示源數據,R5表示字節位數。 
WR_BYTE:MOV R5,#08 ;一字節8位數據 
CLR SCL 
NOP 
NOP 
WR_BYTE1:RLC A ;帶進位位左移,A.8->C 
MOV SDA,C ;SCL低電平時改變SDA上的數據 
NOP 
SETB SCL ;拉高SCL把數據發送出去 
NOP 
NOP 
CLR SCL 
NOP 
NOP 
DJNZ R5,WR_BYTE1;依次發送A中的8位數據 
SETB SDA 
SETB SCL 
JB SDA,$ ;等待IC卡確認信號 
CLR SCL 
NOP 
RET 
此子程序的主要作用是按照定義的時序,順序左移A中一字節8位數據,并通過引腳傳送出去。當一字節發完后,等待IC卡發回的確認信號。 
3.5 從IC卡讀一字節(RD+BYTE) 
從IC卡中讀一字節的源程序如下: 
RD_BYTE:MOV R5,#08 
SETB SDA ;設備SDA為讀狀態 
CLR A ;清空A寄存器 
RD_BTYE1:MOV C,SDA ;讀一位數據到進位位 
RLC A ;左移數據到A.0 
SETB SCL 
NOP 
NOP 
CLR SCL 
NOP 
NOP 
DJNZ R5,RD_BYTE1;依次讀出8位數據到A中 
RET ;無應答信號 
利用該程序可將讀出的數據存放在A中。需要注意的是:讀數據的器件不是通過確認狀態來應答的,而是隨后產生一個停止狀態。 
3.6 字節寫入模式寫數據(WRITE_BYTE) 
下列程序中的參數為:R6= =目的地址,A= =數據;數據如下: 
WRITE_BYTE:PUSH ACC ;保存A中的數據 
LCALL START_IC ;發開始信號 
MOV A,#DEVICEAD_W;寫入器件地址 
LCAL WR_BYTE 
MOV A,R6 ;寫入字節地址 
LCALL WR_BYTE 
POP ACC ;恢復A中數據 
LCALL WR_BYTE ;寫入數據 
LCALL STOP_IC 
RET 
在收到8位數據后,EEPROM將通過SDA來回送確認信號,而傳送設備必須用停止狀態來終止寫操作。這時,EEPROM將進入一個內時固定存貯器的寫入周期并且禁止在此其間的所有輸入,直到寫操作完成后才對通訊應答。其寫入周期可自定義,最大為10ms。 
3.7 頁面寫入模式寫數據(WRITE_PAGE) 
以下程序中的參數為P0= =源指針,R6= =目的地址,R7= =頁面長度。 
WRITE_PAGE:LCALL START_IC 
MOV A,#DEVICEAD_W 
LCALL WR_BYTE 
MOV A,R6 
LCALL WR_BYTE 
WRITE_PAGE1:MOV A,@R0 
LCALL WR_BYTE 
INC R0 
DJNZ R7,WRITE_PAGE1 
LCALL STOP_IC 
RET 
AT24C01/02可利用上述程序進行8字節的頁面寫入,它的操作類似于寫字節。不同的是,它無需在第一個字節送出后才以停止狀態,不同在收到確認信號后,再傳送7個字節的數據碼,最后以停止狀態來終止頁面寫序列。AT24C04/08/16的頁面為16字節。 
3.8 立即地址讀模式(READ_BYTEC) 
立即地址讀模式讀一字節數據的程序如下:READ_BYTEC:LCALL START_IC 
MOV A,#DEVICEAD_R 
LCALL WR_BYTE 
LCALL RD_BYTE ;讀出默認地址數據 
LCALL STOP_IC ;發停止狀態應答 
RET 
該程序執行后,其內部數據字地址指針將保持在上次讀寫操作訪問的最后一個地址,并按1遞增且在芯片上電期間一直有效。只有當地址為頁面的最末時,下次訪問才滾動到該頁面的首地址。 
3.9 隨機地址讀模式(READ_BYTER) 
在下列程序中,R6= =源地址,程序如下: 
READ_BYTER:LCALL START_IC 
MOV A,#DEVICEAD_W ;執行空字節寫序列 
LCALL WR_BYTE ;載入數據地址 
MOV A,R6 
LCALL WR_BYTE 
LCALL START_IC 
MOV A,#DEVICEAD_R ;立即地址讀取 
LCALL WR_BYTE 
LCALL DR_BYTE 
LCALL STOP_IC 
RET 
讀操作模式需要一個字節寫序列載入數據地址。在器件和數據地址寫入并得到確認后,將再產生另一個開始條件,并送出讀操作器件的地址,同時激發一個立即地址讀取。 
3.10 順序地址讀取(READ_BYTES) 
在下列程序中:R0= =目的指針;R7= =數據長度,程序如下: 
READ+BYTES:LCALL START_IC 
MOV A,#DEVICEAD_R 
LCALL WR_BYTE 
READ_BYTES2:LCALL RD_BYTE 
MOV @R0,A ;存放數據到目的地址 
INC R0 
DJNZ R7,READ_BYTES1 
LCALL STOP_IC ;讀寫指定長度后停止 
RET 
READ_BYTES1:LCALL ACK_IC ;收到數據后發確認信號SJMP READ_BYTES2 
其中順序讀取由立即尋址讀或隨機地址讀激發,并在收到一字節數據后發確認信號應答。當讀數器件以停止狀態應答時,操作被終止。 

4 總結 
該系統結構簡單,在實際運行時具有很高的可靠性,同時具有一定的可擴展性,并可通過單片機的串行口經電平轉換后直接與計算機相連,以進行數據通訊。另外,也可根據需要連接到其它引腳或卡座觸點,如果適當改進電路和程序,還可讀寫加密卡和CPU卡等。  

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕免费观看一区| 久久噜噜亚洲综合| 成人永久看片免费视频天堂| 看电影不卡的网站| 免费成人在线视频观看| 五月婷婷综合激情| 免费视频最近日韩| 韩国毛片一区二区三区| 国产精品一区免费在线观看| 国产精品一区二区你懂的| 国产伦精品一区二区三区免费| 国内外成人在线视频| 国产一区二区福利视频| 风流少妇一区二区| 91精品91久久久中77777| 欧美视频在线不卡| 欧美大片在线观看一区| 久久在线观看免费| 日韩美女啊v在线免费观看| 伊人色综合久久天天| 天天操天天干天天综合网| 麻豆精品一区二区三区| 粉嫩aⅴ一区二区三区四区 | 麻豆freexxxx性91精品| 精品无码三级在线观看视频 | 99久久婷婷国产精品综合| 色悠久久久久综合欧美99| 91精品国模一区二区三区| 久久综合九色综合欧美就去吻| 久久久亚洲精品石原莉奈| 亚洲人精品一区| 蜜桃久久av一区| av电影天堂一区二区在线观看| 欧美日韩一区二区在线观看| 欧美精品一区二区三区蜜桃| 亚洲精品第1页| 精品一区二区日韩| 欧洲国内综合视频| 久久久99精品免费观看| 亚洲v日本v欧美v久久精品| 国产一区二区三区视频在线播放| 91日韩一区二区三区| 久久这里都是精品| 午夜不卡在线视频| 日本高清无吗v一区| 精品国产露脸精彩对白| 亚洲香肠在线观看| aaa国产一区| 久久网站热最新地址| 日韩国产欧美三级| 色婷婷国产精品综合在线观看| 久久久亚洲高清| 日韩有码一区二区三区| 色综合激情五月| 欧美经典三级视频一区二区三区| 日韩综合在线视频| 欧美伊人久久久久久久久影院| 久久嫩草精品久久久精品一| 日韩福利电影在线观看| 欧美午夜电影一区| 亚洲精品中文在线影院| eeuss国产一区二区三区| 国产亚洲精品免费| 精品一区二区三区免费视频| 91精品中文字幕一区二区三区| 1000部国产精品成人观看| 成人小视频免费在线观看| 欧美xxxxxxxx| 久久99精品久久久久| 日韩欧美一级二级三级| 日韩高清在线不卡| 欧美一级艳片视频免费观看| 午夜精品久久久久影视| 欧美精品视频www在线观看| 一区二区三区四区乱视频| 91老师国产黑色丝袜在线| 综合色中文字幕| 99视频国产精品| 亚洲欧美精品午睡沙发| 色综合 综合色| 亚洲国产精品自拍| 欧美顶级少妇做爰| 青青青伊人色综合久久| 欧美大片在线观看| 丁香婷婷综合激情五月色| 国产精品网站在线| 色综合久久精品| 亚洲成人一区在线| 日韩一区二区三区电影| 久久国产综合精品| 国产精品欧美一区喷水| 欧美午夜电影网| 亚洲国产精品久久人人爱蜜臀| 777亚洲妇女| 国产一区亚洲一区| 国产精品不卡视频| 欧美色偷偷大香| 精品一区二区三区香蕉蜜桃| 日本一区二区三区四区在线视频 | 欧美高清精品3d| 免费在线观看日韩欧美| 国产欧美日韩综合| 色琪琪一区二区三区亚洲区| 日韩av中文字幕一区二区| 久久精品人人做人人综合| 在线看一区二区| 久久精品国产久精国产| 亚洲欧美一区二区视频| 7777精品伊人久久久大香线蕉经典版下载 | 亚洲老妇xxxxxx| 91精品国模一区二区三区| 欧美人牲a欧美精品| 国产成人免费在线观看| 亚洲大片精品永久免费| 中文一区二区在线观看| 制服丝袜亚洲色图| 91在线丨porny丨国产| 波多野结衣中文一区| 玉米视频成人免费看| 国产校园另类小说区| 欧美男同性恋视频网站| 成人国产精品免费观看动漫 | 精品一区二区三区久久久| 国产精品美女久久久久久久久久久| 欧美裸体一区二区三区| 成人黄色a**站在线观看| 免费观看91视频大全| 亚洲国产另类av| 亚洲欧美电影一区二区| 久久精品一区二区三区av| 91精品国产综合久久香蕉的特点 | 欧美在线观看禁18| 高清在线成人网| 久久国产精品免费| 亚洲成a人v欧美综合天堂| 国产精品拍天天在线| 欧美精品一区二区在线观看| 91精品一区二区三区在线观看| 日本韩国欧美国产| 99综合影院在线| 盗摄精品av一区二区三区| 久久疯狂做爰流白浆xx| 日本不卡一区二区三区高清视频| 亚洲欧洲综合另类在线 | 91视频免费播放| 成人网男人的天堂| 国产激情视频一区二区三区欧美| 美女视频一区二区| 久久精品国产一区二区三区免费看| 亚洲一区二区美女| 一区二区三区四区精品在线视频| 国产精品国产三级国产有无不卡 | 欧美高清www午色夜在线视频| 欧洲av一区二区嗯嗯嗯啊| 日本精品一级二级| 欧美在线一区二区| 欧美剧情片在线观看| 欧美视频一区二区| 欧美一卡二卡三卡| 欧美精品一区二区在线观看| 久久综合九色综合欧美98| 国产亚洲精品7777| 国产精品美女久久久久久久网站| 国产精品久久久久aaaa樱花| 亚洲精品成人a在线观看| 国产福利一区二区三区视频在线| 久久99在线观看| 国模一区二区三区白浆| 高清成人免费视频| 在线观看视频91| 欧美一级二级三级蜜桃| 日韩免费在线观看| 国产精品色在线| 亚洲一二三四区| 久久成人av少妇免费| 成人激情校园春色| 在线免费观看日韩欧美| 欧美丰满嫩嫩电影| 久久久国际精品| 亚洲一区二区三区中文字幕| 手机精品视频在线观看| 粉嫩av亚洲一区二区图片| 欧美亚洲国产一区二区三区va | 久久久久久亚洲综合影院红桃| 国产目拍亚洲精品99久久精品| 伊人性伊人情综合网| 久久爱www久久做| 91麻豆福利精品推荐| 91精品国产色综合久久ai换脸| 国产三级三级三级精品8ⅰ区| 亚洲乱码精品一二三四区日韩在线| 天天影视涩香欲综合网| 成人免费视频网站在线观看| 欧美麻豆精品久久久久久| 中文av字幕一区| 久久99精品久久久久| 在线这里只有精品| 国产免费观看久久| 美女视频一区在线观看| 欧美性色综合网|