仿真演示:
代码演示:
#include<reg52.h>
void delay(){
unsigned char i,j;
for(i=0;i<12;i++)
for(j=0;j<12;j++);
}
void main(){
unsigned char box[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0xe0,0x07,0xe0,0x07,
0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,0x80,0x01,
0xe0,0x07,0xe0,0x07,
0x00,0x00,0x00,0x00
};
unsigned char box3[]={
0x00,0x00,0x00,0x00,
0x3c,0x3c,0x7e,0x7e,0xfe,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0x7f,
0xfc,0x3f,0xf8,0x1f,0xe0,0x07,0xc0,0x03,0x80,0x01,
0x00,0x00,0x00,0x00
};
unsigned char box4[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x30,0x0c,0x30,0x0c,0x30,0x0c,0x30,0x0c,0x30,0x0c,0x30,0x0c,0x30,0x0c,0x30,0x0c,
0x60,0x06,
0x80,0x01,
0x00,0x00,0x00,0x00
};
unsigned char box2[]={
0x00,0X01,0x02,0x03,0x04,0x05,0x06,0x07,
0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f
};
unsigned char i;
while(1){
unsigned char o=0,p=1;
int num;
for(num=0;num<50;num++){
for(i=0;i<16;i++){
P1=box2[i];
P0=box[o];
P2=box[p];
o+=2;
p+=2;
delay();
}
o=0;p=1;
}
for(num=0;num<50;num++){
for(i=0;i<16;i++){
P1=box2[i];
P0=box3[o];
P2=box3[p];
o+=2;
p+=2;
delay();
}
o=0;p=1;
}
for(num=0;num<50;num++){
for(i=0;i<16;i++){
P1=box2[i];
P0=box4[o];
P2=box4[p];
o+=2;
p+=2;
delay();
}
o=0;p=1;
}
}
}
所用原理:
led灯接线
led灯频闪
led拼接