文档详情

单片机控制的数字温度计和数字钟.doc

发布:2017-09-20约3.74千字共15页下载文档
文本预览下载声明
绪 论 随着时代的进步和发展,单片机技术已经普及到生活工作科研等各个领域,已经成为一种比较成熟的技术本文将介绍一种基于单片机控制的数字温度计和数字钟,本数字温度计属于多功能温度计,可以设置温度上下报警,当温度不在设范围内时,可以报警;本数字钟可以显示时间日历,日期和时间都可通过按键整。本系统采用的DS1302可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。本系统显示部分采用LCD液晶显示屏显示,工作方便,外形美观采用液晶显示屏LCD1602LCD1602电路简单,功耗低,显示信息量大,显示质量高,显示界面美观、友好。 是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的单片机可为您提供许多较复杂系统控制应用场合。DS18B20。DS18B20 测量温度,输出信号全数字化,便于单片机处理及控制,单总线的数据传输,省去传统的测温方法的很多外围电路,系统的结构可以做得较为紧凑。 . 1.4、显示部分选择 一般的数据输出可采用数码管,但是,采用七段LED数码管显示,虽然显示较为清楚,但由于本项目设计所要求输出的数据较多,如果采用数码管显示,则会用到多个数码管,将导致硬件电路复杂化,也会占用较多的线路板面积,也会给软件设计实现上带来困难,并且整个电路的功耗也会较大。顾考虑采用液晶显示器lcd1602作为数据的输出显示部件。该芯片可显示16×2个字符,显示字符多。另外,l602芯片编程。 3、硬件设计 系统整体硬件电路包括:单片机主板电路传感器数据采集电路,,温度和时间显示电路中的按健复位电路是上电复位加手动复位 DS18B20是美国DALLAS公司的新一代单总线数字温度传感器,其单总线是将地址线、数据线、控制线合三为一根信号线,单片机只需一根端口线就能与DS18B20串接和通讯。实现了一信号线上进行双向数据传输。 3.3、液晶显示电路设计 LCD1602液晶显示器属于工业字符型液晶,能够同时显示16x02即32个字符。液晶模块内部的字符发生内存(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”4个,分别实现为时间调整键、时间增加,时间减少、时间确认按键。 4、软件设计 本次设计用Keil编程软件进行软件设计。Keil软件是目前最流行的开发MCS-51 系列单片机软件,近年来各仿真机厂商纷纷宣布全面支持Keil。Keil提供了包括C 编译器、宏汇编、连接器、库管理和仿真调试器在内的完整开发方案,通过集成开发环境将这些部分组合在一起。Keil支持汇编语言和C语言的程序设计,易学易用 4.1、系统流程图 系统主程序首先对系统进行初始化,显示开机画面。由于单片机没有停止指令,所以可以设计系统程序不断地循环执行上述显示效果。系统流程图如图6所示。 图6 系统流程图 4.2、DS18B20芯片程序设计 系统程序的设计主要包括C程序主函数、DS18B20复位函数、DS18B20写字节函数、DS18B20读字节函数、温度计算转换函数和显示函数等,系统主程序设计流程图如图10所示。 图7 DS18B20芯片程序流程图 4.3、键值处理程序流程图,如图8所示 图8 键值处理程序流程图 4.4、时钟程序的设计 因为使用了时钟芯片DS1302,阳历程序只需要从DS1302各寄存器中读出年、周、月、日、小时、分、秒等数据,再处理既可。对其进行初始化,然后从DS1302中读出数据,再经过处理后,送给显示缓存单元。时钟程序流程图见图9所示。 图9 时钟程序流程图 4.5、液晶程序设计 时钟需显示时间、温度。以上两个模块都需将数值送显示模块。 液晶的一般初始化过程: 延时15mS 写指令38H(不检测忙信号) 延时5mS 写指令38H(不检测忙信号) 延时5mS 写指令38H(不检测忙信号) 以后每次写指令、读/写数据操作均需要检测忙信号 写指令38H:显示模式设置 写指令08H:显示关闭 写指令01H:显示清屏 写指令06H:显示光标移动设置 写指令0CH:显示开及光标设置void en_toggle() { en=0; //_nop_(); delay(); en=1; delay(); // _nop_(); en=0; } //液晶延时
显示全部
相似文档