新手求指点~~~
#include <reg51.h>
#include <intrins.h>
#define ui unsigned int
#define uc unsigned char
void delay(ui);
uc aa;
void main()
{
aa=0xfe;
while(1);
{
P1=aa;
delay(500);
aa=_crol_(aa, 1);
}
}
void delay(ui xks)
{
ui i,j;
for(i=xks;i>0;i--)
for(j=110;j>0;j--);
上面的程序会变得时候只有一个警告,没理会,下载到单片机后发现没有工作,进入软件一步步运行发现,走到while的地方卡住了 它不往下走,难道是我的逻辑错误了吗?
while(1);//死循环 牡丹花下死做鬼 发表于 2014-2-1 21:57
不是复制的,自己敲得
危险的炸弹 发表于 2014-2-1 22:04 static/image/common/back.gif
不是复制的,自己敲得
????????
while(1);是死循环听不懂??? while没有退出条件,所以死循环 本帖最后由 危险的炸弹 于 2014-2-2 07:19 编辑
谢谢你的热心解答,之前我是手机端看的,没看到你写的指令。
但我就是要它进入循环程序不跳出来的,让它一直位移进行工作,求教,还有哪个语句能做到?
我之前用
i=1
while(i<=7)
........
.......
.......
i++
也进入不了循环体
单片机不懂,但是应该可以进入循环体 死循环啊。do whilefor都不行么?
都不行就用goto无条件跳转呗 这个肯定行 while(1);
{
P1=aa;
delay(500);
aa=_crol_(aa, 1);
}
改为: while(1)
{
P1=aa;
delay(500);
aa=_crol_(aa, 1);
}
也就是把while后面的饿分号去掉
页:
[1]