單片機控制AT88SC1604卡的應用實例
對芯片的任何一個允許寫入或擦除的區域,其執行寫入和擦除的必要條件是芯片的SV標志為“1”狀態。
注:在CLK為低的狀態下,PGM端從“0”到“1”,并延時一段“編程建立時間”(Tspr)之后,CLK端從“0”到“1”(這時是寫入/擦除操作的開始),在此刻之前的Tds(數據建立時間)由外部向I/O線給出寫入數據。CLK端在“1”狀態應至少保持5ms(Tchp)之后,CLK端從“1”到“0”(這時是寫入/擦除操作的結束)。應特別注意結束寫入操作的CLK端的下降沿并不會使地址計數器加1,而只是將剛寫入的“數據”讀出, 以便外部驗證剛才的“寫入操作”。
WICD: MOV A,#KDWDZ ;送擦除卡低位首地址
LCALL SADR ;尋位地址
MOV R2,#30 ;擦除30字節
LCALL CPESC3 ;擦除
MOV R0,#RAMDZ ;CPU的RAM中待寫
入數據地址
MOV R2,#30 ;寫入30字節
WICDA: MOV A,@R0
LCALL WICDAA
INC R0
DJNZ R2,WICDA
RET
; 向IC卡寫入子程序
WICDAA: MOV R3,#08
WICDAB: RLC A
JC WICDAC ;該位為1,轉
SETB ICPGM ;打開編程位
SETB ICPGM
MOV ICSDA,C
MOV ICSDA,C
SETB ICCLK
SETB ICCLK
CLR ICPGM ;關閉編程位
CLR ICPGM ;關閉編程位
LCALL DELY5 ;延時5MS
CLR ICCLK
CLR ICCLK
WICDAC: SETB ICCLK
SETB ICCLK
CLR ICCLK
DJNZ R3,WICDAB
RET
; 擦除應用區1
CPESC3: SETB ICPGM ;打開編程位,擦除灰名
單入口
SETB ICPGM
SETB ICSDA
SETB ICSDA
SETB ICCLK
SETB ICCLK
CLR ICPGM ;關閉編程位
LCALL DELY5 ;延時5MS
CLR ICCLK
CLR ICCLK
SETB ICCLK
SETB ICCLK
CLR ICCLK
MOV R3,#07
CPESC4: SETB ICCLK
SETB ICCLK
CLR ICCLK
CLR ICCLK
DJNZ R3,CPESC4
DJNZ R2,CPESC3
RET
; 延時(R7)
DELY5: MOV R7,#0AH ;5毫秒延時
DELY: PUSH 07
DLY1: PUSH 07
DLY2: PUSH 07
DLY3: DJNZ R7,DLY3
POP 07
DJNZ R7,DLY2
POP 07
DJNZ R7,DLY1
POP 07
DJNZ R7,DELY
RET
結束語
隨著IC卡技術的飛速發展,金融機構、國家機關、公司企業、教育部門等領域的需求越來越迫切,應用越來越廣泛。
液位計相關文章:磁翻板液位計原理













評論