#include <reg51.h>
void delay(unsigned int i);
main()
{
while(1)
{
P2=0x00;
delay(600);
P2=0xff;
delay(600);
}
}
void delay(unsigned int i)
{
unsigned char j;
for(;i>0;i--)
for(j=255;j>0;j--);
}
和另一个程序
#include <reg51.h>
void delay(unsigned int i);
main()
{
P2=0x00;
delay(600);
P2=0xff;
delay(600);
}
void delay(unsigned int i)
{
unsigned char j;
for(;i>0;i--)
for(j=255;j>0;j--);
}
为什么;俩个程序烧录到
单片机的结果是一样的呢 led灯一直闪 没有循环的不应该只闪一次吗?
main()
{
P2=0x00;
delay(600);
P2=0xff;
delay(600);
while(1)
{
}
}
程序2把第二行语句去掉!
{
P2=0x00;
delay(600);
P2=0xff;
delay(600);
while(1)
{
}
}
因为不加while语句 main函数中的语句带动led会跑飞 导致程序跳出 按已记住的动作执行!!
为什么会从头再执行呢?
一周热门 更多>