本文介绍用单片机制作的定时自控电路实现八路定时控制,非常适合于学校等单位作为作息控制信号或其他定时控制用,有兴趣的朋友不妨一试。
该电路由一片at89c2051单片机、6位led数码管、6个按键、11.0952nhz晶振等组成,并接了1片74hc374扩展了5个输出口。
一、硬件设计
电路原理图见图1。整个电路由显示电路、键盘电路、输入输出接口及cpu组成。
显示电路由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中了。
二、软件设计
程序主要包括:定时中断服务程序、时钟显示程序、键盘扫描处理程序、八路时控程序,主程序流程见图2。
定时中断服务程序为系统提供标准时钟。采用to中断方式。其流程图见图3。待显示的6位时钟(时、分、秒各两位)以压缩bcd码形式存放在2lh~23h中,低位在前,高位在后。定时中断服务子程序不断刷新2lh~23h中的内容。时钟显示子程序驱动显示标准时钟(电子表),时间显示至秒。
八路时控程序采用循环调用方式。调用过程中,检测21h~23h的时钟信息,若与设定的定时起控时间相符。则输出至p1口相应管脚。
RAZER PROJECT SOPHIA定义终极家居的未来
瑞典规定任何参与5G频谱拍卖的运营商,不得使用华为5G设备
锂电池保护板故障判断
聚焦三大方向,实现5G融合应用从1到N的飞跃
整流滤波电压及整流电流的波形图详解
基于AT89C2051制作八路定时电路
人工智能时代下的教育 学习无人机编程是不错的选择
NASA无人直升机“机智号”在火星上完成历史性的首飞任务
家用电器电动工具EMC电磁兼容欧盟标准新版本发布
求一种基于人工智能(AI)的声学传感器监测解决方案
IBM发现可为芯片充电的新方法
itop-RK3588开发板机器视觉开发OpenCV-Python的安装
比特币为什么会造成经济成长缓慢
【新专利介绍】电子式电能表
正点原子开拓者FPGA:DS18B20湿度传感器实验
魅族Pro7什么时候上市?最新消息:魅族Pro7最新渲染图曝光!忒丑了!也让手机壳厂商崩溃!
人工智能大规模的落地需要避过哪一些坑
荣耀V9、荣耀8青春版、华为Nova2对比评测:华为荣耀V9、华为荣耀8青春版、华为Nova2谁将更青春?
SW全新C|one控制面板是物联网和工业4.0的趋势
I社绅士大作VR女友发售日确定 明年2月28日开售