实验内容:模拟包装线上产品计数,每包装5个物品,总数加一,LED高三位显示包装数0到5,一位数码管显示总数
LED P2.2到P2.4控制哪一个数码管显示。
ORG 0000H
SJMP START
ORG 000BH
SJMP LOOP;中断入口
RETI
START:
MOV P2,#11111111B
MOV SP,#0FFH
MOV DPTR,#SEG_TAB
SETB EA
MOV TMOD,#06H
MOV TCON,#010H
SETB ET0
SETB TR0
SETB RS0
SETB RS1
MOV P0,#03FH
MOV R3,#0
MOV R1,#0
MOV R4,#00FH
MOV TH0,#0FBH
MOV TL0,#0FBH
MOV A,#0
AJMP ST
ST:
JB P3.2,$
INC R1
MOV A,R1
CPL A
RL A
RL A
RL A
RL A
RL A;让高三位显示,左移五次
MOV P2,A
JNB P3.2,$
AJMP ST
LOOP:
PUSH ACC
PUSH PSW;保护数据
SETB RS1
SETB RS0
MOV R1,#0
INC R3
MOV A,R3
MOVC A,@A+DPTR
MOV P0,A
POP PSW
POP ACC
RETI
SEG_TAB:DB 03FH,006H,05BH,04FH;字形表0~3
DB 066H,06DH,07DH,007H;字形表4~7
DB 07FH,06FH,077H,07CH
DB 039H,05EH,079H,071H
END