控制8位发光二极管呈闪光状态,通过8位按键控制对应发光二极管的状态,的编译代码

来源:百度知道 编辑:UC知道 时间:2024/05/25 07:08:40
即读入按键状态,再利用发光二极管显示其状态有键(按下去时点亮对应的LED),并且能在LED数码管上先是1,2,3三个数字

ORG 0000H;
LJMP MAIN;程序开始
ORG 030H;
MAIN: MOV P0,#028H;数码管显示0
clr p2.1 ;打开第一个数码管
MOV R0,#00H;r0送0fh
ST: MOV P3,#0FH;p3 送0fh
MOV A,P3;
CJNE A,#0FH,F1;如果p3口的值等于0f,那么按键没有按,
ACALL DEL;
AJMP ST;继续检测
F1: ACALL DEL;
CJNE A,#0FH,F2;再次判断有没有按
AJMP ST;继续检测
F2: INC R0;r0加1
CJNE R0,#0AH,F3;如果r0等于10转道f3;OAH就是10, 到这里转移重新
MOV R0,#00H;
F3: MOV DPTR,#JPTAB;取地址
MOV A,R0;
CLR C;清除进位
RLC A;a的内容右移
JNC NADD;判断有没有进位, 有向下无到NDDA
INC DPH;有进位DPH加1
NADD: JMP @A+DPTR;根据A的内跳转到PR1,PR2....
JPTAB: NOP;
NOP;
AJMP PR1;
AJMP PR2;
AJMP PR3;
AJMP PR4;
AJMP PR5;
AJMP PR6;
AJMP PR7;
AJMP PR8;