仿真图如下:
通过程序我们还可以用LED数码管显示各种各样的数据比如:学号,生日,密码等
代码:如下显示
说明:代码第四列 即
uchar code tablel [ ]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}
其中 {OXCO,OxF9,OxA4, OxB0,OX99,OX92,OX82,OxF8,0×80, 0×90} 分别对应 0,1,2,3,4,5,6,7,8,9.
可通过修改以上代码 更换 单片机显示数字.
例如: 1992 10 01 即只需要更改前八位显示代码即可(后两位不变) 1992 1001对应的是
(0×F9,0×90,0×90,0×A4,0×F9,0×C0,0×(0,0×F9,0×80,0×90(后两位不变)
需要显示什么数据只需该相应程序代码即可
代码(可复制)
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table1[]={0xA4, 0xC0, 0xC0,0xB0,0xF9,0xF9,0xA4,0x82,0x80,0x90};
uchar code table2[]={0x01, 0x02, 0x04,0x08, 0x10,0x20,0x40,0x80};
void DelayMS(uint x)
{ uchar i;
while(x--)
for(i=0;i<120; i++);
}
void main()
{ uchar k;
P0=0xFF;
P2=0x00;
while(1)
{ for(k=0;k<=7;k++)
{ P0=table1[k];
P2=table2[k];
DelayMS(2);
P0=0xFF;
}
}
}
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table1[]={0xA4, 0xC0, 0xC0,0xB0,0xF9,0xF9,0xA4,0x82,0x80,0x90};
uchar code table2[]={0x01, 0x02, 0x04,0x08, 0x10,0x20,0x40,0x80};
void DelayMS(uint x)
{ uchar i;
while(x--)
for(i=0;i<120; i++);
}
void main()
{ uchar k;
P0=0xFF;
P2=0x00;
while(1)
{ for(k=0;k<=7;k++)
{ P0=table1[k];
P2=table2[k];
DelayMS(2);
P0=0xFF;
}
}
}