实时时钟读取送LCD-显示+独立键盘设置时间.doc_第1页
实时时钟读取送LCD-显示+独立键盘设置时间.doc_第2页
实时时钟读取送LCD-显示+独立键盘设置时间.doc_第3页
实时时钟读取送LCD-显示+独立键盘设置时间.doc_第4页
实时时钟读取送LCD-显示+独立键盘设置时间.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实时时钟读取送LCD 显示+独立键盘设置时间摘 要 本设计的数字温度计是我院 2006 年参加广西首届大学生电子竞赛获一等奖作品之一。数字温度计是由中央处理器、温度检测器、时钟系统、存储器、显示器、语音播报电路及键盘等部分组成。处理器采用单片机 AT89C51,温度检测部分采用 DS18B20温度传感器,时钟系统用时钟芯片 DS1302,用液晶 LCD1602作为显示器。单片机通过时钟芯片 DS1302获取时间数据,对数据处理后显示时间;温度传感器 DS18B20采集温度信号送该给单片机处理,单片机再把时间数据和温度数据送液晶显示器 LCD1602 显示,键盘是用来调时和温度查询的,本数字温度计还具有多点温度检测和摄氏温度与华氏温度的转换及语音播报等功能。 关键字:单片机 温度传感器 DS18B20 ISD1420 一 设计方案比较 1.1 设计方案与论证 按照系统的设计功能要求,本时钟温度系统的设计采用单片机软件系统实现,用单片机的自动控制能力配合按键控制,来控制时钟、温度的检测存储和查询及显示。 确定设计系统由单片机主控模块、时钟模块、测温模块、录音播报模块、显示模块、键盘接口模块和无线遥控共七个模块组成,电路系统框图如图 1所示。1)时钟方案选择 时钟功能的实现有两种方案: 一是用软件实现,直接用单片机的定时器编程以实现时钟;二是用专门的时钟芯片实现时钟的计时,再把时间数据送入单片机,由单片机控制显示。比较两种方案,用软件实现时钟固然可以,但是程序运行的每一步都需要时间,多一步或少一步程序都会影响计时的准确度,用专用时钟芯片DS1302 则可以实现准确记时。所以选二方案。 2)显示方案选择 方案一:时钟和温度的显示可以用数码管,但数码管的只能显示简单的数字,其电路复杂,占用资源较多,显示信息少,不宜显示大量信息。 方案二:我们设计的系统需要显示的信息多,所以应选用显示功能更好的液晶显示,要求能显示更多的数据,增加显示信息的可读性,看起来更方便。而液晶 LCD1602 有明显的优点:微功耗,尺寸小,超薄轻巧,显示信息量大,字迹美观,视觉舒适,而且容易控制。所以选择方案二。3)遥控方案选择 方案一:有线遥控:采用有线遥控抗干扰能力强,由于它与控制对象直接相连,所以它的控制距离有限。由于它的这个局限性,这种技术一般只用于短距离控制。 方案二:无线遥控:无线电遥控最主要的特点是,遥控距离远。一般不受遥控方向或角度的制约,无线电波接收器能接收数十米至数百米外由操作者操纵无线电波发射器送来的电波信号。通过以上两种方案的比较,我们选择方案二。 4)测温元件方案选择 方案一: 由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,再将随着被测温度变化的电压或电流采集过来,进行 A/D 转换后,用单片机进行数据的处理,就可以将测温度显示出来。这种设计需要用到 A/D 转换电路,测温电路比较复杂。 方案二:温度传感器 DS18B20 是美国 DALLAS 半导体公司最新推出的一种改进型智能温度传感器,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现 912 位的数字值读数方式,它内部有一个结构为 8 字节的高速暂存RAM 存储器。我们通过比较选择方案二。 二 理论计算 2.1 温度计算 实现温度的实时显示是由计算温度子程序将 RAM 中读取值进行 BCD 码的转换运算,并进行温度值正负的判定,从 DS18B20 读取出的二进制值必须先转换成十进制值,才能用于字符显示。因为 DS18B20 的转换精度为 9-12 位可选的,为了提高精度采用12位。在采用12位转换精度时,温度寄存器里的值是以0.0625为步进的,即温度值为温度寄存器里的二进制值乘以 0.0625,就是实际的十进制温度值。华氏温度与摄氏温度的转换公式: 摄氏:C=5/9 C(F-32) 华氏:F=9/5 C+32 计算温度子程序流程图见图 2三 系统硬件电路的设计 根据方案的选择,系统由AT89C51、时钟电路、语音电路、显示电路、测温电路、键盘电路和无线遥控电路组成。其电路如图 3 所示:各功能模块设计如下: 3.1 显示电路设计 显示电路采用液晶 LCD16O2。它是一种字符型液晶模块,是一种用57点阵图形来显示字符的 16 2 点阵液晶显示器。其特点是:亮度高、工作电压低、功耗小、易于集成、驱动简单、寿命长、耐冲击且性能稳定。LCD16O2与单片机接口采用串行方式控制。 3.2 温度模块设计 由于传统的热敏电阻等测温元件测出的一般都是电压,再转换成对应的温度,需要比较多的外部元件支持,且硬件电路复杂,制作成本相对较高。而 DS18B20 温度传感器是美国DALLAS 半导体公司最新推出的一种改进型智能温度传感器,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。DS18B20 温度模块与单片机的连接如图 4 所示。3.3 语音模块设计 现在语音处理合成芯片大多是先将语音经A/D 转换后存入存储器中,放音时取出再经D/A 转换输出。美国信息存储器件公司推出的ISD系列语音电路采用直接模拟存储技术,不需要专用开发工具、编程器,接口灵活、操作简单,使用方便。我们设计的语音模块如图5所示。 3.4 键盘接口设计 由于按键只用 4 个,分别实现为整点报时、多路路温度转换、设定时间/上限下限温度和加一键,因此,我们采用独立式按键。独立式按键是各按键相互独立,每个按键占用一根I/O 端线,每根I/O 端线上的按键工作状态不会影响其它I/0端线上按键的工作状态,且电路结构简单,独立式按键配置灵活。 3.5遥控模块设计 我们用 PT2262T 和 PT2272 设计了一个可控制的无线遥控电路。此无线遥控电路是通过单片机发出控制信号到PT2262编码电路再经过发射电路把信号发射出去,再由接收电路把信号接收到PT2272解码器进行解码,用解码出来的信号去控制电路,从而达到远距离控制的目的。此电路可以同时进行四路信号控制,电路如图6 所示。3.6 时钟模块的设计 我们采用DS1302作为计时芯片,主要为了提高计时精确度,更重要的就是DS1302 可以在后备电源下可以继续计时,并可编程选择来对后备电源进行充电,而后备电源基本不耗电. 电路如图 7 所示。四 软件系统的设计 4.1 主程序 系统主程序首先对系统进行初始化,包括设置定时器、中断和端口;然后显示开机画面,系统程序不断地循环执行显示效果,其程序流程图如图 8 所示。 4.2 时间显示程序 采用时钟芯片 DS1302,所以只需从 DS1302 各寄存器中读出小时、分钟、秒,再处理即可。在首次对 DS1302 进行操作之前,必须对它进行初始化,然后从 DS1302 中读取数据,再经过处理后,送给显示缓冲单元,其程序流程图略。4.3 时间调整程序设计 调整时间用两个调整按钮,一个做为移位控制用,另外一个做为加 1用,分别定义控制按钮、加 1 按钮。在调整时间过程中,要调整的位与别的位应该有区别,所以增加了闪烁功能,即调整的位一直在闪烁直到调整下一位。闪烁原理就是让要调整的位,每隔一定时间熄灭一次,比如说1S。利用定时器计时,当达到 1S 溢出时,就送给该位熄灭符,在下一次溢出时,再送正常显示的值,不断交替,直到调整该位结束,此时送正常显示值给该位,再进入下一位调整,时间调整程序程序。 4.4 读取温度流程图 该程序的主要功能是负责温度的实时显示、读出并处理 DS18B20的测量温度值,温度测量每1s 进行一次。读出温度子程序主要是读出 RAM 中的 9 个字节,在读出时需进行 CRC 校验,校验有错时不进行温度数据的改写。其程序流程图如图 9 所示。 五 测试方法与实验数据 5.1 硬件和软件调试 1 硬件调试时,可先检查印制板及焊接的质量是否符合要求,有无虚焊点及线路间有无短路、断路。然后用万用表检测,检查无误后,可通电检查 LCD 液晶显示器亮度情况,一般情况下取背光电压为 45.5V 即可得到满意的效果。 2. DS1302与单片机相连的只有3根线,很容易检查,主要检查DS1302管脚与晶振、电源是否连接好。 3.软件调试是在 MedWin 编译器下进行,源程序编译及仿真调试应分段或以子程序为单位逐个进行,最后结合硬件实时调试。子程序调试包括: 1).DS1302 的计时和读写程序、显示程序; 2).ISD1420 的语音播放; 3).DS18B20读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据刷新子程序。5.2 实验数据. (1)温度测量 用 DWC-2多路温度测试仪,与DS18B20 所测得的数据如下: 标准测量 C18.418.618.819.520.221.622.623.2测量温度 C18.318.418.719.519.821.222.422.1恒温时间6:307:308:008:308:459:009:209:40 (2)时间测量 各时间段7:008:009:0010:00测量出误差+0.130.140.1+0.12各时间段11:0012:0013:0014:00测量出误差+0.120.120.14+0.1 六 结束语 本数字温度计可测量并显示温度值,测量范围:0100,温度测量误差小, 温度显示稳定。可交替显示当前测量日期、时间、温度;可调整显示时期、时间、可设定最低、最高温度报警值。当测量温度超过设定的温度上、下限时,启动蜂鸣器和指示灯报警。可连接多个温度传感器,显示相应的温度值,用于监测多个区域的环境温度,还增加摄氏温度与华氏温度转换功能。能设定整点自动播报时间、温度和手动实时播报时间和温度。本

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论