题目要求如下
利用MCS51系列单片机为CPU,设计电路,连接4位数码管,并连接
两个按键,按第一个按键数码管显示值增加1,按另外一个按键数码管显示值减1。要求线路连接正确,包含晶振电路和复位电路,数码管采用动态显示,代码注释详细,变量命名规范。
代码:
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP INTE0
ORG 0013H
LJMP INTE1
ORG 0100H
MAIN: SETB EA
SETB EX0
SETB EX1
SETB IT0
SETB IT1
MOV R0,#0;个
MOV R1,#0;十
MOV R2,#0;百
MOV R3,#0;千
MOV A,#00H
MOV DPTR,#TAB
DIS: MOV P2,#0FEH
MOV A,R0
MOVC A,@A+DPTR
MOV P0,A;显示个位数
LCALL DELAY
MOV P2,#0FDH
MOV A,R1
MOVC A,@A+DPTR
MOV P0,A;显示十位数
LCALL DELAY
MOV P2,#0FBH
MOV A,R2
MOVC A,@A+DPTR
MOV P0,A;显示百位数
LCALL DELAY
MOV P2,#0F7H
MOV A,R3
MOVC A,@A+DPTR
MOV P0,A;显示千位数
LCALL DELAY
LJMP DIS;循环往复
INTE0: INC R0
CJNE R0,#10,ADD1;判断个位进位情况,进位则向下执行
INC R1;
MOV R0,#0
LJMP ADD2;个位进位
ADD2: CJNE R1,#10,ADD1;十