当前位置:编程学习 > 汇编语言 >>

问下单片机汇编高手~这个程序为啥不能让P1.0到P1.7的灯循环点亮呢?

ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV A,#0FFH LOOP: MOV P1,A LCALL DELAY RL A LJMP LOOP DELAY: MOV R7,#20H D1: MOV R6,#0FFH D2: MOV R5,#0FFH DJNZ R6,D2 DJNZ R7,D1 RET END
答案:ORG 0000H
LJMP MAIN

ORG 0030H
MAIN:
    MOV A,#0FEH      ;全1怎么可以实现你得愿望
LOOP:
    MOV P1,A
    LCALL DELAY
    RL A
    LJMP LOOP
DELAY:
    MOV R7,#20H
D1: MOV R6,#0FFH
D2: MOV R5,#0FFH
    DJNZ R6,D2
    DJNZ R7,D1
RET
END
其他:LOOP:
    MOV P1,A
    LCALL DELAY
    RL A
    LJMP LOOP这个右移如果是11111111一次111111110再1111111100.。。。111111000
你说后面变000000000怎么办,移位后加1(低电平有效)试试 

上一个:求一个开始延时三秒后灯亮的汇编程序
下一个:汇编语言2.2

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,