基于单片机的多功能数字钟设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

-
《测控系统原理与设计》课程设计报告
班级测控1082班学号1081203202
学生姓名
指导教师
淮阴工学院
电子与电气工程学院
2011年12月
目录
第1章绪论 (4)
1.1 前言 (4)
1.2 设计的目的及意义 (4)
第2章数字钟的功能实现与设计方案 (5)
2.1 数字钟的功能及设计要求 (5)
2.2 数字钟的实现形式 (5)
2.3 方案的确定 (5)
2.3.1 微处理器 (6)
2.3.2 显示电路 (6)
2.3.3 按键电路 (6)
第3章数字钟的硬件系统设计 (7)
3.1数字时钟的硬件系统框架 (7)
3.2 数字时钟的主机电路设计 (7)
3.2.1系统控制芯片CPU(AT89C2051)的选择 (7)
3.2.2系统时钟电路设计 (12)
3.2.3 系统复位电路设计 (14)
3.2.4 按键与按钮电路设计···················- 15 -
3.2.5闹铃声光指示电路设计··················- 16 -
3.2.6 数字钟的显示电路设计··················- 16 -
3.3 电源设计 (19)
第4章程序设计···························- 24 -
4.1 主控模块设计·························- 24 -
4.2 基本现实模块设计·······················- 25 -
4.3 当前编辑位闪烁功能的实现···················- 26 -
4.4时间设定模块设计·······················- 26 -
4.5 脉冲发生器原理与走时处理···················- 27 -
4.6 闹铃功能的实现 (27)
第5章系统的调试及结果 (29)
5.1 系统调试环境 (29)
5.2 软件调试 (29)
5.3 硬件调试 (29)
5.4 调试结果 (29)
结论······························- 31 -参考文献······························- 32 -
第1章绪论
1.1前言
计算机尤其是以微细加工技术支持的微型计算机技术飞速发展,其应用渗透到了各行各业。

以单片机、嵌入式处理器、数字信号处理器(DSP)为核心的计算机系统,以其软硬件可裁剪、高度的实时性、高度的可靠性、功能齐全、低功耗、适应面广等诸多优点而得到极为广泛的应用。

目前计算机硬件技术向巨型化、微型化和单片机化三个方向告诉发展[1]。

自1975年美国德州仪器公司(Texas
Instruments)第一块微型计算机芯片TMS-1000问世以来,在短短的20年间,单片机技术已发展成为计算机领域一个非常有前途的分之,它有自己的技术特征、规范和应用领域。

单片机是自动控制系统的核心部件,主要用于工业控制、智能化仪器仪表、家用电器中。

它具有体积小、性能突出可靠性高(某些方面的性能指标大大优于通用微机中央处理器)、价格低廉等一系列优点,应用领域不断扩大,除了工业控制、智能化仪表、通信、家用电器外,在智能化高档电子玩具产品中也大量采用单片机芯片作为核心控制部件,已经渗入到人们工作和生活的各个角落,有力地推动了各行业的技术改造和产品的更新换代,前景广阔。

数字钟具备单片机最小系统的基本组成,对于我们了解单片机有很大的帮助[2]。

1.2 设计的目的及意义
本设计通过用对一个能实现定时,时钟显示功能的时间系统的设计学习,详细介绍了51单片机应用中的数据转换显示,数码管显示原理,静态扫描显示原理,单片机的定时中断原理等,从而达到学习、了解单片机相关指令在各方面的应用。

对于单片机学习者而言,这个程序基本上是一道门槛,掌握了电子钟程序,基本上就可以说把51单片机掌握了80%。

第2章数字钟的功能实现与设计方案
2.1 数字钟的功能及设计要求
(1)可以实现时/分/秒/百分秒的显示,可以调整时/分
(2)使用LED显示
(3)有表示时钟正常工作的装置
(4)能稳定工作,可控制时钟的启动复位
(5)有实现闹铃功能
2.2 数字钟的实现形式
数字钟既可以通过纯硬件实现,也可以通过软硬结合实现,根据电子时钟的核心部件——秒信号的产生原理,通常有三钟形式:
(1)用NE555时基电路的形式
(2)采用石英钟专用芯片的实现形式
(3)采用基于单片机的实现形式
利用单片机的智能性,可方便的实现具有智能数字钟的设计。

而且,微处理系统具有时钟振荡系统,利用系统时钟并借助微处理器的定时/计数器功能可以实现数字钟的功能。

本设计采用AT89C2051单片机设计。

2.3 方案的确定
可以从以下几个方面来确定电子闹钟的设计方案。

2.3.1 微处理器
采用ATMEL的AT89C2051微处理器,是基于以下几个因素:
①内含Flash 存储器,这在系统的开发过程中,可随意进行程序修改,既便错误编程之后仍可以重新编程,故不存在废品且大大缩短了程序的开发周期;同时在系统工作过程中能有效地保存数据信息。

②采用静态时钟方式,节省电能,这对于降低便携式产品的功耗十分有利。

③由于它是以8031 核构成的,所以它与MCS251 系列单片机是兼容的④AT89C2051为51内核,仿真调试软硬件资源丰富;⑤性价比高,货源充足;⑥DIP20封装,体积小,便于产品小型化;⑦为E2PROM程序存储介质,1000次以上擦/写周期,便于变成调试;⑧具有IDLE和POWER-DOWN两种工作模式,便于进行低功耗设计;⑨工作电压范围宽:2.7~6V,便于交直流供电[5]。

2.3.2 显示电路
就时钟而言,通常可采用液晶显示或数码管显示。

对于一般的段式液晶屏,需要专门的驱动电路,而且也经显示作为一种被动显示,可视性相对较差;对于具有驱动电路和微处理器接口的液晶显示模块(字符或点阵),一般多采用并行机接口,对于微处理器的接口要求较高,占用资源多。

另外,89C2051本身没有
专门的液晶驱动接口,因此,本时钟设计采用了数码管显示方式。

数码管作为一种主动显示器件,具有亮度高、价格便宜等优点,而且市场上也有专门的时钟显示组合数码管。

2.3.3 按键电路
考虑到对时和设定闹铃时间这两种操作的使用频率不是很高,为了精简系统和节省成本,本时钟系统只设两个按键:
(1)SET键,对应系统的不同工作状态,具有三个功能:
●在复位后的待机状态下,用于启动设定时间参数(对时和定闹);
●在设定时间参数状态而且不是设定最低位(即分个位)的状态下,用于
结束当前位的设定,当前设定为下移;
●在设定最低位(分个位)的状态下,用于结束本次时间设定。

(2)+1键,用于对当前设定位(编辑位)进行加1操作,根据12/24小时工作模式和正在编辑的当前位的含义(时十位、时各位、分十位、分个位)自动进行数据的上限和下限判断。

例如,对12小时制,小时的十位只能是0、1,如果当前值为0,则按+1键后为1,再按+1键后为0。

第3章数字钟的硬件系统设计
电子时钟硬件部分的设计应包括秒信号发生器、时间显示电路、按键电路、供电电路,以及闹铃指示电路等几部分。

3.1 数字时钟的硬件系统框架
电子时钟的系统框架入图3-1所示。

3.2 数字时钟的主机电路设计
数字时钟的主电路指的是图1中框内部分,主要涉及到微处理器电路和按键县按钮电路。

主机的设计具体地说有:(1)系统控制芯片的选择(2)系统时钟电路设计;(3)系统复位电路设计;(4)按键与按钮电路设计;(5)闹铃声光指示电路设计。

3.2.1 系统控制芯片CPU(AT89C2051)的选择
AT89C系列单片机是Atmel公司1993年开始研制生产的,优越的性能价格比使其成为颇受欢迎的8位单片机。

AT89C系列与MCS-51系列单片机相比有两大优势:第一,片内程序存储器采用闪速存储器,使程序的写入更加方便;第二,提供了更小尺寸的芯片(AT89C2051/1051),使整个电路的体积更小[6]。

(1)AT89C2051主要性能:
AT89C2051是Atmel公司生产的戴2KB闪速可编程可擦除只读存储器(PEROM)的8位单片机,它具有如下主要特征:
○1AT89C2051为51内核;
○2内部带2KB可编程闪速存储器(E2PROM),寿命为1000次擦/写循环,据保留时间为10年;
○3DIP20封装,体积小
○4工作电压范围为2.7~6V;
○5全静态工作频率为0Hz~24Hz;
○6两极程序存储器锁定;
○78
128 位内部RAM;
○815条可编程I/O线;、
○92个16位定时器/计数器;
○105个两级终端源;
○11可编程全双工串行UART通道;
○12直接对LED驱动输出
○13片内精确的模拟比较器;
○14片内振荡器和时钟电路;
○15低功耗的休眠和掉电模式;
(2)AT89C2051内部结构及引脚描述
AT89C2051单片机的内部与8051单片机的内部结构基本一致,区别只是增加了一个模拟比较器[7],减少了两个对外的端口(P0、P2口),输出端口P1、P3有独特的功能。

AT89C2051减少了两个外部端口,因而芯片的外部引脚可以大大减少,芯片尺寸可以很小,其引脚配置如图3-2所示。

图3-2 AT89c2051引脚配置
它是一个有20个引脚排列直插式的芯片,其引脚描述如下:
V
:电源电压;
CC
GND:接地;
RST:复位输入。

当RST变为高电平并保持2个机器周期时,所有I/O引脚复位至高阻状态。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡放大器的输出。

P1口:8位双向I/O口,引脚P1.1和P1.2需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1)[8]。

P1口输出缓冲器能接收20mA电流,并能直接驱动LED显示器;P1口引脚写入“1”后,可用作输入。

在闪速编程和编程校验期间,P1口也可接收编码数据。

P3口:引脚P3.0~P3.5与P3.7为7个带内部上拉的双向I/O引脚。

P3.6在内部已与片内比较器输出相连,不能作为通用I/O引脚访问。

P3口的输出缓冲器能接收20Ma电流;P3写入“1”后,内部上啦,可用作输入。

P3口也可用作特殊功能口,其功能见表3-1。

P3口同时也可为闪速存储器编程和编程校验接收控制信号[9]。

表3-1 P3口引脚的特殊功能
从上述引脚说明看出,AT89C2051没有提供外部扩展存储器与I/O设备所需的地址、数据、控制信号,因此利用AT89C2051构成的单片及应用系统不能在AT89C2051之外扩展存储器或I/O设备,也即AT89C2051本身即构成了最小的单片机系统。

(3)振荡器
振荡器特征:XTAL1和XTAL2分别构成片内振荡器的反相放大器的输入和输出端,如图3-3所示。

可采用石英晶体或陶瓷振荡器组成振荡器。

要从外部时钟源驱动AT89C2051,则XTAL2应悬空,而XTAL1的驱动如图3-4所示。

由于输入
到内部时钟电路经过一个二分频触发器,故不需要对外部时钟信号的工作周期提
出特殊要求,但它必须遵守最小和最大电压高低电平的时间规范。

图3-3 振荡的外部连接方法
图3-4 外部时钟驱动结构
(4) 特殊功能寄存器SFR
与8051单片机特殊功能寄存器相对应,AT89C2051片内设置了19个特殊功
能寄存器,统称为特殊功能寄存器块SFR ,它们的地址散布在80H ~0F0H 区域内。

(5)低功耗工作模式
AT89C2051优良中低功耗工作模式:待机方式与掉电方式。


1 待机方式(休眠方式) 当利用软件使待机方式位ADL (PCON.0)=0时,单片机进入空闲方式。


时,CPU 处于休眠状态,而片内所有其它外围设备都保持工作状态,片内RAM
和所有特殊功能寄存器内容保持不变。

在待机方式下,当晶振f osc =12MHz ,电源电压V CC =6V 时,电源电流I CC 从20Ma
降至5Ma;而V
CC
由5.5mA降至1mA。

中断或硬件复位可以终止待机方式。

当待机方式由硬件复为终止时,CPU要从休眠处恢复程序的执行,执行2的周期后,内部复位电路才起作用。

此时,硬件禁止访问内部RAM,但允许访问端口引脚。

为了防止休眠被复位终止时对端口以外写入的可能性,在生成待机方式的指令后不应紧跟对端口引脚的写指令。

如果不采用外部上拉,P1.0和P1.1应置“1”。

○2掉电方式
掉电方式由掉电方式位PD(PCON.1)=1摄制。

此时振荡器停止工作,设置掉电方式的指令成为最后执行的一条指令,片内RAM和特殊功能寄存器内容保持不变。

在掉电模式下,V
Ccmin =2V。

当V
CC
=6V时,I
CCmax
=100μA;当V
CC
=3时,I
Ccmax
=20μA。

退出掉电方式的唯一方式是硬件复位。

硬件复位将重新定义特殊功能寄存器,但不影响片内RAM。

复位的保持时间应足够长,以便振荡器能重新开始工作并稳定下来。

在V
CC
没有恢复得到正常工作电压之前,不应进行复位。

如果不采用外部上拉,P1.0和P1.1应置“0”,否则置“1”。

(6)闪速存储器的编程
AT89C2051单片机内部有2KB的闪速存储器阵列,一片新的AT89C2051,其存储阵列处于擦除状态(FFH),此时可对其编程,存储阵列一次编程1字节,若编程任何非空字节时,需对整个存储阵列进行片擦除[10]。

编程时,AT89C2051利用内部存储器地址计数器提供寻址存储器的地址信号,RST上升沿将该地址计数器复位至000H,引脚XTAL1所施加的正向脉冲使地址
计数器不断加1。

[11]RST上出现12V(编程电源V
PP
)高压时,预示着1字节的编程操作开始,这时P3口提供编程所需的控制与状态信号,P1口为数据通道。

(7)在线编程
AT89C2051编程时需要利用RST、XTAL1、P1口、P3口提供控制信号与加载编程数据,而这一要求又常与用户系统对这些引脚的要求或操作冲突。

因此,在线编程不能直接在用户工作电路中进行,而要通过特殊电路处理才能实现。

例如图3-5所示为在线编程的示例,其采用2选1的方法实现连接线路的切换,达到在线编程的目的。

利用微动开关SW来选择XTAL1的加载,产生选择控制信号Select,
其它线路的切换用2选1器件74LS157与三态缓冲器74LS244实现。

当AT89C2051正常工作时,选择控制信号(Selecg=0)控制所有的74LS157输入A端与输出Y 接通,且74LS244-1输出有效,74LS244-2三态输出,使得AT89C2051可以对用户电路进行控制操作;当AT89C2051需要编程时,选择控制信号(Select=1)控制所有的74ALS157输入B端与输出Y端接通,且74LS244-1三态输出,74LS244-2输出有效,使得
3.2.2 系统时钟电路设计
系统利用晶体振荡器作为时钟电路,根据晶振的不同使用要求及特点,通常分为以下几类:普通晶振、温补晶振、压控晶振、温控晶振等。

安装晶振时,应根据其引脚功能标识与应用电路应连接,避免电源引线与输出引脚相接输出。

在测试和使用时所供直流电源应没有足以影响其准确度的纹波含量,交流电压应无瞬变过程[12]。

测试仪器应有足够的精度,连线合理布置,将测试及外围电路对晶振指标的影响降至最低。

(1)普通晶振(PXO):是一种没有采取温度补偿措施的晶体振荡器,在整个温度范围内,晶振的频率稳定度取决于其内部所用晶体的性能,频率稳定度在10-5量级,一般用于普通场所作为本振源或中间信号,是晶振中最廉价的产品。

(2)温补晶振(TCXO):是在晶振内部采取了对晶体频率温度特性进行补偿,以达到在宽温温度范围内满足稳定度要求的晶体振荡器。

(3)恒温晶振(OCXO):采用精密控温,使电路元件及晶体工作在晶体的零温度系数点的温度上。

中精度产品频率稳定度为10-7~10-8,高精度产品频率稳定度在10-9量级以上。

主要用作频率源或标准信号。

(4)压控晶振(VCXO):是一种可通过调整外加电压使晶振输出频率随之
改变的晶体振荡器,主要用于锁相环路或频率微调。

压控晶振的频率控制范围及线性度主要取决于电路所用变容二极管及晶体参数两者的组合。

晶体振荡器选择参考标准:
(1)总频差:在规定的时间内,由于规定的工作和非工作参数全部组合而引起的晶体振荡器频率与给定标称频率的最大频差。

(2)温度稳定度:在标称电源和负载下,工作在规定温度范围内的不带隐含基准温度或带隐含基准温度的最大允许频偏。

(3)频率稳定预热时间:以晶体振荡器稳定输出频率为基准,从加电到输出频率小于规定频率允差所需要的时间。

(4)频率老化率:在恒定的环境条件下测量振荡器频率时,振荡器频率和时间之间的关系。

这种长期频率漂移是由晶体元件和振荡器电路元件的缓慢变化造成的,可用规定时限后的最大变化率(如±10ppb/天,加电72小时后),或规定的时限内最大的总频率变化(如:±1ppm/(第一年)和±5ppm/(十年))来表示。

(5)频率压控范围:将频率控制电压从基准电压调到规定的终点电压,晶体振荡器频率的最小峰值改变量。

(6)频率压控线性:与理想(直线)函数相比的输出频率-输入控制电压传输特性的一种量度,它以百分数表示整个范围频偏的可容许非线性度[7]。

本系统时钟电路的设计如图3-6。

对于实践要求不是很高的系统,图中电路设计就能使系统可靠起振并稳定运行。

在本系统的实际应用中特别注意了电容参数的选择(pF
10
30 ),并尽量保证电路的对称性(尽可能匹配),选用正派厂家生产的瓷片或云母电容,条件允许的话温度系数要尽可能低。

图3-6 振荡电路
3.2.3 系统复位电路设计
智能系统一般应有手动或上电复位电路。

复位电路的实现通常有两种形式:
即专用µp监控电路和RC复位电路。

前者电路实现简单,成本低,但复位可靠性相对较低;后者成本较高,但复位可靠性高,尤其是高可靠重复复位。

对于复位要求高,并对电源电压进行监视的场合,大多采用这种方式。

(1)专用µP监控电路
专用µP监控电路有称为电源监视电路,具有上电时可靠产生复位信号和电源电压跌落到“门槛值”时可靠产生复位信号等功能[17]。

按时效电平分,有高电平输出、低电平输出两种;按功能分,有简单的电源监视复位电路、带看门狗定时器(WATCH DOG Timer,WDT)的监控电路和WDT+E2PROM的监控电路等多种类型。

(2)RC复位电路
本系统采用的是RC复位方式。

RC复位电路的实质是一阶充放电电路,如图3-7:
图3-7 RC复位电路
系统上电时该电路提供有效的复位信号RST(高电平)直至系统电源稳定后撤销复位信号(低电平)。

从理论上说,51系列单片机复位引脚只要外两个机器周期的有效信号即可复位,即只要保证t=RC>2M(机器周期)便可。

但在实际设计中,通常C1取值为10µF以上,R1通常取值10ΚΩ左右。

实践发现,R1如果取值太小,例如1ΚΩ,则会导致RST信号驱动能力变差而无法使系统可靠复位。

另外,从图3-8所示的复位信号波形图可以明显看出,续流二极管对于改善复位性能,起到了重要作用。

它的作用是在电源电压瞬间下降时使电容迅速放电,因此一定宽度的电源毛刺(如波形中A点)也可令系统可靠复位。

图3-8 加二极管前后的复位信号特性对比
3.2.4 按键与按钮电路设计
按键与按钮电路的设计参见系统原理图中的S1、S2和S3对应部分。

按键
与按钮电路设计中关键要考虑的就是按键去抖动问题(简称“去抖”),一般由硬件去抖和软件去抖两种方式。

硬件去抖可以采用分立元件或触发器实现,目前市场上也有硬件去抖专用接口芯片,例如:MAXIM公司MAX6816~6818,均为单电源供电,电压为2.7~5.5V,分别为单输入、双输入和八输入,输出端具有欠压锁定功能[19]。

考虑到系统的硬件简化和控制成本问题,本次设计采用软件去抖方式。

3.2.5 闹铃声光指示电路设计
闹铃指示可以由声或光亮中形式,本系统设计中采用声音指示。

关键元件是蜂鸣器。

蜂鸣器有无源和有源两种,前者属要输入声音频率信号才能正常发声,后者则只需外加适当直流电源电压即可;元件内部已经封装了音频振荡电路,在得电状态下即起振发声。

市场上的有源蜂鸣器分为3V、5V、6V等系列,以适应不同的应用要求。

其电路设计见电路原理图。

其中PNV小功率三极管Q2采用9012,其最大集电极电流为800mA,完全满足蜂鸣器驱动的需要。

适当调节基极电阻可改变蜂鸣器的发声功率(即响度)。

如图3-9
图3-9 闹铃声光指示电路
3.2.6 数字钟的显示电路设计
(1)LED的选择
单片机I/O的应用最典型的是通过I/O口与7段LED数码管构成显示电路,7段LED数码管,在一定形状的绝缘材料上,利用单只LED组合排列成“8”字型的数码管,分别引出它们的电极,点亮相应的点划来显示出0-9的数字。

LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路有差异外,编程方
法也是不同的。

下图3-10阴和共阳极数码管的内部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。

图3-10 数码管电路
将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即
为共阳式。

以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。

当然,LED的电流通常较小,一般均需在回路中接上限流电阻。

假如我们将"b"和"c"段接上正电源,其它端接地或悬空,那么"b"和"c"段发光,此时,数码管显示将显示数字“1”。

而将"a"、"b"、"d"、"e"和"g"段都接上正电源,其它引脚悬空,此时数码管将显示“2”。

其它字符的显示原理类同。

用单片机驱动LED数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分。

静态显示就是显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不再控制LED,直到下一次显示数据需要更新时再传送一次新数据,显示数据稳定,占用很少的CPU时间;动态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。

这两种显示方式各有利弊:动态显示虽然有闪烁感,占用的CPU时间较多,但是用的硬件少,能节省线路板的空间。

动态扫描显示接口是单片机种应用最广泛的一种显示方式。

其接口电路是把所有的LED显示器的8个笔画段A~G、DP 的同名端连在一起,而每一个数码管的公共端COM是各自独立地受I/O线控制。

CPU向字段输出口送出字形码时,所有显示器接收到相同的字形码,但究竟是哪个显示器亮,则取决于COM端,而这一端由I/O控制的,可以自行决定何时显示哪一位了。

而所谓动态扫描就是指我们采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。

在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的,约1ms左右,但是由于人的视觉暂留现象及发光余晖效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。

静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多,但是编程相对于动态显示比较简单,本设计采用的是静态显示方案。

(2)LED的驱动和显示
单片机对LED数码管的驱动方法可以分为串行和并行两种,分别适用于不同的使用场合,两者的硬件电路和程序区别也很大。

并行驱动:在一般情况下,单片机使用并行驱动的方式进行LED的显示。

并行驱动的结构较简单,并且非常适用于说明地址和数据总线复用的情况。

LED并行驱动的电路原理图如图3-11所示。

图3-11 LED并行驱动的电路原理
图中显示的是使用8155与LED显示器的接口,8155的PB0~PB7作为段选码口,经过7407驱动与LED的段相连;8155的PA0~PA5作为位选码口,经过7406驱动与LED的位相连。

图中的P2.7反相后作为8155的片选信号,P2.6接8155的IO端。

这样确定8155片内的4个端口地址。

(7407:驱动门电路,提供数码管显示的驱动电流)
本设计采用的是串行驱动方式,具体方法如下:
在某些情况下,可供使用的单片机并行I/O口不足8根,数据的并行输出已不可能此时可以考虑串行输出方法,图3-12本设计采用的串行口扩展的四位LED 显示电路。

图3-12本设计采用的串行口扩展的四位LED显示电路该显示电路只使用单片机的三个端口P1.7、P3.0、P3.1,并配以四片串入并出移位寄存器74LS164(LED驱动)。

如果再配1片三端可调稳压器LM317,则可调LED亮度。

其中74LS164的引脚Q0~Q7为8位并行输出端;引脚A、B为串行输入端;引脚CLK为时钟脉冲输入端,在CLK脉冲的上升沿作用下实现移位,在CLK=0、清除端MR=1时,74LS164保持原来数据状态;MR=0时,74LS164输出清零。

其工作过程如下:
●2051的串行口设定在方式0移位寄存器状态下,串行数据由P3.0发送,
移位时钟由P3.1送出
●在移位时钟的作用下,串行口发送缓冲器的数据一位一位地移入
74LS164中。

●4片74LS164串级扩展为4个8位并行输出口,分别连接到4个LED显
示器的段选端作静态显示。

需要指出的是,由于74LS164无并行输出控制端,因而在串行输出过程中,其输出端的状态会不断变化,造成不应显示的字段有较暗的亮度,影响了显示的效果。

可以采用的做法是在74LS164的输出端加接4片锁存器或三态门,使移位寄存器串行输入数据时其输出端的变化不反映到LED上,待串行输出结束后再打开锁存器或三态门;也可以采用1片三端可调稳压器LM317即解决此问题。

LM317的3、2脚分别是电压输入、输出端,LM317的1脚是电压的调整端,在一脚与接地电阻之间并入一个NPN三极管,它的基极受P1.7口线控制。

串行输出时P1.7口线为高电平,三极管截至,LM317的脚1约为0.3V,脚2输出电压。

相关文档
最新文档