DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2416|回复: 1
打印 上一主题 下一主题

[待整理] 基于单片机的可测温式电子万年历

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-29 08:02:20 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
随着科技的发展,生活中电子万年历越来越普遍,功能也越来越多。根据人们的日常基本需求,设计一种电子万年历,可以实现测温、闹钟、秒表和语音报警等功能,为人们的日常生活提供舒适和便捷,具有重要的使用价值。
         
        本文设计了一种基于单片机STC89C52的可测温式电子万年历,能实时地将当前时间和周围的环境温度显示出来,并具有闹钟、秒表、语音报时的功能。万年历主要使用温度传感器DS18B20采集温度信息,与单片机实现双向通信;时钟芯片DS1302实现时钟,准确计时;并通过语音芯片完成整点报时和温度报警功能。该万年历电路结构简单,具有时间精确、抗干扰能力强、功耗低、可靠性高等优点。
       
        该可测温式电子万年历主要由STC89C52、时钟芯片、温度采集、显示电路、语音报警等组成。按键可以实现显示内容的切换、时间的调整以及语音报警的设置。
       
        1硬件电路的设计
       
        该可测温式电子万年历工作时,首先初始化时钟芯片,单片机从时钟芯片读取时间和日期等信息,同时又从温度传感器采集当前环境温度,经过驱动电路送给液晶显示屏,显示相关的信息。其中,按键可以对时间、日期、星期和温度进行调整,并控制闹钟和秒表的功能。万年历又加入了语音芯片,可以实现整点报时和温度报警的功能。
       
        (1)时钟芯片DS1302
       
        DS1302在时间显示方面应用非常普遍,可以对年、月、日、周、时、分、秒进行计时,并且具有闰年补偿功能,工作电压为2.5V~5.5V.采用三线接口与单片机进行同步通,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个用于临时性放数据的RAM寄存器,具有主电源和后备电源两个引脚,并且具有对后备电源进行电流充电的能力。DS1302与单片机之间采用串行数据传输,控制液晶屏显示时间信息。
       
       
        图1 DS1302引脚图

         
        DS1302的引脚图如图1所示,其中Vcc2为主电源,Vcc1为后备电源。在主电源关闭的情况下,也能保持时钟的连续运行。X1、X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。上电运行时,在Vcc > 2.0V之前,RST必须保持低电平。只有在SCLK为低电平时,才能将RST置为高电平。I/O为串行数据输入输出端(双向);SCLK为时钟输入端。
       
        (2)温度传感器DS18B20
       
        温度传感器DS18B20直接与单片机连接,避免A/D模数转换模块,降低硬件成本,简化系统电路。DS18B20的电压范围为:3.0~5.5V,在寄生电源方式下可由数据线供电,采用独特的单线接口方式。DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内。测量温度的范围为-55℃~+125℃之间,测温精度可以达到0.5℃。测量结果直接输出数字温度信号,串行传送给单片机的CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。
       
        DS18B20与单片机的连接方式有两种:寄生电源连接方式和外部电源连接方式。该可测温式电子万年历采用外部电源连接方式。连接方法即DS18B20的1脚接地,2脚(DQ引脚)与单片机的一根I/O口线连接(P3.2脚),3脚接电源+5V.在STC89C52的I/O口线与+5V之间连接一4.7K的上拉电阻,以保证数据采集的正常进行。
       
        (3)LCD1602温度显示的设计
       
        该室温报警装置液晶显示屏采用LCD1602,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。
       
        在单片机系统中应用晶液显示器作为输出器件有显示质量高、数字式接口体积小、重量轻、功耗低的优点。LCD1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,每一个字符都有一个固定的代码,与单片机连接后通过C语言编程就可以工作。在正常工作状态下,电子万年历的设计连接图如图2所示。
       
       
        图2 LCD1620与单片机的连线图

        2软件系统设计方案
          该万年历的程序流程图如图3所示,具体流程如下:首先,接通电源,上电工作,DS1302、DS18B20、LCD1602进行初始化,通过单片机控制液晶屏显示“时分秒”、“温度”、“年月日”、“星期”,并伴随整点报时的功能;然后,进入功能设置,第一次按下按键K4可以调整“时分秒”和“年月日”,此时K1、K2和K3分别对应时间和日期“加”、“减”和“移位选择”的功能,日期发生变化相应的“星期”也会跟着变化;第二次按下按键K4可以设置闹钟的功能,此时K1、K2和K3分别对应时间和日期“关闭”、“开启”和“移位选择”的功能;第三次按下按键K4可以设置秒表的功能,此时K1、K2和K3分别对应时间和日期“复位”、“暂停”和“计时”的功能;第四次按下按键K4可以退出设置功能,因为该万年历加入了语音芯片,此时按下K2键具有语音报时的功能。
       
        由于DS18B20具有温度采集检测的功能,所以液晶屏显示的温度会随着周围环境温度的变化而变化。该万年历设置有复位电路,连接一个按键K可以自动实现复位功能。
       
       
        图3可测温式电子万年历程序流程图

         

          3调试和分析
       
        待该可测温式电子万年历焊接和软件编程完成后,进入调试环节,将keil4中C语言程序生成的hex文件烧入到STC89C52芯片中,连接电源后将万年历放入模拟环境中进行系统调试,调试结果如图4所示。液晶显示屏显示“时间”、“温度”、“日期”和“星期”信息,同时可以整点报时,如图4中A图所示。
       
       
        图4可测温式电子万年历调试结果图

         
        第一次按下K4进入时间和日期的设置,调试结果如图4中B图所示;第二次按下K4进入闹钟的设置,“Y”为开启闹钟,“N”为关闭闹钟,调试结构如图4中C图所示;第三次按下K4进入秒表的设置,调试结构如图4中D图所示;第四次按下K4退出功能设置,此时按下K2具有语音报时功能。
       
        4总结
       
        电子万年历在生活中日益普遍,该设计主要利用时钟芯片DSl302、温度传感器DS18B20和液晶屏LCD1602构建了一个可测温式万年历装置,电路结构简单,具有语音报时功能,适用于家庭生活,使用价值高,具有较好的应用前景。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-23 23:29 , 耗时 0.111285 秒, 20 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表