控制数码管显示电路设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1创新设计实践控制数码管显示电路设计专业:年级/班级:姓名:实训时间:实训地点:指导教师:2目录一、题目*************************************31、摘要**********************************32、引言**********************************3二、要求*************************************3三、方案*************************************3四、设计*************************************41、硬件***********************************42、软件**********************************10五、调试结论*********************************15六、收获*************************************153一、题目控制数码管显示电路设计1、摘要本题是基于单片机的控制数码管每隔1s一个数字,分别显示1、2、3、4、5、6、7、8的设计,设计由单片机作为核心控制器,通过ZLG7290驱动器控制实现显示功能。2、引言在单片机技术日趋成熟的今天,其灵活的硬件电路的设计和软件的设计,让单片机得到了广泛的应用,几乎是从小的电子产品,到大的工业控制,单片机都起到了举足轻重的作用。单片机小的系统结构几乎是所有具有可编程硬件的一个缩影,可谓是“麻雀虽小,五脏俱全”。现在是一个知识爆炸的新时代。新产品、新技术层出不穷,电子技术的发展更是日新月异。可以毫不夸张的说,电子技术的应用无处不在,电子技术正在不断地改变我们的生活,改变着我们的世界。在这快速发展的年代,时间对人们来说是越来越宝贵,在快节奏的生活时,人们一旦遇到重要的事情而忘记了时间,这将会带来很大的损失,因此我们需要一个计时系统来提醒这些忙碌的人。现今,采用了数码管显示技术,精度高,稳定性好,使用方便。二、要求1、用单片机实现简易数字显示,实现每隔1s分别显示1、2、3、4、5、6、7、8的功能。2、学会熟练使用protel制图。3、使用实验箱调试程序。三、方案1.数码管驱动显示设计方案一:采用74LS244芯片为驱动芯片474LS244是8路3态缓冲驱动,也叫做线驱动或者总线驱动门电路。简单地说,它有8个输入端,8个输出端。其输入数据可以保持较长时间,简单输入接口扩展通常使用的典型芯片。方案二:采用ZLG7290芯片为驱动芯片ZLG7290能够直接驱动8位共阴式数码管数码管是一种半导体发光器件,其基本单元是发光二极管。(实物参照图片)(或64只独立的LED),同时还可以扫描管理多达64只按键。其中有8只按键还可以作为功能键使用,就像电脑键盘上的Ctrl、Shift、Alt键一样。另外ZLG7290B内部还设置有连击计数器,能够使某键按下后不松手而连续有效。采用I2C总线方式,与微控制器的接口仅需两根信号线。可控扫描位数,可控任一数码管闪烁。能同时驱动显示和开关,使用方便,效率高。所以选择方案二。2、定时器设计方案一:采用单片机自带定时器显示程序放在主程序时执行速度比较快,使用自带定时器使电路简洁。利用单片机的定时,时间精确、稳定、可靠,并可以利用单片机的功能很好地进行时间显示、指示、输出、原理简单,使用元器件少,相对来说在实物调试时出现的问题少。该方案还有一个好处是成本低。此外,经过无数人的证明,利用单片机完全可以实现定时功能,失败的风险小。方案二:采用专业芯片该方案应用稳定的高频脉冲信号作为定时器的时间基准,可以说也有同单片机一样的精确、稳定、可靠的输出时间,且对软件编写要求不高,能很好地实现设计要求的功能。但是该方案复杂,一般不容易弄白它的原理,而且应用的元器件较多,在实物调试时出现的问题可能比较多。由于元器件比较多,所以相对来说实物的成本也比较高,而且调试时出现的问题可能比较多。而且在PCB步线时更加麻烦。由于原理复杂,所以成功完成该设计的概率较低。经过考虑我选择方案一。5所以:利用ZLG7290驱动芯片驱动数码管显示和开关,通过AT89SC52单片机控制实现数码管显示每隔1s一个数字,分别显示1、2、3、4、5、6、7、8。ZLG7290在键盘部分具有键盘去抖动处理、双键互锁处理、连击键处理及功能键处理的功能;在显示部分具有对显示部分的基本控制功能即寄存器映像控制和命令解释控制。如实现寄存器的位操作;对显示缓存、移位;对操作数译码等。ZLG7290驱动芯片可以实现循环左移、循环右移等功能,且该芯片使用简便、可信度高。利用数码管显示系统采用动态显示方式,用P0口来控制LED数码管的段控线,而用P2口来控制其位控线。动态显示采用动态扫描的方法循环点亮每一个数码管,这样虽然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。利用AT89SC52单片机做CPU,因其低功耗、高性能且设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。流程图如下:6四、设计开始变量赋初值输出位码控制数据延时修改变量i《8将数组中取数元素送代码端Yes71、硬件设计1)驱动芯片ZLG7290a)ZLG7290的引脚图b)ZLG7290硬件接口电路图8c)功能框图2)89S52单片机引脚图AT89S52是一个低功耗,高性能CMOS8位单片机,片内含8kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案。9AT89S52具有如下特点:40个引脚,8kBytesFlash片内程序存储器,256bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。此外,AT89S52设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。主要功能特性:·兼容MCS-51指令系统·8k可反复擦写(1000次)ISPFlashROM·32个双向I/O口·4.5-5.5V工作电压·3个16位可编程定时/计数器·时钟频率0-33MHz·全双工UART串行中断口线·256x8bit内部RAM·2个外部中断源·低功耗空闲和省电模式·中断唤醒省电模式·3级加密位·看门狗(WDT)电路·软件设置空闲和省电功能·灵活的ISP字节和分页编程·双数据寄存器指针10数码管的引脚图3)LED显示屏的基本结构本系统设计中,控制系统采用单片机+CPLD的方案来实现,整个控制系统可分为:信号接收及处理模块和CPLD的扫描控制模块和LED点阵驱动模块,如图1所示。本系统的关键技术是使用双口RAM和CPLD芯片,解决LED显示屏中高速数据传输和快速扫描控制的难题,大大提高了动态显示的刷新率。信号接收与处理模块的功能是AT89S52单片机通过串口接收PC送来的点阵信息,同时对点阵信息做各种不同的处理。利用双口RAMIDT7007在单片机和ATF1508AS之间以共享的方式建立高速的数据交换通道。4)数码管的模块设计数码管是一种把多个LED显示段集成在一起的显示设备。有两种类型,一种是共阳型,一种是共阴型。共阳型就是把11多个LED显示段的阳极接在一起,又称为公共端。共阴型就是把多个LED显示段的阴极接在一起,即为公共商。阳极即为二极管的正极,又称为正极,阴极即为二极管的负极,又称为负极。通常的数码管又分为8段,即8个LED显示段,这是为工程应用方便如设计的,分别为A、B、C、D、E、F、G、DP,其中DP是小数点位段。而多位数码管,除某一位的公共端会连接在一起,不同位的数码管的相同端也会连接在一起。即,所有的A段都会连在一起,其它的段也是如此,这是实际最常用的用法。数码管显示方法可分为静态显示和动态显示两种。静态显示就是数码管的8段输入及其公共端电平一直有效。动态显示的原理是,各个数码管的相同段连接在一起,共同占用8位段引管线;每位数码管的阳极连在一起组成公共端。利用人眼的视觉暂留性,依次给出各个数码管公共端加有效信号,在此同时给出该数码管加有效的数据信号,当全段扫描速度大于视觉暂留速度时,显示就会清晰显示出来。系统采用动态显示方式,用P0口来控制LED数码管的段控线,而用P2口来控制其位控线。动态显示通常都是采用动态扫描的方法进行显示,即循环点亮每一个数码管,这样虽然在任何时刻都只有一位数码管被点亮,但由于人眼存在视觉残留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。5)电路分析晶振电路右图所示为时钟电路原理图,在AT89S51芯片内部有一个高增益反相放大器,其输入端为芯片引脚XTAL1,输出端为引脚XTAL2。而在芯片内部,XTAL1和XTAL2之间跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。12复位电路单片机复位的条件是:必须使RST/VPD或RST引(9)加上持续两个机器周期(即24个振荡周期)的高电平。例如,若时钟频率为12MHz,每机器周期为1μs,则只需2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。单片机常见的复位如图所示。电路为上电复位电路,它是利用电容充电来实现的。在接电瞬间,RESET端的电位与VCC相同,随着充电电流的减少,RESET的电位逐渐下降。只要保证RESET为高电平的时间大于两个机器周期,便能正常复位。该电路除具有上电复位功能外,若要复位,只需按图中的RESET键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。6)protel电路图2、软件设计1)主程序13#includeconfig.h/*长延时ms*/voiddelayms(uintms){uintj;for(;ms0;ms--);for(j=0;j1000;j++);}/***********************************************************/函数名:getkey()/功能:读取zlg7290芯片键值/入口:无/出口:uchar/**********************************************************/uchargetkey(){ucharrece,keyini=1;rece=0;IRcvStr(zlg7290,1,&rece,1);//向有子地址器件读取多字节数ISendStr(zlg7290,0x00,&keyini,1);//键值有效delayms(10);returnrece;}/**********************************************************/函数名:sendcmd()/功能:向ZLG7290的07,08单元发送控制命令/入口:cmd1.cmd2两个控制命令出口:输出1,ok;输出0fail14/*********************************************************/ucharsendcmd(ucharcmd1,ucharcmd2){ucharData[2];Da

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功