来点颜色看看原文件是论坛找的,改了数组,
仿真和程序
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
单片机源程序如下:
- #include <AT89X52.H>
- unsigned char code taba[]={0x00,0x1C,0x24,0xC0,0x18,0x30,0x3C,0x00};
- unsigned char code tabb[]={0x0,0x1C,0x24,0xC,0x18,0x30,0x3C,0x0};
- /*void delay(void)
- {
- unsigned char i,j;
- for(i=10;i>0;i--)
- for(j=124;j>0;j--);
- } */
- void delay1(void)
- {
- unsigned char i,j,k;
- for(k=10;k>0;k--)
- for(i=20;i>0;i--)
- for(j=248;j>0;j--);
- }
- void main(void)
- {
- unsigned char i,j;
- while(1)
- {
- for(j=0;j<3;j++)//from left to right 3 time
- {
- for(i=0;i<8;i++)
- {
- P3=0x00;
- P0=taba[i];
- P1=taba[7-i];
- delay1();
- }
- }
- for(j=0;j<3;j++)//from right to left 3 time
- {
- for(i=0;i<8;i++)
- {
- P3=0x00;
- P0=taba[7-i];
- P1=taba[i];
- delay1();
- }
- }
- for(j=0;j<3;j++)//from top to bottom 3 time
- {
- for(i=0;i<8;i++)
- {
- P3=0x00;
- P0=tabb[i];
- P1=tabb[7-i];
- delay1();
- }
- }
- for(j=0;j<3;j++)//from bottom to top 3 time
- {
- for(i=0;i<8;i++){
- P3=0x00;
- P0=tabb[7-i];
- P1=tabb[i];
- delay1();
- }
- }
- }
- }
复制代码
所有资料51hei附件下载:
8X8 - 四灯同时亮.7z
(43.69 KB, 下载次数: 16)
|