一个简单的单片机程序

来源:百度知道 编辑:UC知道 时间:2024/07/05 14:46:01
谁能给我解释一下这个单片机的程序啊,谢谢了.能逐句翻译最好

#include <REG2051.H>

void delay(unsigned char a) {
unsigned char b=0;
for(b=0;b>=a;b++);
}

void main (void){
P1=0xff;
P3=0xff;
while(1){
while(P3_0==1);
delay(255);
while(P3_0==0);
P1=0xfb;
while(P3_0==1);
delay(255);
while(P3_0==0);
P1=0xf3;
while(P3_0==1);
delay(255);
while(P3_0==0);
P1=0xe3;
while(P3_0==1);
delay(255);
while(P3_0==0);
P1=0xff;
}
}
while(1){
是什么意思呢?

#include <REG2051.H>

void delay(unsigned char a) {
unsigned char b=0;
for(b=0;b>=a;b++);
} //延时函数

void main (void){
P1=0xff;
P3=0xff;
while(1){
while(P3_0==1);//当等于1时,执行下面的延时
delay(255);
while(P3_0==0); //当等于0时,执行下面的P1=0xfb
P1=0xfb;
while(P3_0==1); //当等于1时,执行下面的延时
delay(255);
while(P3_0==0); //当等于0时,执行下面的P1=0xf3
P1=0xf3;
while(P3_0==1); //当等于1时,执行下面的延时
delay(255);
while(P3_0==0); //当等于0时,执行下面的P1=0xe3
P1=0xe3;
while(P3_0==1); //当等于1时,执行下面的延时
delay(255);
while(P3_0==0); //当等于0时,执行下面的P1=0xff
P1=0xff;
}
}

while(1)就是后面的要一直循环,1就是永远是对的,就一直循环。。不是1就跳出循环