使用51单片机实现静态数码管显示

51单片机静态数码管显示

数码管介绍

数码管是一种简单、廉价的显示器,是由多个发光二极管封装在一起组成“8”字型的器件。

 

数码管引脚定义

数码管从上右下左中有ABCDEFGDP,共10个引脚,其中3、8号引脚是连接到所有二极管的阴极,A二级管对应7号和38号引脚,B二极管对应6号和38号引脚。所有阴极连接到一起的叫共阴数码管。所有阳极连接到一起的叫共阳数码管。

单数码管

 

四个一体数码管

四个一体数码管的每个数码管的共阴或共阳极连接到一起,占用一个引脚。其他二极管引脚的每段对应的连接到一起,占用8个引脚。

 

 

动态数码管显示

四位一体的数码管每一时刻4个位置的数字只能同时显示相同的数字,我们可以利用人眼时间差在每个位置的数码管中显示不同的数字,达到4个数码管显示不同的数字。例如A时刻第一个数码管显示1其他不显示,B时刻第二个数码管显示2其他不显示,C时刻第三个显示3其他不显示,D时刻第四个显示4其他不显示,由于单片机运行速度块,所以我们肉眼看到的是四个数码管同时显示了1234,达到四位数码管同时显示不同的数字的目的。

138译码器

138译码器是将3个引脚转换为8个引脚的一个器件。它由3个引脚组合排列决定8个引脚如何输出高低电平,如下图所示,共8种组合。主要目的是节约引脚。

输入A

输入B

输入C

输出

0

0

0

Y1

0

0

1

Y2

0

1

0

Y3

0

1

1

Y4

1

0

0

Y5

1

0

1

Y6

1

1

0

Y7

1

1

1

Y8

010对应3号输出引脚。如果ABC给010,则3号引脚有效,则3号引脚为0低电平,其他引脚为默认高电平。

 

双向数据缓冲器74HC245

双向数据缓冲器的作用是将单片机引脚的输出信号放大给数码管,因为数码管要求的电流要大些,才能驱动数码管显示。双向数据缓冲器从电源上吸取能量加上单片机的信号从而驱动数码管的显示。

VDD:接电源正极

GND:接电源负极

OE:控制整个芯片是否工作,接低电平表示工作。

DIR:控制输入从左到有,还是从右到左。

 

例子点亮数码管数字6

#include <REGX52.H>

void main()
{
	P2_2 = 1;
	P2_3 = 0;
	P2_4 = 1;
	
	P0 = 0x7D;
	while(1){
			
	}
}

物联沃分享整理
物联沃-IOTWORD物联网 » 使用51单片机实现静态数码管显示

发表评论