📄 sle3.asm
字号:
;这是写SLE4442卡程序,文件名为SLE3.ASM
;功能: 新片处理- 校验密码(FFFFFF),将密码改为(55AA55)
;该新片处理程序,按以下步骤处理:
;(1) 密码校验程序是 VERIFI0 --校验密码(FFFFFF)
;(2) 写加密存储器程序是 WRSECU,它将密码改为(55AA55)
;CODE FFFFFFH
RST BIT P1.0
CLK BIT P1.1
IO BIT P1.2
VDD BIT P1.3
FLAG BIT 0D5H
CBYTE1 EQU 30H
ABYTE2 EQU 00H
DBYTE3 EQU 55H
DATA1 EQU 20H
ORG 0000H
LJMP MAIN
ORG 0040H
MAIN: MOV SP,#30H
CLR EA
CLR VDD
CLR FLAG
LCALL RESET
LCALL VERIFI0
LCALL WRSECU
SETB VDD
SJMP $
RESET: MOV R1, #32
CLR RST
CLR CLK
LCALL DY
SETB RST
LCALL DY
SETB CLK
LCALL DY
CLR CLK
LCALL DY
CLR RST
RESET0: SETB CLK
LCALL DY
CLR CLK
LCALL DY
DJNZ R1, RESET0
RET
WCOMM: LCALL START
MOV A, #CBYTE1
LCALL WBYTE
MOV A, #ABYTE2
LCALL WBYTE
MOV A, #DBYTE3
LCALL WBYTE
LCALL STOP
RET
START: SETB IO
LCALL DY
SETB CLK
LCALL DY
CLR IO
LCALL DY
CLR CLK
RET
STOP: CLR CLK
LCALL DY
CLR IO
LCALL DY
SETB CLK
LCALL DY
SETB IO
RET
WBYTE: MOV R3,#08H
WBYTE1: RRC A
MOV IO,C
SETB CLK
LCALL DY
CLR CLK
LCALL DY
DJNZ R3,WBYTE1
RET
PCLOCK: MOV R1,#DATA1
PCLOCK1: CLR CLK
LCALL DY
SETB CLK
LCALL DY
DJNZ R1,PCLOCK1
CLR CLK
LCALL DY
RET
RRQ: MOV R0,#40H
MOV R4,#10H
RDATA: LCALL RBYTE
MOV @R0,A
INC R0
DJNZ R4,RDATA
CLR CLK
LCALL DY
RET
RRQ1: LCALL RBYTE
MOV R7,A
LCALL RBYTE
MOV R6,A
LCALL RBYTE
LCALL RBYTE
CLR CLK
LCALL DY
RET
RBYTE: MOV R3,#08H
RBYTE1: CLR CLK
LCALL DY
SETB CLK
MOV C,IO
RRC A
LCALL DY
DJNZ R3,RBYTE1
RET
DY: MOV R7,#40H
DY1: NOP
DJNZ R7,DY1
RET
WCOMM2: LCALL START
MOV A, R4
LCALL WBYTE
MOV A, R5
LCALL WBYTE
MOV A, R6
LCALL WBYTE
LCALL STOP
RET
NOPASS: SETB FLAG
RET
VERIFI0: MOV R4,#31H
MOV R5,#00H
MOV R6,#00H
LCALL WCOMM2
MOV R0,#40H
MOV R4,#04H
LCALL RDATA
MOV A,40H
JZ NOPASS
MOV R4,#39H
MOV R5,#00H
MOV R6,#05H
LCALL WCOMM2
MOV R1,#123
LCALL PCLOCK1
MOV R4,#33H
MOV R5,#01H
MOV R6,#0FFH ;CODE 1
LCALL WCOMM2
MOV R1,#02
LCALL PCLOCK1
MOV R4,#33H
MOV R5,#02H
MOV R6,#0FFH ;CODE 2
LCALL WCOMM2
MOV R1,#02
LCALL PCLOCK1
MOV R4,#33H
MOV R5,#03H
MOV R6,#0FFH ;CODE 3
LCALL WCOMM2
MOV R1,#02
LCALL PCLOCK1
MOV R4,#39H
MOV R5,#00H
MOV R6,#0FFH
LCALL WCOMM2
MOV R1,#254
LCALL PCLOCK1
MOV R4,#31H
MOV R5,#00H
MOV R6,#00H
LCALL WCOMM2
MOV R0,#40H
MOV R4,#04H
LCALL RDATA
MOV A,40H
ANL A,#07H
CJNE A,#07H,NOPASS
RET
WRSECU: MOV R4,#39H ;将密码改为55aa55H
MOV R5,#01H
MOV R6,#055H ; 密码的第1字节
LCALL WCOMM2
MOV R1,#254
LCALL PCLOCK1
MOV R4,#39H
MOV R5,#02H
MOV R6,#0AAH ; 密码的第2字节
LCALL WCOMM2
MOV R1,#254
LCALL PCLOCK1
MOV R4,#39H
MOV R5,#03H
MOV R6,#055H ;密码的第3字节
LCALL WCOMM2
MOV R1,#254
LCALL PCLOCK1
MOV R4,#31H
MOV R5,#00H
MOV R6,#00H
LCALL WCOMM2
MOV R0,#40H
MOV R4,#4
LCALL RDATA
RET
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -