通過控制引腳電位,控制LED燈
一:
定義I/O口式:
#include<reg52.h>
sbit Led0=P0^0;
sbit Led1=P0^1;
sbit Led2=P0^2;
sbit Led3=P0^3;
sbit Led4=P0^4;
sbit Led5=P0^5;
sbit Led6=P0^6;
sbit Led7=P0^7;
sbit Led8=P2^0;
sbit Led9=P2^1;
sbit Led10=P2^2;
sbit Led11=P2^3;
sbit Led12=P2^4;
sbit Led13=P2^5;
sbit Led14=P2^6;
sbit Led15=P2^7;
void delay(void)
{
unsigned char a,b;
for(a=0;a<200;a++)
for(b=0;b<200;b++);
}
void main()
{
while (1)
{
Led0=0;
delay();
Led0=1;
delay();
Led1=0;
delay();
Led1=1;
delay();
Led2=0;
delay();
Led2=1;
delay();
Led3=0;
delay();
Led3=1;
delay();
Led4=0;
delay();
Led4=1;
delay();
Led5=0;
delay();
Led5=1;
delay();
Led6=0;
delay();
Led6=1;
delay();
Led7=0;
delay();
Led7=1;
delay();
Led8=0;
delay();
Led8=1;
delay();
Led9=0;
delay();
Led9=1;
delay();
Led10=0;
delay();
Led10=1;
delay();
Led11=0;
delay();
Led11=1;
delay();
Led12=0;
delay();
Led12=1;
delay();
Led13=0;
delay();
Led13=1;
delay();
Led14=0;
delay();
Led14=1;
delay();
Led15=0;
delay();
Led15=1;
delay();
}
}
二、數組式:
#include<reg51.h>
unsigned char table[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F}£»
void delay (1000)
{
unsigned char a,b;
for(a=0;a<200;a++)
for(b=0;b<200;b++);
}
void main()
{
unsigned char i;
while(1)
{
for(i=0;i<8;i++);
{
P0=table[i ];
delay();
}
}
}
|