[经验分享] 基于单片机的电子定时器的设计

[复制链接]
荣陶陶 发表于 2025-8-26 08:43 | 显示全部楼层 |阅读模式
2设计的总体方案
2.1 设计的基本要求与目的
基于单片机的电子定时器不仅在设计上比较简单,主要基于代码的编写,后续也可以根据用户需求编写代码,将其烧入单片机更新设计要求;电路还比较清晰可见,体积小且功能完善。
定时器的供电电路尤为重要,电源内阻应在实际电流较大时尽可能减小,才使电流流通。焊接时,应尽量使线路横平竖直,以便对故障进行观察和检查,为了保证电源线的宽度足够,电路通常会选择星型供电方式。此外,电子设备容易受外界影响,因此在接地设计中,应尽量增大与地相连的面积,以有效减少外界干扰[7]。
电子定时器是一种能够根据预设时间进行计时的自动化电子设备,定时间隔一秒钟,最大定时时长23小时59分59秒。一些早期常用的时间控制单元是由模拟电路设计和制作的,定时精度不是很理想。选择单片机作为定时器控制单元,是因其简单可靠、成本低廉[8]。通过按键控制定时的开始、结束还有时间长短,复位按键可对整个电路进行清零,计时结束后蜂鸣器开始工作,发出警报报警提醒人们,与此同时传感器的工作也开始了,在没有感知到人体温度时无法关闭蜂鸣器。倘若定时过程中对时间的设计有误,可直接通过复位按钮重新定时或逐位修改时间。

2.2 设计思路
在过去,传统产品主要依靠模拟技术支持,功能简单且常见,但现在这类产品已经不再普遍。相比之下,现代化数字技术产品得到了广泛应用,因为它们具有强大的功能。近几年单片机产品的普及促进了新产品的广泛应用,使控制系统得到了极大的简化,起到了系统整合的关键性作用。单片机产品除了具有强大的功能外,还具有很好地满足器件需求的轻便性、便携性和体积小等优点,再配上适配的芯片接口,能够实现各种微电子化产品的开发[9]。
选择STC89C51单片机,LCD1602,复位电路,晶振电路,电源,串口,下载接口和蜂鸣器,电容电阻等作为定时器的主要器件。复位电路阻容值的根据电容电压不能突变的特性选择了10uF和10K。STC89C51单片机内部整合了2KB的闲置储存,省却了外扩式程式**体的困扰,从而简化电路,使工作供电电压变得更宽。STC89C51单片机的选择无论从成本、功耗还是线路板面积来看都是一个不错的选择,而12MHz则是单片机常用的时钟电路晶振选择 [10],本设计选择硬件按键复位。并联谐振电路的电容值即C1、C2的选值会影响振荡器的稳定性,选择22pF最为合适。大部分的电容值的选择都是根据规格书的要求,应用了一个电解电容主要是防止单片机下载的瞬间,下载芯片被复位;而下载电路的限流电阻值根据手册选择的300Ω。
单片机控制电路计时,其中I/O口驱动显示设定时间流动的LCD显示屏,1个I/O口连接微动按钮开关,用于设定定时时间,另1个I/O口连接输出声音信号的蜂鸣器 [11]。

2.3 定时器的工作原理
定时器的工作原理主要基于时钟信号,结合内部计数器和可能的振荡器、分频器来实现计时功能,本设计通过编程语言或系统提供的库函数或系统调用实现。以定时器芯片上的计数器为基准,一边倒计时,计数器一边递减计数。定时器通过使用时钟信号触发计数器的递减,一旦计数器的值达到0,计时结束,随着计数器的不断递减,定时器就会被触发。

2.4 定时器的功能说明
电子定时器电路由计数器、译码显示电路报警电路组成。计数器完成所定时间的计时功能:接通电源后,定时器清零,由用户自行设置定时时长,按下相应的启动按钮进行计数,计数器每隔一秒的时间进行递减,并在显示电路中显示出来,如需将定时器清零,按下相应的复位按钮重新设置时间即可。当定时器计时到0时,显示电路显示0,报警回路在定时器计时到0时开始报警,控制电路对计数器的起动和复位有直接的控制作用。
本设计主要具备如下功能:第一,它有人为控制开关的闹钟功能;第二,连接有LCD显示屏,能充分显示时间的时、分、秒,三值之间有间隔;第三,可以在设置闹钟响起时通过传感器的测温方式关闭闹钟。
本设计可以通过LCD显示屏倒计时,使计时过程和结果清晰可见,数字显示效果清晰可见,不受环境影响,能够在各种光线条件下一目了然;增加了闹钟的功能,计时结束的同时显示屏归零,蜂鸣器开始工作,电路板连接的一个传感器,感受到人体体温(一般是35℃以上)同时结束定时,蜂鸣器停止工作,闹钟关闭,使普通的闹钟增加一些趣味性。

3 系统的硬件设计
3.1 主要元器件介绍
本设计主要用到了STC89C51单片机,LCD显示屏,红外传感器,按键,蜂鸣器,三极管,电容电阻等,下面将进行简单介绍。
STC89C51单片机配置上采用独立的程序存储器,逻辑上采用相同的地址空间,访问时使用不同的指令和寻址方式,内部集成了两个16位计时器/计数器,在计时操作时能够非常方便的进行,为本设计奠定了扎实的基础 [12]。
对于采用USB连通的便携式电路来说,考虑到其低功耗的要求,常常需要采用液晶显示屏。它本身并不发光,而是通过电场效应和扭曲-向列效应原理制成,在本设计中起到显示倒计时和测温模块测出的温度的功能。
GY-906是一种基于光学原理的通过红外传感器和相关算法实现非接触测温,使用红外测温技术中的红外热释电传感器感测物体发出的红外辐射能量,并将其转换为温度值的红外测温模块,但结果与实际温度值有一定误差,准确性不够,主要为本设计提供了关闭蜂鸣器的功能,否则无法实现电路的停止。
蜂鸣器是将电信号转换为声音信号的一种装置,用于制造设备在此设计中发出的警报, 低电平触发。该设计采用了内部不带振荡源的无源蜂鸣器,控制器提供振荡脉冲才能发出声音,而想要发出不同频率的声音需要调整振荡脉冲的频率。

3.2按键电路
通常采用扫描方式进行键盘模块操作,一般分为两种编程控制方式,常采用矩阵式键盘设计。首先将各端口线设置为输入模式,利用中断确定各端口线均有按钮以获取信息。如果按下对应的口线,显示高电平,反之为低电平[13]。在调整时间之前,可以使用加减按键对时间点进行调节,而后将调整之后的时间显示出来[14]。
按键电路原理图如图1所示。STC89C51单片机中有两种最常使用的按键:独立按键和矩阵按键。本设计采用一个按键控制一个引脚的独立按键。




图1 按键电路原理图

3.3 显示电路
图2为LCD1602原理图。单片机系统控制LCD1602,接口简单可靠,编程易实现,显示品质高,液晶显示器在重量上要比传统显示器更占优势。




图2 LCD1602原理图

4系统的软件设计
4.1 程序设计思路
首先确定按键、蜂鸣器的标志以及一些表示用途的变量,对延时函数进行大概值。因为时间是用32位的整体全部存储的,所以先编写函数将时间分成时分秒,按键服务函数在判断函数中判断按键,当设置键按下,分别判断定时器是否启动,未启动就可以设置时间,设置哪个标志位作为闪烁和设定值。若按下增加键且判断定时器没有启动,就判断闪烁位置是时分秒,分别做加减更新显示,并将其合成到总的32位时间值里,减小按键同理。启动按键判断状态,没有启动置为1,启动置为0,并把闪烁标志清零。
而后更新显示,分别设置闪烁位置,闪烁即数字与空格交替展示形成所需效果,时分秒交替闪烁原理相同。第二行显示判断状态,等于1显示启动,反之显示停止。初始化定时器即配置定时器工作模式、晶振计数值,ET0外部中断,TR0启动,EA开总中断。
主函数前面是LCD1602初始化,测温模块初始化以及初始化一个用于倒计时的定时器,while循环反复不停从上到下执行,其中包含按键检测,之后进行判断,update标志为1才会进行更新的显示,之后判断倒计时是否结束,结束后一直循环获取温度值,进行相应的更新显示。定时器的中断函数的配置是每隔50ms进入一次函数,所以TH0和TL0重装初值是50000us。每50ms计数加1,当计数大于20即1s就更新一次,判断定时器是否启动了,若启动且时间大于零,进行减计数至零为止,倒计时结束,蜂鸣器工作,系统状态置为2,更新标志置为1,表示1秒钟更新一次显示,更新标志应用于主函数。

4.2 程序流程框图
主程序定义流程图如图9所示,主程序是控制电路的一系列调控,通电后首先由程序定义主程序相关端口,然后调用子程序控制电路,再由各模块定义相关程序接收、转换及输出信号,然后由LCD1602定义相关程序通过屏幕显示数据。




图9 主程序定义流程图

5 系统的制作与调试
5.1 系统的制作
电子定时器的电路原理图如图13所示,其绘制主要是利用Altium Designer软件对选择的硬件进行合理的布局,选择并确定好引脚与对应的端口相连接,未接的引脚要加屏蔽信号,否则没接的接口会有警告。




图13 总电路原理图

根据实际要求及硬件的选择画封装,在编译无误之后更新PCB文件,同样要进行合理的布局,以免走线交叉或封装摆不开等情况,PCB的顶层和底层图如图14和图15所示。本设计选择使用可以承载更多电子元件,材质更加稳定,使电路设计更紧凑的双面板,与此同时提高设备的工作效率,保证电路的稳定工作。




图14 PCB顶层设计图




图15 PCB底层设计图

实物底层图和组合图如图16和图17所示,本设计将LCD显示屏放在蜂鸣器、排阻等元器件之上,使得实物体积小、质量低、更便携。




图16 实物底层图




图17 实物组合图
————————————————
版权声明:本文为CSDN博主「QQ1928499906」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/QQ1928499906/article/details/149444387

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
您需要登录后才可以回帖 登录 | 注册

本版积分规则

54

主题

214

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部