📄 24c02.lst
字号:
023F 02024C LJMP DK2
0242 B40706 NK7: CJNE A,#07H,NK8
0245 753504 MOV KEYBUF,#4
0248 02024C LJMP DK2
024B 00 NK8: NOP
DK2:
024C E535 MOV A,KEYBUF
024E 9003ED MOV DPTR,#TAB
0251 93 MOVC A,@A+DPTR
0252 F539 MOV KEY,A
0254 750001 MOV FLAG0,#1 ;FLAG0=1
0257 E580 DK2A: MOV A,P0
0259 540F ANL A,#0FH
025B 640F XRL A,#0FH
C:\DOCUMENTS AND SETTINGS\ZHANGTAO\桌面\汇编程序\已调通的程序\LED\24C02.ASM
页 6
09-11-05
10:10:20
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
025D 70F8 JNZ DK2A
NOKEY2:
025F 7580FF MOV P0,#0FFH
0262 C286 CLR P0.6
0264 E580 MOV A,P0
0266 540F ANL A,#0FH
0268 640F XRL A,#0FH
026A 6047 JZ NOKEY3
026C 120311 LCALL DELY10US
026F E580 MOV A,P0
0271 540F ANL A,#0FH
0273 640F XRL A,#0FH
0275 603C JZ NOKEY3
0277 E580 MOV A,P0
0279 540F ANL A,#0FH
027B B40E06 CJNE A,#0EH,NK9
027E 75350B MOV KEYBUF,#0bh
0281 0202A0 LJMP DK3
0284 B40D06 NK9: CJNE A,#0DH,NK10
0287 75350A MOV KEYBUF,#0ah
028A 0202A0 LJMP DK3
028D B40B06 NK10: CJNE A,#0BH,NK11
0290 753509 MOV KEYBUF,#9
0293 0202A0 LJMP DK3
0296 B40706 NK11: CJNE A,#07H,NK12
0299 753508 MOV KEYBUF,#8
029C 0202A0 LJMP DK3
029F 00 NK12: NOP
DK3:
02A0 E535 MOV A,KEYBUF
02A2 9003ED MOV DPTR,#TAB
02A5 93 MOVC A,@A+DPTR
02A6 F539 MOV KEY,A
02A8 750001 MOV FLAG0,#1 ;FLAG0=1
02AB E580 DK3A: MOV A,P0
02AD 540F ANL A,#0FH
02AF 640F XRL A,#0FH
02B1 70F8 JNZ DK3A
NOKEY3:
02B3 7580FF MOV P0,#0FFH
02B6 C287 CLR P0.7
02B8 E580 MOV A,P0
02BA 540F ANL A,#0FH
02BC 640F XRL A,#0FH
02BE 6047 JZ NOKEY4
02C0 120311 LCALL DELY10US
02C3 E580 MOV A,P0
C:\DOCUMENTS AND SETTINGS\ZHANGTAO\桌面\汇编程序\已调通的程序\LED\24C02.ASM
页 7
09-11-05
10:10:20
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
02C5 540F ANL A,#0FH
02C7 640F XRL A,#0FH
02C9 603C JZ NOKEY4
02CB E580 MOV A,P0
02CD 540F ANL A,#0FH
02CF B40E06 CJNE A,#0EH,NK13
02D2 75350F MOV KEYBUF,#0fh
02D5 0202F4 LJMP DK4
02D8 B40D06 NK13: CJNE A,#0DH,NK14
02DB 75350E MOV KEYBUF,#0eH
02DE 0202F4 LJMP DK4
02E1 B40B06 NK14: CJNE A,#0BH,NK15
02E4 75350D MOV KEYBUF,#0dH
02E7 0202F4 LJMP DK4
02EA B40706 NK15: CJNE A,#07H,NK16
02ED 75350C MOV KEYBUF,#0ch
02F0 0202F4 LJMP DK4
02F3 00 NK16: NOP
DK4:
02F4 E535 MOV A,KEYBUF
02F6 9003ED MOV DPTR,#TAB
02F9 93 MOVC A,@A+DPTR
02FA F539 MOV KEY,A
02FC 750001 MOV FLAG0,#1 ;FLAG0=1
02FF E580 DK4A: MOV A,P0
0301 540F ANL A,#0FH
0303 640F XRL A,#0FH
0305 70F8 JNZ DK4A
NOKEY4:
0307 22 RET
;**********************************************
DELY10MS:
0308 7E0A MOV R6,#10
030A 7FF8 D1: MOV R7,#248
030C DFFE DJNZ R7,$
030E DEFA DJNZ R6,D1
0310 22 RET
DELY10US:
0311 7E0A MOV R6,#10
0313 DEFE DJNZ R6,$
0315 22 RET
DELY3US:
0316 7E03 MOV R6,#3
0318 DEFE DJNZ R6,$
031A 22 RET
;/*********************************************************************/
C:\DOCUMENTS AND SETTINGS\ZHANGTAO\桌面\汇编程序\已调通的程序\LED\24C02.ASM
页 8
09-11-05
10:10:20
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
; 清LED 显示6个0
;*********************************************************
CLRLED:
031B 7820 MOV R0,#DISPBUF
031D 7400 MOV A,#0H ;小数点位/不显示
031F F6 MOV @R0,A
0320 7408 MOV A,#8
0322 28 ADD A,R0
0323 F8 MOV R0,A ;R0=DISPBUF+8指向蜂鸣器设定位
0324 F9 MOV R1,A
0325 19 DEC R1
0326 19 DEC R1
0327 7400 MOV A,#0 ;蜂鸣器不鸣叫
0329 F6 MOV @R0,A
032A 18 dec r0
032B 7401 mov a,#01H ;识别码=01
032D F6 mov @r0,a
032E 18 DEC R0
;
032F 7A00 MOV R2,#0
SET0: ;缓冲区全填为0
0331 7400 MOV A,#0
0333 F7 MOV @R1,A
0334 0A INC R2
0335 19 DEC R1
0336 BA06F8 CJNE R2,#6,SET0
0339 1203AF LCALL TSLED
033C 22 RET
;*********************************************************
;******************************************************************************
;显示密码
;******************************************************************************
DISPMIMA:
;
033D 7BA0 MOV R3,#0A0H
033F 7C01 MOV R4,#01H
0341 7920 MOV R1,#DISPBUF
0343 09 INC R1 ;密码在DISPBUF+1处
0344 7F06 MOV R7,#6
0346 12034F LCALL RD24C02 ;读密码(从24C02)
0349 12039C LCALL SETXIAO ;设置小数位、识别码、蜂鸣器
034C 1203AF LCALL TSLED ;在LED上显示密码
C:\DOCUMENTS AND SETTINGS\ZHANGTAO\桌面\汇编程序\已调通的程序\LED\24C02.ASM
页 9
09-11-05
10:10:20
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
;****************************************************************************
;读串行E2PROM子程序RD24C02
;(R1)=欲读数据存放地址指针
;(R3)=10100001(命令1010+器件3位地址+读/写(1/0)。 器件地址:一个芯片是000)
;(R4)=片内字节地址
;(R7)=连续读字节数
;****************************************************************************
RD24C02:
034F 75B0FF MOV P3,#0FFH
; SETB SDA
; SETB SCL
; NOP
0352 C2B5 CLR SDA ;发开始信号
0354 7BA0 MOV R3,#0A0H
0356 EB MOV A,R3 ;送器件地址
0357 3192 ACALL SUBS ;调发送单字节子程序
0359 EC MOV A,R4 ;送片内字节地址
035A 3192 ACALL SUBS
035C 75B0FF MOV P3,#0FFH
035F C2B5 CLR SDA ;再发开始信号
0361 EB MOV A,R3
0362 D2E0 SETB ACC.0 ;发读命令
0364 3192 ACALL SUBS
MORE:
0366 7177 ACALL SUBR
0368 F7 MOV @R1,A
0369 09 INC R1
036A DFFA DJNZ R7,MORE
036C C2B5 CLR SDA
036E 31AD ACALL DELAY2
0370 D2B4 SETB SCL
0372 31AD ACALL DELAY2
0374 D2B5 SETB SDA ;送停止信号
0376 22 RET
SUBR:
0377 7808 MOV R0,#08H ;接受单字节子程序
LOOP2:
0379 D2B4 SETB SCL
037B 31AD ACALL DELAY2
037D A2B5 MOV C,SDA
037F 33 RLC A
0380 C2B4 CLR SCL
0382 31AD ACALL DELAY2
0384 D8F3 DJNZ R0,LOOP2
0386 BF0104 CJNE R7,#01H,LOW1
0389 D2B5 SETB SDA ;若是最后一个字节置A=1
C:\DOCUMENTS AND SETTINGS\ZHANGTAO\桌面\汇编程序\已调通的程序\LED\24C02.ASM
页 10
09-11-05
10:10:20
伟福汇编器 V5.00 Copyright (c) 1989, 99 by CHY
地址 机器码 源程序
038B 618F AJMP SETOK
LOW1:
038D C2B5 CLR SDA ;否则置A=0
SETOK:
038F 31AD ACALL DELAY2
0391 D2B4 SETB SCL
0393 31AD ACALL DELAY2
0395 C2B4 CLR SCL
0397 31AD ACALL DELAY2
0399 D2B5 SETB SDA ;应答毕,SDA置1
039B 22 RET
;*********************************************************
;设置小数位、识别码、蜂鸣器
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -