摘 要 本文介紹了串行E2PROM芯片X25045作為數(shù)據(jù)存儲器在IC卡預(yù)收費電度表中的應(yīng)用,并給出其與單片機的接口電路及編程實例。 關(guān)鍵詞 E2PROM;電度表;IC卡 分類號 TP368.1
Serial E2PROM X25045 and Its Application in an IC Card Collecting Bill System of Kilowatt Hour Meter
Su Min Tu Yuanzhao (Dept. of Automation,Sichuan Union University)
Abstract In this paper, a application of serial E2PROM X25045 in an IC Card Collecting bill System of kilowatt hour meter is introduced. The interfacting programming of Serial E2PROM and SCP is given. Key words E2PROM, kilowatt hour meter, IC card
隨著超大規(guī)模集成電路VLSI的發(fā)展,把集成電路IC嵌于類似于信用卡片內(nèi),稱為IC卡,它是目前世界上流行的具有廣泛應(yīng)用前景的高新技術(shù)產(chǎn)品。IC卡預(yù)收費電度表是將傳統(tǒng)的感應(yīng)式電度表加上現(xiàn)代計算機技術(shù)使之成為智能型的預(yù)收費電度表,為從根本上解決抄表收費的難題,實現(xiàn)電業(yè)管理的現(xiàn)代化提供了技術(shù)手段和設(shè)備。 IC卡預(yù)收費電度表計量的準確性和可靠性,在很大程度上取決于數(shù)據(jù)存儲器的高可靠性。本文應(yīng)用具有可編程看門狗監(jiān)控特性的E2PROM X25045作為IC卡預(yù)收費電度表的數(shù)據(jù)存儲器,大大提高了IC卡預(yù)收費電度表計量的準確性和可靠性,在實際應(yīng)用中,收到了良好的效果。 X25045把三種常用的功能,看門狗定時器,電壓監(jiān)控和E2PROM組合在單個封裝之內(nèi)。這種組合降低了系統(tǒng)成本并減少了對電路板空間的要求,它與E2PROM 24C××芯片相比,在性能上占有明顯的優(yōu)勢。
1 IC卡預(yù)收費電度表硬件簡介 IC卡預(yù)收費電度表硬件框圖如圖1所示,它主要是由電度表和單片機系統(tǒng)兩大部分組成。光電傳感器將普通電度表的轉(zhuǎn)盤轉(zhuǎn)動圈數(shù)變成電的脈沖信號送入單片機,從而達到用電計量的目的。單片機系統(tǒng)由單片機,LED顯示器,報警器,跳閘控制器,IC卡座和數(shù)據(jù)存儲器組成。LED顯示器顯示用戶的剩余電量,報警器將提示用戶各種信息,如非法卡插入,需買卡,已透支,將斷電等等,下面重點介紹X25045在IC卡預(yù)收費電度表中的應(yīng)用。

圖1 IC卡預(yù)收費電度表硬件圖 Fig.1 IC cord collecting bill system of kilowatt hour meter hardware diagram
|
2 X25045芯片主要特點 X25045是美國Xicor公司近年來推出的帶E2PROM的μP控制電路X25043/X25045系列芯片。圖2是X25045管腳圖。管腳的說明如表1所示。其主要特點如下:看門狗定時器對微控器提供了獨立的保護系統(tǒng);利用低VCC檢測電路,可以保護系統(tǒng)使之免受低電壓狀況的影響;存儲器部分是CMOS的串行E2PROM,它內(nèi)部按512×8來組織,10萬次寫入次數(shù):100年數(shù)據(jù)儲存。

圖2 X25045管腳 Fig.2 Pin configuration
表1 管腳說明 Tabl.1 Pin definitions |
| 符號 |
說明 |
 |
芯片選擇輸入 |
| SO |
串行輸出 |
| SI |
串行輸入 |
| SCK |
串行時鐘輸入 |
 |
寫保護輸入 |
| VSS |
地 |
| VCC |
電源電壓 |
| RESET |
復(fù)位輸出 |
|
3 X25045指令格式和工作時序 X25045包括一個8位指令寄存器。它可通過SI輸入來訪問,數(shù)據(jù)在SCK的上升沿由時鐘同步輸入。在整個工作期內(nèi), 必須是低電平且 輸入必須是高電平。X25045****總線,如果在預(yù)置的時間周期內(nèi)沒有總線的活動,那么它將提供RESET輸出。表2包括指令及其操作碼的列表。所有的指令,地址與數(shù)據(jù)都以MSB(最高有效位)在前的方式傳送。讀和寫指令的位3包含了高地址位As。
表2 指令集 Tabl.2 Set of command |
| 指令名 |
指令格式 |
操 作 |
| WREN |
0 0 0 0 0 1 1 0 |
設(shè)置寫使能鎖存器(允許寫操作) |
| WRDI |
0 0 0 0 0 1 0 0 |
復(fù)位寫使能鎖存器(禁止寫操作) |
| RDSR |
0 0 0 0 0 1 0 1 |
讀狀態(tài)寄存器 |
| WRSR |
0 0 0 0 0 0 0 1 |
寫狀態(tài)寄存器(塊鎖定位) |
| READ |
0 0 0 0 A8 0 1 1 |
從開始所選地址的存儲器陣列中讀出數(shù)據(jù) |
| WRITE |
0 0 0 0 A8 0 1 0 |
把數(shù)據(jù)寫入開始于所選地址的存儲器陣列(1至4字節(jié)) |
狀態(tài)寄存器:RDSR指令提供對狀態(tài)寄存器的訪問。狀態(tài)寄存器的格式如表3所示:
表3 狀態(tài)寄存器格式 Tabl.3 State register format |
| 7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
| X |
X |
WD1 |
WD0 |
BL1 |
BL0 |
WEL |
WIP |
看門狗定時器(Watchdog Timer)WD0和WD1位允許如表4所示那樣設(shè)置看門狗的超時功能。這些非易失性的位由發(fā)出WRSR指令來設(shè)置。如果允許看門狗定時器工作且CS保持高電平或低電平的時間長于看門狗超時周期,那么RESET也變?yōu)楦唠娖。CS的下降沿將復(fù)位看門狗定時器。
表4 看門狗超時功能設(shè)置 Table.4 Set watchdog timer |
| 狀態(tài)寄存器位 |
看門狗超時周期 (典型值) |
| WD1 |
WD0 |
| 0 |
0 |
1.4秒 |
| 0 |
1 |
600毫秒 |
| 1 |
0 |
200毫秒 |
| 1 |
1 |
禁止 |
讀時序:當從E2PROM存貯器陣列讀數(shù)據(jù)時,首先把 拉至低電平以選擇芯片。8位的讀(READ)指令被發(fā)送到X25045,其后是8位的字節(jié)地址。在發(fā)送了讀操作碼和字節(jié)地址之后,在所選定的地址存貯器中貯存的數(shù)據(jù)被移出到SO線上。繼續(xù)提供時鐘脈沖可接著讀出在下一地址的存貯器中貯存的數(shù)據(jù)。在每一個數(shù)據(jù)字節(jié)移出之后,字節(jié)地址自動增量至下一個較高的地址。把 置為高電平可以終止讀操作。參見圖3所示的讀E2PROM陣列操作的時序。

圖3 讀E2PROM陣列操作的時序 Fig.3 Read E2PROM
寫時序:在把數(shù)據(jù)寫入X25045之前,必須首先發(fā)出WREN指令把“寫使能”鎖存器置位(見圖4)。 首先被拉至低電平,然后WREN指令由時鐘同步送入X25045,在指令的所有8位被發(fā)送之后,必須接著使 變?yōu)楦唠娖。如果在發(fā)出WREN指令之后不把 變?yōu)楦唠娖蕉^續(xù)操作,那么寫操作將會被忽略。

圖4 寫使能鎖存器的時序 Fig.4 Write enable
為了把數(shù)據(jù)寫至E2PROM存儲器陣列,要發(fā)出WRITE指令,后繼以地址,接著是要寫的數(shù)據(jù)。這是最少為24個時鐘的操作。在此操作期間, 必需變?yōu)榈碗娖角冶3衷诘碗娖。主機可以繼續(xù)寫多達4個字節(jié)的數(shù)據(jù)至X25045。唯一的限制是4個字節(jié)必須駐留在同一個頁上。為了結(jié)束寫操作(寫字節(jié)或頁),只能在第24,第32,第40或第48個時鐘之后把 變?yōu)楦唠娖。寫時序的詳細說明參見圖5。

圖5 字節(jié)寫操作的時序 Fig.5 Write byte
4 X25045與8751的硬件接口電路及編程實例 8751與X25045的硬件接口電路圖如圖6所示。

圖6 8751與X25045的接口電路 Fig.6 8751 and X25045 interface |
|