0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于AT89C2051制作八路定时电路

电子设计 来源:陈翠 2019-01-30 17:03 次阅读

本文介绍用单片机制作的定时自控电路实现八路定时控制,非常适合于学校等单位作为作息控制信号或其他定时控制用,有兴趣的朋友不妨一试。

该电路由一片AT89C2051单片机、6位LED数码管、6个按键、11.0952NHz晶振等组成,并接了1片74HC374扩展了5个输出口。

一、硬件设计
电路原理图见图1。整个电路由显示电路、键盘电路、输入输出接口CPU组成。

基于AT89C2051制作八路定时电路

显示电路由U2、U3、Vl~V7和六位共阳数码管组成(二位一组,分别显示时、分、秒)。其中,U2为BCD-7段译码器CD4511,通过单片机U11的P1.4~P1.7,将要显示的字符BCD码输入至U2。经U2译码后,输出相应的笔段驱动LED数码管。

LED数码管显示采用动态扫描方式。在某一时刻只有一只数码管点亮。点亮的位置信号由U3(74HCl38)输出。来自单片机U1的3位数码管位置编码信号,通过U3输出为相应的数码管驱动信号,并通过V1~V6放大后,驱动相应的数码管。六位数码管接至端口JP4上。其中,端口的③一⑧脚接各数码管的公共阳极:⑨脚接数码管的时、分、秒的分隔点脚;(16)~(10)脚接各数码管的段显示脚(A、B、C、D、E、F、G)。由于U2只能输出7段笔段码,因而数码管的时、分、秒分隔点是通过V7来驱动的。当需要点亮分隔点时,只要在U1的P1.3输出高电平即可。

键盘电路也采用扫描方式,并巧妙地利用了显示时的数码管驱动的位置信号。也就是在显示的同时,判断按键的状态。方法是:在显示某一数码管时,判断Ul的P3.7口的状态。如果P3.7为高电平,说明没有按键按下:如果为低电平,则说明相应的按键按下。这时,通过读U1的P3口中P3.3-P3.5口的值。就可判断是哪个键按下。然后调用相应的处理程序进行处理。

扩展输出口利用显示的间隙,将输出数据通过U4(74HC374)锁存输出。既不影响显示功能,也使输出信号稳定。扩展输出过程如下:首先在P3口输出XX110XXX,U3的⑨脚输出低电平,接着将要输出的数据写到U1的P1.3~P1.7口,然后在P3口输出XXlllXXX,U3的⑨脚输出高电平,这样,输出数据就被锁存在U4的00~04中了。

二、软件设计

基于AT89C2051制作八路定时电路


程序主要包括:定时中断服务程序、时钟显示程序、键盘扫描处理程序、八路时控程序,主程序流程见图2。

定时中断服务程序为系统提供标准时钟。采用TO中断方式。其流程图见图3。待显示的6位时钟(时、分、秒各两位)以压缩BCD码形式存放在2lH~23H中,低位在前,高位在后。定时中断服务子程序不断刷新2lH~23H中的内容。时钟显示子程序驱动显示标准时钟(电子表),时间显示至秒。

八路时控程序采用循环调用方式。调用过程中,检测21H~23H的时钟信息,若与设定的定时起控时间相符。则输出至P1口相应管脚。

基于AT89C2051制作八路定时电路

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • AT89C2051
    +关注

    关注

    7

    文章

    170

    浏览量

    66021
  • 定时电路
    +关注

    关注

    2

    文章

    41

    浏览量

    21512
收藏 人收藏

    评论

    相关推荐

    at89c2051实用程序集

    at89c2051实用程序集这个包中提供了一些有实际应用价值的子程序供参考选用SUB1----X25045/43 看门狗/存储器与 89C2051接口子程序 源程序/原理图(21K
    发表于 10-14 17:04

    AT89C2051数字钟制作

    ,快速点触用于调节时间数值。本电路又增加了一个3V的备用电池,停电时AT89C2051采用备用电池供电,时钟不会停止,但数码管不显示,来电后备用电池失去作用,AT89C2051采用外部电源供电,数码管正常
    发表于 05-26 22:10

    AT89C2051数字钟制作

      一、说明89C2051数字钟,控制芯片采用AT89C2051,数码管采用3只两位红色的共阳型LED数码管,显示清晰亮度高,因为是扫描的显示方式,所以各个数码管的abcdefg各
    发表于 05-27 10:21

    SM894051/AT89C2051

    SM894051/AT89C2051***新茂(SyncMOS)与爱特梅尔(ATMEL)8051内核单片机替换表SM8952AC40PP/JP/QP=AT89S52-24PU/JP
    发表于 07-05 14:33

    at89c2051 问题

    哪位知道 at89c2051在仿真器通过的程序为什么烧写好后插如线路会出错啊?
    发表于 10-27 16:39

    AT89C2051的最小系统及外围电路

    AT89C2051的最小系统及外围电路邮箱:946663810@qq.com谢谢
    发表于 04-28 09:13

    AT89C2051烧写程序问题

    怎么用RF910烧写AT89C2051啊,引脚怎么连,比如单片机1脚链烧写器的那个脚啊
    发表于 09-14 09:09

    求下这个基于AT89C2051的仿真程序

    求下这个基于AT89C2051的仿真程序,大神
    发表于 12-11 12:33

    基于AT89C2051的频率计

    要求是利用AT89C2051制作一个简易频率计,测100HZ到1MHZ的正弦波的频率,我的想法是用脉冲计数法,信号发生器产生信号,经过整形电路,与单片机交互,最后显示出来。但是我只有4个数码管,请问我该怎么办?这里的整形
    发表于 07-18 22:04

    AT89C2051制作的多位显示的电子万年历

    本帖最后由 太子的空间 于 2016-11-8 17:58 编辑 用AT89C2051制作的多位显示的电子万年历
    发表于 11-01 22:02

    89C2051单片机怎么组成数显八路断线检测仪?

    89C2051单片机组成的数显八路断线检测仪
    发表于 03-06 03:51

    AT89C2051的中文数据资料

      AT89C2051是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含2k bytes 的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM
    发表于 07-20 17:23

    AT89C2051单片机制作的六位数显多路定时电子钟

    AT89C2051单片机制作的六位数显多路定时电子钟 这里介绍的电子钟,电路可称得上极简,它仅使用单片的20引脚单片机完成电子钟的全
    发表于 11-20 11:57 3330次阅读
    <b class='flag-5'>AT89C2051</b>单片机<b class='flag-5'>制作</b>的六位数显多路<b class='flag-5'>定时</b>电子钟

    AT89C2051单片机制作的数字电容表

    AT89C2051单片机制作的数字电容表
    发表于 01-04 14:16 18次下载

    利用单片机AT89C2051制作的电子琴电路

    电子发烧友网站提供《利用单片机AT89C2051制作的电子琴电路.pdf》资料免费下载
    发表于 10-10 11:13 0次下载
    利用单片机<b class='flag-5'>AT89C2051</b><b class='flag-5'>制作</b>的电子琴<b class='flag-5'>电路</b>