
一键多空流水灯汇编语言程序编写方法是:设置一个变量,来检测按键的次数,从而控制程序分支来达到控制不同流水灯的效果例如:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV R6,#0FEH
MOV R7,#0
LOOP:
JB P10,LOOP1
JNB P10,$
INC R7
CJNE R7,#2,LOOP1
MOV R7,#0
LOOP1: ;奇数次按键左向流水灯
MOV A,R7
JNZ LOOP2
MOV A,R6
MOV P0,A
RL A
MOV R6,A
LCALL DELAY
SJMP LOOP
LOOP2: ;偶数次按键右向流水灯
MOV A,R6
MOV P0,A
RR A
MOV R6,A
LCALL DELAY
LJMP LOOP
DELAY:
MOV R2,#200
DL1:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DL1
RET
END
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV R2,#8
MOV A,#0FEH
LOOP1:
MOV P1,A
CLR C
RLC A
LCALL DELAY
DJNZ R2,LOOP1
MOV R2,#8
MOV A,#80H
LOOP1:
MOV P1,A
SETB C
RRC A
LCALL DELAY
DJNZ R2,LOOP1
SJMP MAIN
DELAY:
MOV R2,#200
DLY:
MOV R3,#250
DJNZ R3,$
DJNZ R2,DLY
RET
END
程序为:p0和p1流水灯
MOV R4,#0FFH;
MOV A ,#80H ;
MAIN:MOV P0 ,A ;
RR A ; RR A 累加器循环右移
LCALL DELAY ;
JB P00,D3; ;JB bit,rel 如果直接寻址位为1 则转移
LJMP MAIN ;
D3:MOV P0,R4 ;
MOV A ,#80H ;
D4:MOV P1,A;
RR A ;RR A 累加器循环右移
LCALL DELAY ;
JNB P10,D4 ; JNB bit,rel 如果直接寻址位为0 则转移
MOV P1,R4 ;
LJMP MAIN;
DELAY:MOV R7 ,#250 ;
D1:MOV R6 ,#250 ;
D2:DJNZ R6,D2 ;
DJNZ R7,D1 ;
RET ;
END
以上就是关于一键多控流水灯汇编语言怎么写,软件是keil全部的内容,包括:一键多控流水灯汇编语言怎么写,软件是keil、如何用汇编语言使流水灯(8个灯)从左向右依次点亮且不灭,之后从右往左依次熄灭程序步骤越多越好、求KEIL软件用汇编语言编流水灯等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)