#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table1[]={0x20,0x40,0x3F,0x7E,0x48,0x90,0x85,0x08,0x01,0x00,0x7F,0xFE,0x40,0x02,0x9F,0xE4,
0x10,0x20,0x1F,0xE0,0x10,0x00,0x1F,0xF0,0x10,0x10,0x10,0x10,0x1F,0xF0,0x10,0x10};/*"管",0*/
sbit E1=P3^0;
sbit LE1=P3^1;
sbit LE2=P3^2;
uint aa=0;
void delay(uint z)
{
uint t1,y;
for(t1=z;t1>0;t1--)
for(y=110;y>0;y--);
}
void main()
{
P2=0; //
P1=0; //
E1=0; // 关闭154输出 【E1,E2为H电平 】输出全部为H电平
LE1=0;// U1--573锁存
LE2=1; //U2--573锁存
while (1)
{
if (aa==16) aa=0; // 循环到16回零
E1=1; // 先关闭154 预防有闪烁
P1=table1[aa*2]; // 把数组第一赋予P1口 左边字节{(aa*2)意思【管字】分为左边字体一个字节 ,分为右边字体一个字节}
LE1=1; // 打开U1--573锁存 【左边的573】
LE1=0; // 关闭 U1--573锁存 【左边的573】
P1=table1[aa*2+1]; //把数组第一赋予P1口 右边字节{(aa*2)意思【管字】分为左边字体一个字节 ,分为右边字体一个字节 }
LE2=1; // 打开U2--573锁存 【左边的573】
LE2=0; // 关闭 U2--573锁存 【左边的573】
P2=aa; // 把变量赋予P2口 为154 ,的4变16 输入端提供数据
E1=0; // 打开154的输出控制端
delay(5);
aa++; //
}
} |