break就是用来跳出循环的,去掉这句就好了,while后面括号里的是循环条件,你写1的话就是死循环,除非用break跳出来。另外你的else语句写错了,else后面没括号,直接写不符合if和else if条件的时候执行的语句
成都创新互联主营岳阳楼网站建设的网络公司,主营网站建设方案,成都App定制开发,岳阳楼h5微信小程序开发搭建,岳阳楼网站营销推广欢迎岳阳楼等地区企业咨询
1、首先要写入单片机的头函数,定义单片机P1口的8个管脚,让他们分别代表流水灯的8个led。
2、写一个大约一小时的延时函数,为了清楚的看到流水灯的、效果。
3、下面是流水灯的主函数,流水灯一个点亮后一个熄灭反复循环点亮熄灭。
4、这样流水灯就可以反复循环了。把程序下到仿真软件或者是开发板,进行仿真即可完成。
这样的程序是不循环的 但编译后就是一个while循环了 和单片机没关的,不相信的话你可以把你这个程序用汇编翻译了后就不会循环了但会出现乱码。程序一定要有循环不然就跑飞了。可以这样
#includereg52.h
sbit p1_1=P1^4; //P1^4连接一个发光二极管
int i;
void main()
{
p1_1=0; //发光二极管点亮
i=50000; //延时
while(i--);
p1_1=1; //发光二极管熄灭
i=50000; //延时
while(i--);
while(1);//无限循环
}
加上一个死循环,就停住了:
main()
{
unsigned char i;
while(1)
{
for(i=0;i8;i++)
{
P1=table[i];
delay();
}
while(1);//--停在这里
}
}