單片機控制AT88SC1604卡的應用實(shí)例
該區對連續輸入的錯誤密碼的次數進(jìn)行累計。當連續8次不正確的比較操作之后,芯片將被鎖死。芯片被鎖死之后,將拒絕任何的擦除、寫(xiě)入和比較的操作命令。
該區是8位長(cháng),按位寫(xiě)入方式操作。在芯片初始化時(shí)是全“1”狀態(tài),即讀出值為“FFH”。在每次比較輸入的密碼時(shí),先按從高位到低位的順序找第一個(gè)為“1”的位,將此位寫(xiě)“0”,然后將新輸入的“校驗密碼”與原存儲在SC區的“參照字”進(jìn)行比較。比較操作本身由芯片內部自行完成,而比較結果則通過(guò)置SV標志來(lái)判別,即比較成功時(shí)SV被置“1”。比較不成功,SV保持原來(lái)的“0”狀態(tài)。在連續8次比較錯誤過(guò)程中每次比較操作之后計數器的計數值分別為“7FH”、“3FH”、“1FH”、“0FH”、“07H”、“03H”、“01H”、“00H”。當計數器為“00H”后,后續的比較操作命令由于無(wú)法在“SCAC”區中找到一個(gè)為“1”的位,因而芯片拒絕繼續執行比較操作。
SnAC(n=1,2,3,4)的作用與SCAC是類(lèi)似的。操作控制也完全一樣。只是SCAC是限制對SC區的比較操作。而SnAC則限制對SCn區的比較操作。SCAC的控制級別最高。當SCAC為“00H”后,芯片內部封鎖了對SC區的比較操作,從而使對SCn的比較也被禁止。如果SCAC為非“00H”值,在對SC區的比較密碼操作成功之后,SCn能否進(jìn)行比較操作就由SnAC區的狀態(tài)值來(lái)決定。SnAC區在連續8次比較輸入過(guò)程中,每次比較操作之后計數器的計數值與SCAC的8個(gè)值一樣。(即分別為“7FH”、“3FH”、“1FH”、“0FH”、“07H”、“03H”、“OlH”、“00H”)當SnAC為“00H”時(shí),則“應用n區”將被鎖死。
(6)擦除密碼區(EZn ,n=l.2,3,4)
該區用于存儲擦除應用區操作的控制密碼。這些密碼一般由發(fā)行商使用。在個(gè)人化處理時(shí)輸入的最后一組“擦除密碼”,在芯片熔絲FUSE2熔斷之后將使“擦除密碼”保存在該區內。該區不再能讀出、寫(xiě)入和擦除,只能進(jìn)行比較操作。在使用過(guò)程中如需對應用區進(jìn)行擦除操作,都必須首先對相應的EZ區輸送一個(gè)“擦除密碼”與之比較,在“擦除密碼比較計數器”不為“00H”的情況下,如果相比較的兩代碼完全一致,則相應的應用區的單元允許擦除,否則將禁止執行擦除操作。
(7) 擦除密碼比較計數區(EnAC ,n=l,2,3,4)
擦除密碼比較計數區的作用與SCAC的作用相類(lèi)似。它對各應用區擦除密碼連續輸入錯誤的次數進(jìn)行累計。最多連續8次不正確的密碼比較之后,該區所控制的應用區的擦除操作即被鎖死,從而導致該應用區有可能成為只讀和允許單次寫(xiě)入的狀態(tài)。
(8) 應用數據區(AZn ,n=1,2,3,4)
該區主要給用戶(hù)使用。用于存儲系統的相關(guān)數據記錄和卡片標識等信息。應用數據區的寫(xiě)入與讀出分別由該區的前兩位Pn和Rn以及SV標志的狀態(tài)控制,擦除操作則由該區的擦除密碼控制。AT88SC1604設計了四個(gè)完全隔離的分區,其中1至3分區的單元容量分別是4K位、第4分區的單元容量為3.6K位。
(9) 存儲區測試區(MTZ)
該區主要用于芯片生產(chǎn)后對EEPROM單元陣列進(jìn)行各項性能測試該區不受任何控制區狀態(tài)和標志狀態(tài)的保護,允許對這個(gè)區進(jìn)行讀出、寫(xiě)人和擦除操作,但不能進(jìn)行比較操作。
應用實(shí)例
基于上述1604芯片的特點(diǎn),在石化系統的加油電路設計中,我們利用單片機芯片89C2051與IC卡電路組成一個(gè)獨立系統,控制IC卡芯片的各項操作,該系統通過(guò)標準RS232通訊接口,與主控制板實(shí)現數據交換,這種電路設計在硬件方面兼容性較好,只要通過(guò)協(xié)調雙方的IC卡通訊協(xié)議,可與任何帶有RS232接口的控制板或微機相連接。
單片機芯片89C2051的6個(gè)端口通過(guò)IOC卡座與IC卡相連接,P1.2口控制IC卡5V電源的通斷,上電時(shí)單片機芯片處于復位狀態(tài), 6個(gè)端口均輸出“1”,IC卡電源處于斷開(kāi)狀態(tài),ICSW為IC卡的檢測端,當IC卡插入后,該端口與地相接,P1.3口檢測到IC 卡已插入卡座,即接通IC卡電源,IC卡操作完畢后,切斷IC卡電源,并提示用戶(hù)可以拔卡。單片機芯片其他4個(gè)端口在接通IC卡電源后,根據對卡操作的需要,對IC卡進(jìn)行復位、讀卡、校對密碼、擦卡、寫(xiě)卡等操作。
硬件電路
芯片的操作模式時(shí)序及設計程序
AT88SCl604芯片的操作模式有五種。它們是通過(guò)配PGM、RST、CLK等引腳信號及內部地址計數器(IAC)的狀態(tài)組合來(lái)實(shí)現。
(1) 芯片復位操作: AT88SCl604有兩種復位方式:上電復位和控制復位。
上電復位: 上電復位是當芯片加電時(shí)的最初狀態(tài)。上電復位屬于芯片
內部復位。它將使芯片內部所有的隱含標志復位到0狀態(tài)。并使地址計數器復位到0位。
控制復位: 當CLK為低時(shí),在RST腳上的一個(gè)下降沿將便芯片產(chǎn)生復位操作??刂茝臀皇菍⒌刂酚嫈灯鲝臀坏?位,而不影響任何內部標志的狀態(tài)。
注:1)RST為高時(shí)禁止計數
2)在CLK端降低之后,延遲一個(gè)復位維持時(shí)間Trh(min 0.1 s)RST端復位(下降沿),同時(shí)地址計數器清零。地址計數器清零后延遲一個(gè)“數據復位有效時(shí)間”Tdvr(max 2 s)第0位單元的數據被送上I/O線(xiàn)。
FWZCX: CLR ICPGM ;復位子程序
NOP
SETB ICREST
NOP
SETB ICSDA
NOP
CLR ICCLK ;時(shí)鐘端清0
NOP
CLR ICREST ;復位端清0
NOP
RET
液位計相關(guān)文章:磁翻板液位計原理
評論