谁有这样的单片机流水灯程序:八个灯中有两个灯同时从两端相向点亮,交替循环。

来源:百度知道 编辑:UC知道 时间:2024/06/07 00:26:50
如果其他程序也行,最好能解释每句的意思,因为我还是菜鸟~拜托了!
怎么都用不得啊?我把这两个都放到kril生成.hex,但是还是用不了
我是菜鸟啊,什么都不懂.到底是有哪些东西不能放到keil里啊?

for(i=1;i<5;i++)//8个灯有2个同时运动,闪四次为一个周期
{
led=0xff;//变量清空,即默认全灭
led&=~(1<<i);//第一个灯置位
led&=~(1<<(9-i));//第二个灯置位
PORTA=led;//送出显示
}

#include<reg52.h>
unsigned char j,temp,x,a,b,m;
unsigned int i;
void delay()
{
for(i=1;i<=1500;i++)
{
for(j=1;j<=125;j++);
}
}
main()
{
temp=0x18;
while(1)
{
P1=~temp;
delay();
for(x=1;x<4;x++)
{
a=(temp&0xf0)<<x;
b=(temp&0x0f)>>x;
P1=~(a|b); delay();
}
}
}

更多在这里
http://ouravr.com/bbs/bbs_content.jsp?bbs_sn=986795&bbs_page_no=1&bbs_id=1006

org 0000h
loop: mov p1,#01111110b ;p1口的两端灯同亮
acall del300ms ;延迟300ms
mov p1,#10111101b ;p1口的两端灯内移
acall del3