基于单片机的时钟电路设计内容摘要:

图21 MCS51引脚图 复位电路8051的复位方式可以是自动复位,也可以是手动复位,见下图22。 此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。 当MCS5l系列单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。 如果RST持续为高电平,单片机就处于循环复位状态。 根据应用的要求,复位操作通常有两种基本形式:上电复位和上电或开关复位。 上电复位要求接通电源后,自动实现复位操作。 图22 自动手动复位 数码管的选择 数码管的主要特点(1)低电压、小电流条件下驱动发光,能与CMOS、ITL电路兼容。 (2)发光响应时间极短(),高频特性好,单色性好,亮度高。 (3)体积小,重量轻,抗冲击性能好。 (4)寿命长,使用寿命在10万小时以上,甚至可达100万小时。 成本低。 因此它被广泛用作数字仪器仪表、数控装置、计算机的数显器件。 驱动的方式数码管要正常显示,就要用驱动电路来驱动数码管的各个段码,从而显示出我们要的数字,因此根据数码管的驱动方式的不同,可以分为静态式和动态式两类。 本设计采用的是动态式驱动方式。 (1)静态显示驱动:静态驱动也称直流驱动。 静态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,或者使用如BCD码二~十进制译码器译码进行驱动。 静态驱动的优点是编程简单,显示亮度高,缺点是占用I/O端口多,如驱动5个数码管静态显示则需要58=40根I/O端口来驱动,要知道一个AT89S52单片机可用的I/O端口才32个,实际应用时必须增加译码驱动器进行驱动,增加了硬件电路的复杂性。 (2)动态显示驱动:数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划“a,b,c,d,e,f,g,dp”的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。 通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。 在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。 性能检测LED数码管外观要求颜色均匀、无局部变色及无气泡等,在业余条件下可用干电池作进一步检查。 现以共阴数码管为例介绍检查方法。 将3伏干电池负极引出线固定接触在LED数码管的公共负极端上,电池正极引出线依次移动接触笔画的正极端。 这一根引出线接触到某一笔画的正极端时,那一笔画就应显示出来。 用这种简单的方法就可检查出数码管是否有断笔(某笔画不能显示),连笔(某些笔画连在一起),并且可相对比较出不同笔划发光的强弱性能。 若检查共阳极数码管,只需将电池正负极引出线对调一下,方法同上。 LED数码管每笔画工作电流ILED约在5~10mA之间,若电流过大会损坏数码管,因此必须加限流电阻,其阻值可按下式计算:R限 =(U。 ULED)/ILED其中U。 为加在LED两端电压,ULED为LED数码管每笔画压降(约2伏)。 利用数字万用表的HFE插口能够方便地检查LED数码管的发光情况。 选择NPN挡时,C孔带正电,E孔带负电。 例如检查LTS547R型共阴极LED数码管时,从E孔插入一根单股细导线,导线引出端接9极(第③脚与第⑧脚在内部连通,可任选一个作为负极),再从C孔引出一根导线依次接触各笔段电极,可分别显示所对应的笔段。 系统设计 分析论证 此实时时钟的设计与实现,主要采用了4只LED数码管,8031内部二进制16位定时器/计数器,可编程中断控制器8031等芯片,包括显示模块、运算模块两大功能模块。 电路组成及工作原理本设计主要利用AT89C51单片机控制数字时钟电路设计,由单片机的P1口控制数码管的段显示,P2控制三极管来放大电流,P0控制LED的一闪一灭。 在设计中引入一个电源电路,一个外部电源系统产生+5V电压,用于给CPU及显示电路提供工作电压,这是数字时钟正常工作时的总电压。 整个系统工作时,秒信号产生器是整个系统的时基信号,它直接决定计时系统的精度,将标准秒信号送入“秒计数器”,“秒计数器”采用LED的一灭一闪60次,每累计60秒发出一个“分脉冲”信号,该信号将作为“分计数器”的时钟脉冲。 “分计数器”采用60进制计数器,每累计60分钟,发出一个“时脉冲”信号,该信号将被送到“时计数器”。 “时计数器”采用24进制计时器,可实现对一天24小时的累计。 显示电路将“时”、“分”、计数器的输出,通过四个七段LED显示器显示出来。 显示模块设计主要是用数码管的显示功能来实现,显示部分硬件用四只数码管为显示管,这些数码管的阳极是互相连接在一起的,所以称为共阳极数码管。 通过在这四只数码管的阳极加+5V或0V的电压使数码管形成不同的数字。 运算模块该模块的主要功能是对时、分、秒的运算,并把运算出的最终结果存到事先已经开辟的内存单元里,以便显示模块即时地显示出来。 该模块可以细分为秒定时模块和运算模块。 秒定时模块负责提供中断信号,由于CPU运算模块中的指令消耗一定的时间,所以中断信号最好通过硬件来实现。 本实验中用8031定时器/计数器,但因为8031供的信号的周期是毫秒级的,因此必须通过软件的方法在运算模块中设置一个统计中断次数的变量,并且这一变量必须事先在内存里开辟存储单元。 中断信号是8031工作方式为方式1,产生一个50ms的脉冲信号。 运算模块负责时、分、秒的计算,该模块主要通过8031的IR1号中断来实现,但由于每50ms一次中断请求,所以在中断服务程序必须利用已申请内存单元26H来统计中断请求的次数,只有当26H的值为20时,才能让秒单元内的数值加1。 在中断服务程序里,必须对秒、分和时的单元内的数值进行判断,当LED闪动到60次时,分必须加1 、秒又开始重新闪动;当分加到60时,时加分清零。 当时加到24时,直接清零。 显示的原理LED数码管分共阳极与共阴极两种,其工作特点是当笔段电极接低电平,公共阳极接高电平时,。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。