DS18B20温度采集并由lcd显示

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

温度采集与显示系统

学院名称:光电与通信工程学院

专业名称:电子信息工程2班

组员信息:苏晓峰(1106012206)、郑元凯(1106012215)、梁斌(11060122)

指导老师:***

日期:2014年6月15

目录

•实验专题描述

—实验目的和实验功能

—系统硬件及软件

——STC单片机介绍

•实验原理与方法

— DS18C20简单原理介绍

—LCD1602简单原理介绍

— AT24C02简单原理介绍

•实验结果与讨论

-专题制作过程中所遇到的困难与解決方法•心得与体会

•程序码

一、实验专题描述

单片机综合实验的目的是训练单片机应用系统的编程及调试能力,通过对一个单片机应用系统进行系统的编程和调试,掌握单片机应用系统开发环境和仿真调试工具及仪器仪表的实用,掌握单片机应用程序代码的编写和编译,掌握利用单片机硬件仿真调试工具进行单片机程序的跟踪调试和排错方法,掌握示波器和万用表等杆塔工具在单片机系统调试中应用。

利用STC89C52、DS18B20、LCD1602、AT24C02等元器件设计温度采集与显示系统。系统具有以下功能:

1、能正确检测温度;

2、在1602上实时显示温度;

3、每隔10秒采集一次温度数据并保存到AT24C02

4、按键按下后,可逐个显示之前采集到的数据;

5、其他功能可根据系统上的资源自行设定。

扩展功能:

温度超过设定值,蜂鸣器报警;时间日期的显示;按键按下,重新开始采集温度等等

硬件组成:本系统所用的硬件有如下图

软件组成

软件有:keil软件、windows操作系统和串口调试助手等软件组成。

STC单片机介绍

单片机是随着大规模集成电路的出现极其发展,将计算机的CPU,RAM,ROM,定时/计数器和多种I/O接口集成在一片芯片上,形成了芯片级的计算机,因此单片机早期的含义称为单片微型计算机(single chipmicrocomputer).它拥有优异的性价比、集成度高、体积小、可靠性高、控制功能强、低电压、低功耗的显著优点.主要应用于智能仪器仪表、工业检测控制、机电一体化等方面,并且取得了显著的成果.

图2-1单片机封装及引脚结构

DS18B20数字温度传感器介绍

DALLAS最新单线数字温度传感器DS18B20的“一线器件”体积更小、适用电压更宽、更经济 Dallas 半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。

表2-1DS18B20内部温度表示形式

DS18B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的E2PPRAM,后者存放高温度和低温度触发器TH、T和结构寄存器。暂存存储器包含了8个连续字节,前两个字节是测得的温度信息,第一个字节的内容是温度的低八位,第二个字节是温度的高八位。第三个和第四个字节是TH、TL的易失性拷贝,第五个字节是结构寄存器的易失性拷贝,这三个字节的内容在每一次上电复位时被刷新。第六、七、八个字节用于内部计算。第九个字节是冗余检验字节,见表2-3。

表2-3DS18B20暂存存储器的8个连续字节

寄存器内容字节地址

温度最低数字位0

温度最高数字位 1

高温限值 2

低温限值 3

保留 4

保留 5

计数剩余值 6

每度计数值7

CTR校验8

实验原理与方法

一、通过DS18B20采集温度数据,经I/O口传给单片机,单片机对接收到的数据进行实时在lcd上显示,并十秒采集通过I2C总线送到24c02进行储存,当按键按下时进入外部中断,并在外部中断中进行读取24c02所保存的值并在lcd上显示;拓展功能部分:在lcd 的第二行显示时钟,并配有按键进行调时;温度报警电路,当温度上升到一定值时给蜂鸣器低信号,使其响起。

二、LCD顯示控制格式

实验结果与讨论一、原理图

二、仿真结果

三、硬件结果

软件部分主要遇到的问题是温度采集保存到24c02模块,用一个字发送或者两个字节发送都会出问题,最后用八个字节发送就解决了此问题;关于显示部分,显示放在中断里执行会出现乱码,而放到主程序中则不会。硬件部分主要是复位电路没焊好会使电路一直处于复位状态,反应出来结果就是无法显示任何内容。由于老师给的原理图是公头,而发下来的器件是母头,自己没有注意检查,到最后烧写程序的时候才发现,导致只能用开发板来烧写,给程序调试工作增加了很多工作量,并且单片机在拆卸过程中很容易损坏。

我们在调试过程一定要十分小心谨慎,因为有些芯片都是很容易烧坏的,稍有不慎就会导致某块芯片烧坏而导致实验结果出不来失败。其中我们在检查电路的时候一定要注意检查电路板的短路和虚焊的问题,要经过反复的用万用表不停的检测,由于电路连线比较复杂,所以在测试电路的问题上花了好多的时间。在本次实验中我们碰到的最大的问题就是LCD显示不能读取温度并显示,最终我们通过不断的检查电路和修改发现由于复位电路由一条线没有接地的原因,解决了就可以了啦。

心得与体会

在本次实验中,我们小组分工合作,首先要对所用的芯片进行了解和查找资料。在设计过程中protues仿真对设计来说也是很重要的,利用温

度传感器和时钟芯片进行对温度实践的检测,再将检测到的数据传送单片机经过程序的处理给LCD显示,在程序的调试过程中,主要注意的就是时间延迟函数和中断读取的设置。

通过这次对温度采集和显示的设计与制作,让我们了解了设计电路的程序,也让我们了解了关于单片机的原理与设计理念,要设计一个电路总要先用仿真仿真成功之后才实际接线的。但是最后的成品却不一定与仿真时完全一样,因为,再实际接线中有着各种各样的条件制约着。而且,在仿真中无法成功的电路接法,在实际中因为芯片本身的特性而能够成功。所以,在设计时应考虑两者的差异,从中找出最适合的设计方法。通过这次学习,让我对各种电路都有了大概的了解,所以说,坐而言不如立而行,对于这些电路还是应该动手实际操作才会有深刻理解。从这次的课程设计中,我真真正正的意识到,在以后的学习中,要理论联系实际,把我们所学的理论知识用到实际当中,学习单机片机更是如此,程序只有在经常的写与读的过程中才能提高,这就是我在这次课程设计中的最大收获。

成员苏晓峰记——

在程序调试过程中,通过按键切换设置时间、当前温度和存储的温度一次显示在LCD上,在如何读取温度上的程序有些困惑,不知道用什么方法来写,自己上网查找各种资料,最后决定用中断来写,但调试过程而然碰

相关文档
最新文档