基于AT89S52单片机的智能数字电子时钟设计
扫描二维码
随时随地手机看文章
(1)数字钟实现对年、月、日、时、分、秒、星期显示的计时装置,由于数字集成电路的发展和石英晶体振荡器的广泛应用,使得数字钟的精度,远远超过老式钟表,钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。
(2)诸如定时自动报警、时间程序自动控制、自动起闭路灯、通断动力设备、甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。利用AT89S52单片机和LCD1602电子显示屏实现电子时钟,可由按键进行调时和12/24小时切换。
功能:
(1)实现年、月、日、星期、时、分、秒的显示;
(2)实现调时功能;
(3)实现12/24小时制切换;
(4)实现整点报时功能。
设计方案:
器件选择(主要器件)
(1)AT89S52单片机
(2)LCD1602液晶屏
AT89S52
1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别。1602LCD主要技术参数:显示容量:16&mes;2个字符,芯片工作电压:4.5—5.5V,工作电流:2.0mA(5.0V),模块最佳工作电压:5.0V,字符尺寸:2.95&mes;4.35(W&mes;H)mm
LCD1602引脚图
第1脚:VSS为地电源。
第2脚:VDD接5V正电源。
第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第7~14脚:D0~D7为8位双向数据线。
第15脚:背光源正极。第16脚:背光源负极。
系统总电路仿真
模块电路设计:
最小系统由复位电路和时钟电路组成,时钟电路提供12MHZ时钟信号,复位电路采用手动按键复位电路,可以在不关闭电源的情况下对单片机进行复位。
最小系统
LCD显示屏的D0到D7与单片机P0口相连,由于用P0口作为输出口,所以需要外接上拉电阻。RS接P2.0,EN接P2.1。VEE外接4K滑阻,调节显示屏对比度。
LCD电路
该模块采用独立键盘,键盘按下时,相应的I/O口电平由高变低,一次检测按键是否被按下。4个独立按键与单片机P3.0—P3.3口相连。
键盘输入功能选择电路
蜂鸣器的作用为准点报时产生报警声,LED在秒钟为偶数时或者功能键被按下时亮。蜂鸣器与单片机P2.2口相连,LED灯与单片机P2.3口相连接。
蜂鸣器
软件设计流程图:
编写代码应按如下程序流程
主程序流程
键盘扫描流程图
时钟流程图
程序按照流程图编写,下载成功如图
12小时制显示
在设计过程中可能遇到的问题
1.程序烧录上电不成功,ST-link应交替使用RX和TX串口
2.滑阻选择的问题,LCD1602液晶屏无法显示(滑阻调对比度),更换滑阻解决。
改进意见:可以尝试更先进的显示屏,诸如假如温度显示和过温报警之类。