数码管介绍
数码管简介
**数码管是一种半导体发光器件,其基本单元是发光二极管。**数码管也称 LED数码管,不同行业人士对数码管的称呼不一样,其实都是同样的产品。数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,也就是多一个小数点(DP),这个小数点可以更精确的表示数码管想要显示的内容;按能显示多少个(8)可分为 1 位、2 位、3 位、4 位、5 位、6 位、7 位等数码管。按发光二极管单元连接方式可分为共阳极数码管和共阴极数码管。
- 共阳极数码管:是指将所有发光二极管的阳极接到一起形成公共阳极(COM)的数码管,共阳数码管在应用时应将公共极COM 接到+5V,当某一字段发光二极管的不亮。阴极为低电平时,相应字段就点亮,当某一字段的阴极为高电平时,相应字段就不亮
- 共阴极数码管:是指将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管,共阴数码管在应用时应将公共极 COM 接到地线 GND 上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮,当某一字段的阳极为低电平时,相应字段就不亮。
数码管显示原理
不管将几位数码管连在一起,数码管的显示原理都是一样的,都是靠点亮内部的发光二极管来发光,数码管内部电路如下图所示:
从上图可看出,一位数码管的引脚是 10 个,显示一个 8 字需要 7 个小段,另外还有一个小数点,所以其内部一共有 8 个小的发光二极管,最后还有一个公共端,多数生产商为了封装统一,单位数码管都封装 10 个引脚,其中第 3 和第 8 引脚是连接在一起的。而它们的公共端又可分为共阳极和共阴极
共阴极数码管
对共阴极数码来说,其8个发光二极管的阴极在数码管内部全部连接在一起,所以称“共阴”,而它们的阳极是独立的,通常在设计电路时一般把阴极接地。当我们给数码管的任意一个阳极加一个高电平时,对应的这个发光二极管就点亮了。如果想要显示出一个8字,并且把右下角的小数点也点亮的话,可以给8个阳极全部送高电平,如果想让它显示出一个0字,那么我们可以除了给第“g, dp” 这两位送低电平外,其余引脚全部都送高电平,这样它就显示出0字了。
如果使用共阴数码管,需要注意增加单片机IO口驱动电流,因为共阴数码管是要靠单片机IO口输出电流来点亮的,但单片机I/O口难以输出稳定的、如此大的电流,所以数码管与单片机连接时需要加驱动电路,可以用上拉电阻的方法或使用专门的数码管驱动芯片,比如74HC573、74HC245等,其输出电流较大,电路接口简单。
数字 | 码值 |
---|---|
0 | 0x3F |
1 | 0x06 |
2 | 0x5B |
3 | 0x4F |
4 | 0x66 |
5 | 0x6D |
6 | 0x7D |
7 | 0x07 |
8 | 0x7F |
9 | 0x6F |
A | 0x77 |
B | 0x7C |
C | 0x39 |
D | 0x5E |
E | 0x79 |
F | 0x71 |
无显示 | 0x00 |
共阳极数码管
共阳极数码管其内部8个发光二极管的所有阳极全部连接在一起,电路连接时,公共端接高电平,因此我们要点亮哪个发光管二极管就需要给阴极送低电平,此时显示数字的编码与共阴极编码是相反的关系,数码管内部发光二极管点亮时,也需要5mA以上的电流,而且电流不可过大,否则会烧坏发光二极管。因此不仅要防止数码管电流过大,同时要防止流经数码管的电流集中到单片机时电流不能过大,否则会损坏主芯片。
数字 | 码值 |
---|---|
0 | 0xC0 |
1 | 0xF9 |
2 | 0xA4 |
3 | 0xB0 |
4 | 0x99 |
5 | 0x92 |
6 | 0x82 |
7 | 0xF8 |
8 | 0x80 |
9 | 0x90 |
A | 0x88 |
B | 0x83 |
C | 0xC6 |
D | 0xA1 |
E | 0x86 |
F | 0x8E |
无显示 | 0xFF |
一般共阳极数码管更为常用,为什么呢?
这是因为数码管的非公共端往往接在IC芯片的I/O上,而IC芯片的驱动能力往往是比较小的,如果采用共阴极数码管,它的驱动端在非公共端,就有可能受限于IC芯片输出电流不够而显示昏暗,要外加上拉电阻或者是增加三极管加大驱动能力。但是IC芯片的灌电流,即输入电流范围比较大。所以使用共阳极数码管的好处是:将驱动数码管的工作交到公共端(一般接驱动电源),加大驱动电源的功率自然要比加大IC芯片I/O口的驱动电流简单许多。另一方面,这样也能减轻主芯片的负担。
当前开发板上使用了一个共阳数码管作为静态数码管显示,下面给出共阴极和共阳极数码管的0-F段数据表,如下所示:
数码管静态显示原理
LED 数码管显示器工作方式有两种:静态显示方式和动态显示方式。静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示的字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止。这种方法的优点是占用CPU时间少,显示便于监测和控制。缺点是硬件电路比较复杂,成本较高,比如使用4个静态数码管,那么就得32个IO来控制,这对51单片机来说是无法承受的。
动态显示的特点是将所有数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的
硬件设计
开发板上的静态数码管模块电路如下图所示:
上图电路是静态数码管电路,模块独立,使用的是1个共阳数码管组成,即8位数码管的段选数据a-dp全部一起引出,数码管的位选即公共端直接接VCC,根据共阳数码管显示特点可知,只要保证数码管a-dp段输入电平为低电平即可点亮。由于使用的是共阳数码管,公共极接VCC,所以在数码管控制端可加一个限流电阻,阻值为470欧(471)
软件设计
本章所要实现的功能是:控制静态数码管显示数字0,即让P0端口输出数字0的段码0x3f(共阴)。
1 |
|