#include <REGX52.H>
#include<intrins.h>
void delay(unsigned int i)
{
while(i--);
}
void main()
{
unsigned char LED=0;
while(1)
{
if(P3_1==0)
{
delay(20);
while(P3_1==0);
delay(20);
LED++;
P2=~LED;
}
}
}
这个LED显示二进制最主要的就是需要将LED++;P2=~LED;弄清楚。
LED在代码中依然是以日常中的数字形式所进行表达,也就是10进制,而P2则是将LED从10进制转换成二进制,并且进行“按位取反”即可。然后将代码从头至尾运算一遍就可以明白。