0 Abstract
7
2各个模块的特性及结构
基于我们的实验目标:借助51单片机来实现基本的时分秒的电子钟。将由两大模块组成:8051单片机控制模块和LED显示模块。
2.18051单片机模块
MCS-51单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。如果按功能划分,它由如下功能部件组成,即微处理器(CPU)、数据存储器(RAM)、程序存储器(ROM/EPROM)、并行I/O口、串行口、定时器/计数器、中断系统及特殊功能寄存器(SFR)。它们都是通过片内单一总线连接而成,其基本结构依旧是CPU加上外围芯片的传统结构模式。但对各种功能部件的控制是采用特殊功能寄存器(SFR)的集中控制方式
8051单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
1)电源:
⑴ VCC - 芯片电源,接+5V ⑵ VSS - 接地端
2)时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。 3) 控制线:控制线共有4根,
⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲 ① ALE功能:用来锁存P0口送出的低8位地址
② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵ PSEN:外ROM读选通信号。 ⑶ RST/VPD:复位/备用电源。
① RST(Reset)功能:复位信号输入端。 ② VPD功能:在Vcc掉电情况下,接备用电源。 ⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。 ① EA功能:内外ROM选择端。
② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源
7
8
0 Abstract
Vpp。
4) I/O线
8051共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)如图2-1。
图2-1 8051引脚配置
2.2 LED显示模块
2.2.1 LED数码管的原理
在某些半导体材料的PN结构中,注入的少数载流子与多数载流子复合时,
会把多余的能量以光的形式释放出来,从而把电能直接转换为光能。PN结加反向电压,少数载流子难以注入,故不发光。这种利用注入式电导致发光的原理制作的二极管叫做发光二极管,通常为LED,全称为Light Emitting Diodo。.
LED数码管实际上是由七个发光管组成8字形构成的,加上小数点就是8
个,如图2-2所示,这些段分别由字母a,b,c,d,e,f,g,dp来表示,DP表示小数点。当数码管特定的段加上电压后,这些特定的段就会发亮,这样就可以看到不同的字样。发光二极管的阴极连接到一起连接到低电平的称为共阴极数码管,如图2-3所示,发光二极管的阳极连接到一起连接到电源正极的称为共阳极数码管,如图2-4所示。
8
0 Abstract
+5Vabcdefgdpgdpefabcd9
高电平驱动
低电平驱动
图2.2 数码管 图2.3 共阴极数码管 图2.4 共阳极数码管
各段码位的对应关系,如表2-1所示:
表2.1 码位对应关系
段码位 显示段
D7 Dp D6 g D5 f D4 e D3 d D2 c D1 b D0 a LED显示断码如表2.1所示:
表2.2 LED显示段码
字型 0 1 2 3 4 5 6 7 8 共阳极段码 共阴极段码 C0 H F9 H A4 H B0 H 99 H 92H 82 H F8 H 80 H 3F H 06 H 5B H 4F H 66 H 6D H 7D H 07 H 7F H 字型 9 A B C D E F 空白 P 共阳极断码 共阴极段码 90 H 88 H 83 H C6 H A1 H 86 H 84 H FF H 8C H 6F H 77 H 7C H 39 H 5E H 79 H 71 H 00 H 73 H 9
10
0 Abstract
根据我们所采用的8051单片机的特点,我们选用共阴极数码管。将8051的P0.0~P0.7通过74LS245芯片与共阴极数码管的a~p相连,高电平的位对应的LED数码管的段亮,低电平的位对应的LED数码管的段暗,这样,当P0口输出不同的段码,就可以控制数码管显示不同的字符。 1.1.1 LED数码管驱动方式
LED数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据LED数码管的驱动方式的不同,可以分为静态式和动态式两类。 1)静态显示驱动
静态驱动也称直流驱动。静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码经二-十进制译码器译码进行驱动。静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 2)动态显示驱动
LED数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划“a,b,c,d,e,f,g,dp”的同名端连在一起,通过控制每个数码管的公共极COM位选通控制电路,即可选定要点亮的数码管,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流的控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。利用人的视觉暂留现象及发光二极管的余辉效应,实际上各位数码管并非同时点亮,但只要扫描的速度足够快,一般扫描频率大于人眼能分辨出的频率50Hz即可,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。
1.2 电子钟的实现框图
电子钟的实现原理框图如图2-6所示,它由单片机8051、电源、时分显
示部分组成。对于电源部分,一部分是220V的电压通过变压整流稳压来得到数
10
0 Abstract
11
字系统所需要的+5V电压,以维持系统的正常工作,实际设计操作中,我们采用现成的控制平台。对于时分显示部分,我们采用动态扫描,以降低对单片机端口数的要求,同时也可降低系统的功耗。时分秒显示模块以及显示驱动都将通过8051单片机的I/O口控制[10],[11],[12]。
图2.6 电子钟系统原理框图
11