静态显示是每个数码管的段选必须接一个8位数据线来保持显示的字形码,当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。
静态显示的优点是占用CPU时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高。
本次设计是实现两个共阳极数码管显示固定的数字5和9,电路连接如图。注意,P0口需要接上拉电阻后再接到数码管。
本设计的程序如下:
代码语言:javascript复制#include<reg51.h> //包含51单片机寄存器定义的头文件
/*******************************************
函数功能:静态显示数字“59”
共阳数码管编码表
0xc0 0xf9 0xa4 0xb0 0x99 0x92
0 1 2 3 4 5
0x82 0xf8 0x80 0x90 0x88 0x83
6 7 8 9 A B
0xc6 0xa1 0x86 0x8e
C D E F
******************************************/
void main(void)
{
P0=0x92; //将数字5的段码送P0口
P1=0x90; //将数字9的段码送P1口
while(1) ; //无限循环,防止程序跑飞
}