永发信息网

单片机用汇编做一个控制8个LED灯泡从左到右依次点亮,最后全部亮,再全部熄灭后重复前面的过程

答案:2  悬赏:0  手机版
解决时间 2021-11-23 11:00
  • 提问者网友:温旧梦泪无声
  • 2021-11-23 05:11
单片机用汇编做一个控制8个LED灯泡从左到右依次点亮,最后全部亮,再全部熄灭后重复前面的过程
最佳答案
  • 五星知识达人网友:孤独的牧羊人
  • 2021-11-23 05:22
楼主要的是汇编程序。
是 51 单片机吗?
汇编程序如下:
;--------------------
ORG 0000H
MOV A, #7FH
LOP:
MOV P0, A
CALL DELAY
CLR C
RRC A
CJNE A, #0, LOP
MOV P0, A ;全亮
CALL DELAY
MOV P0, #255 ;全灭
CALL DELAY
SJMP 0000H ;重复前面的过程
;--------------------
DELAY:
;延时子程序,请楼主自己编写。
;因为,晶振频率和延时时间,楼主都没有给出。
RET
;--------------------
END
全部回答
  • 1楼网友:大漠
  • 2021-11-23 06:40

#include

#include

#define uchar unsigned char

#define uint unsigned int

//延时

void DelayMS(uint x)

{

uchar i;

while(x--)

{

for(i=0;i<120;i++);

}

}

//主程序

void main()

{

uint s;

while(1)

{

P0=0xfe;

DelayMS(150);

for(s=8;s>1;s--)


 

 {

 P0=_crol_(P0,1); //P0 的值向左循环移动

 

 DelayMS(150);


 

 }

 P0=0x00;

 

 DelayMS(150);

 

 P0=0xff;

 

 DelayMS(150);

 }

}

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯