智能温度报警系统课设.docx
- 文档编号:1277910
- 上传时间:2022-10-20
- 格式:DOCX
- 页数:29
- 大小:396.16KB
智能温度报警系统课设.docx
《智能温度报警系统课设.docx》由会员分享,可在线阅读,更多相关《智能温度报警系统课设.docx(29页珍藏版)》请在冰豆网上搜索。
智能温度报警系统课设
**大学
课程设计说明书
学生姓名:
学号:
学院:
专业:
题目:
智能温度报警系统设计
指导教师:
职称:
2015年月日
一、研究背景和目的································1
二、方案分析设计·································1
2.1、系统设计方案论证······························1
2.2、总体设计框图································2
2.3、DS18B20温度传感器与单片机的接口电路····················10
三、 系统硬件电路设计······························11
3.1、主板电路··································11
3.2、显示电路··································11
四、 系统软件算法设计······························13
4.1、主程序···································13
4.2、读出温度子程序·······························14
4.3、温度转换命令子程序·····························14
4.4、计算温度子程序·······························14
五、课程设计总结································15
六、参考文献··································15
附录······································17
一研究背景和目的
单片机应用已经成为电子设计的一种潮流,单片机的广泛应用是电子技术发展的一个标志,也是电子产品向智能化方向发展的必然趋势。
单片机应用领域非常广泛,已经渗透到我们生活的各个领域,单片机以智能、电路设计简单、成本低、性能稳定、经久耐用等优点著称。
使用单片机,我们可以将电路简化,通过编写程序来完成复杂的逻辑功能。
因电子技术的发展,芯片资源更加丰富,实现的功能更强大,外围电路更简单,使用起来更加方便。
本设计所介绍的智能温度报警器与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以串口传送数据,实现温度显示,能准确达到以上要求。
二方案分析设计
2.1系统设计方案论证
2.1.1方案一:
感温电路
由于本设计是测温电路,可以使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行A/D转换后,就可以用单片机进行数据的处理,在显示电路上,就可以将被测温度显示出来,这种设计需要用到A/D转换电路,感温电路比较麻烦。
2.1.2方案二:
温度传感器
进而考虑到用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的,所以可以采用一只温度传感器DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。
2.1.3方案确定
从以上两种方案,很容易看出,采用方案二,电路比较简单,软件设计也比较简单,故采用了方案二。
设计要求
■基本范围-50℃-110℃
■精度误差小于0.5℃
■LED数码直读显示
■可以任意设定温度的上下限报警功能
2.2总体设计框图
温度计电路设计总体设计方框图如图1所示,控制器采用单片机AT89S52,温度传感器采用DS18B20,用4位LED数码管以串口传送数据实现温度显示。
图1 总体设计方框图
2.2.1主控制器
单片机AT89S52具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。
管脚图如下图2所示。
图2AT89S52管脚图
2.2.2显示电路
显示电路采用6位共阳LED数码管,从P3口RXD,TXD串口输出段码。
2.2.3温度传感器
(1)DS18B20简介
DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。
DS18B20的性能特点如下:
1) 可用数据线供电,电压范围:
3.0~5.5V;
2) 测温范围:
-55~+125℃,在-10~+85℃时精度为±0.5℃;
3) 可编程的分辨率为9~12位,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃;
4) 12位分辨率时最多在750ms内把温度值转换为数字;
5) 负压特性:
电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。
6)、测量结果直接输出数字温度信号,以"一根总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力。
(2)DS18B20管脚
DS18B20采用3脚PR-35封装或8脚SOIC封装,DS18B20内部结构主要由四部分组成:
64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
DS18B20的管脚排列如下:
图3DS18B20外形图
引脚定义:
1)DQ为数字信号输入/输出端;
2)GND为电源地;
3)VDD为外接供电电源输入端(在寄生电源接线方式时接地)。
(3)内部结构如下:
图4DS18B20内部结构图
表164位ROM
DS18B20有4个主要的数据部件:
光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。
64位光刻ROM的排列是:
开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。
光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。
温度报警触发器TH和TL,可通过软件写入报警上下限。
DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。
高速暂存RAM的结构为8字节的存储器,结构如图5所示。
头2个字节包含测得的温度信息,第3和第4字节是TH和TL的拷贝,是易失的,每次上电复位时被刷新。
第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。
DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。
该字节各位的定义如表2所示。
低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。
温度LSB
温度MSB
TH用户字节1
TL用户字节2
配置寄存器
保留
保留
保留
CRC
图5高速暂存RAM
表2DS18B20字节定义
表3温度值分辨率设置表
如表3所示DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。
因此,在实际应用中要将分辨率和转换时间权衡考虑。
高速暂存RAM的第6、7、8字节保留未用,表现为全逻辑1。
第9字节读出前面所有8字节的CRC码,可用来检验数据,从而保证通信数据的正确性。
以下表4为ROM指令表表5为RAM指令表
指令
约定代码
功能
读ROM
33H
读DS1820ROM中的编码(即64位地址)
符合ROM
55H
发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS1820使之作出响应,为下一步对该DS1820的读写作准备。
搜索ROM
0F0H
用于确定挂接在同一总线上DS1820的个数和识别64位ROM地址。
为操作各器件作好准备。
跳过ROM
0CCH
忽略64位ROM地址,直接向DS1820发温度变换命令。
适用于单片工作。
告警搜索命令
0ECH
执行后只有温度超过设定值上限或下限的片子才做出响应。
表4ROM指令表
指令
约定代码
功能
温度变换
44H
启动DS1820进行温度转换,转换时最长为500ms(典型为200ms)。
结果存入内部9字节RAM中。
读暂存器
0BEH
内部RAM中9字节的内容
写暂存器
4EH
发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。
复制暂存器
48H
将RAM中第3、4字节的内容复制到EEPROM中。
重调EEPROM
0B8H
将EEPROM中内容恢复到RAM中的第3、4字节。
读供电方式
0B4H
读DS1820的供电模式。
寄生供电时DS1820发送“0”,外接电源供电DS1820发送“1”。
表5RAM指令表
(4)温度转换
DS18B20启动后保持低功耗等待状态,当需要执行温度测量和AD转换时,总线控制器必须发出[44h]命令。
转换完以后,产生的温度数据以两个字节的形式被存储到高速暂存器的温度寄存器中,DS18B20继续保持等待状态。
当DS18B20接收到温度转换命令后,开始启动转换。
转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速暂存存储器的第1、2字节。
单片机可以通过单线接口读出该数据,读数据时低位在先,高位在后,数据格式以0.0625℃/LSB形式表示。
以12位转化为例:
用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB式表达,其中S为符号位。
表6DS18B20温度值格式表
这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。
例如+125℃的数字输出为07D0H,+25.0625℃的数字输出为0191H,-25.0625℃的数字输出为FF6FH,-55℃的数字输出为FC90H。
表7是一部分温度值对应的二进制温度数据。
温度/℃
二进制表示
十六进制表示
+125
0000011111010000
07D0H
+85
0000010101010000
0550H
+25.0625
0000000110010000
0191H
+10.125
0000000010100001
00A2H
+0.5
0000000000000010
0008H
0
0000000000001000
0000H
-0.5
1111111111110000
FFF8H
-10.125
1111111101011110
FF5EH
-25.0625
1111111001101111
FE6FH
-55
1111110010010000
FC90H
表7一部分温度对应值表
(5)DS18B20完成温度转换后,就把
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 温度 报警 系统