单片机温度控制与检测课程设计文档格式.docx

上传人:b****3 文档编号:15049966 上传时间:2022-10-27 格式:DOCX 页数:20 大小:152.52KB
下载 相关 举报
单片机温度控制与检测课程设计文档格式.docx_第1页
第1页 / 共20页
单片机温度控制与检测课程设计文档格式.docx_第2页
第2页 / 共20页
单片机温度控制与检测课程设计文档格式.docx_第3页
第3页 / 共20页
单片机温度控制与检测课程设计文档格式.docx_第4页
第4页 / 共20页
单片机温度控制与检测课程设计文档格式.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

单片机温度控制与检测课程设计文档格式.docx

《单片机温度控制与检测课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《单片机温度控制与检测课程设计文档格式.docx(20页珍藏版)》请在冰豆网上搜索。

单片机温度控制与检测课程设计文档格式.docx

当温度在设置范围内绿灯亮。

2设计方案及原理

2.1温度测量部分

DS18B20适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围-55~+125℃,可编程为9~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,业可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。

从而可以看出DS18B20可以非常方便的被用于远距离多点温度检测系统。

综上,在本系统中我采用温度芯片DS18B20测量温度。

该芯片的物理化学性很稳定,它能用做工业测温元件,且此元件线形较好。

在0—100摄氏度时,最大线形偏差小于1摄氏度。

该芯片直接向单片机传输数字信号,便于单片机处理及控制。

2.2主控制部分

在设计方案中传感器将温度信号转化电信号,以9位2进制的形式传递给单片机处理。

P0口;

是一个复用锻炼端口,既可以作为通用的8位准双向I/O端口进行数据并行输入/输出,也可以作为复用的地址/数据总线,通常提供低八位地址,在这里主要是与LCD显示屏链接;

P1口:

通用八位准双向I/O端口,设计中用于键位的设置;

P2口:

是一个复用端口,从理论上讲,可以作为8位准双向I/O端口使用,但实际使用时总是作为高位地址总线使用,设计中用于与指示灯通信;

P3口:

是一个复用端口,设计中用于读取传感器的温度信号。

2.3设计方案

考虑到使用温度传感器,结合单片机电路设计采用一只DSL8B20温度传感器直接测取温度,之后进行温度转换依次完成设计要求,本系统电路设计方框图如所示。

它由六部分组成:

控制部分主芯片采用AT80C52;

温度采集部分采用DS18B20;

温度显示部分采用LCD液晶显示屏;

加热控制电路;

蜂鸣器控制电路;

警示灯显示电路。

图1系统结构框图

3硬件设计

3.1硬件电路

该系统采用AT89C52芯片,显示部分选择LCD液晶显示屏,与单片机接口链接。

基于单片机和显示屏的选择原理和方案,在该系统中我们还选择小的键盘作为简单的控制部分。

其中“+”“-”用来调节液晶显示屏的温度范围,设置键可以移动光标。

在前面基本原理的叙述中,上文中已经提到采集,检测温度可以利用传感器DS18B20,它的原理之前已介绍,经过前面各个模块功能原理及连接图型的描述与分析,现在将各模块连接起来,作为一个整体的基于单片机的温度控制系统,绘制其硬件连接图见附录B。

4软件设计

4.1流程图及说明

本设计方案由硬件和软件结合实现。

首先将硬件电路连接好,加载已经写好的程序,由软件实现相应控制。

脉冲信号由外部石英晶体向单片机输入,温度设置信号由P1.2、P1.3、P1.4三个管脚输入单片机,当温度传感器DS18B20传递回来的温度若高于设置的上限温度时,与P2.0相连接的红色指示灯闪烁;

当传递回来的温度低于设置的下限温度时,与P2.1相连接的绿色指示灯亮,此时,P2.4口输出为低电平,继电器自动闭合,开始加热;

当温度在所设置的上限温度与下限温度之间时,与P2.2连接的绿灯亮。

而由DS18B20传递回来的温度会经过单片机内部的软件处理,由P0口输出到液晶实现显示。

从而,实现了温度的检测、控制及显示,流程图如图2所示。

图2系统流程图

5系统仿真及调试结果

5.1加热时仿真结果与分析

在设定系统温度为40~60摄氏度的情况下,由传感器采集的实际温度为29.0摄氏度,由图可见指示灯黄色亮。

为达到预定温度系统处于加热状态。

在仿真图中可见,P2.4口输出为低电平,加热装置开始工作,蜂鸣器报警,输出仿真结果如图3所示。

图3加热仿真结果图

5.2温度范围内仿真结果及分析

在设定系统温度为40~60摄氏度的情况下,传感器采集的的实时温度为56摄氏度,在设置温度范围内,绿灯亮,P1.0口输出为高电平,蜂鸣器不工作输出仿真结果如图4所示。

图4正常工作仿真图

5.3高于设定范围时的仿真结果

在设定系统温度为40~60摄氏度的情况下,传感器采集温度为64.0摄氏度,超出温度设置上限,红灯亮,蜂鸣器报警,仿真结果如图5所示。

图5高温时仿真图

6总结

在一般生活中,有许多方方面面需要对温度的控制,主要是能够保证温度在一定的范围内变化或是保持在恒温,这对系统的稳定性要求很高,对系统的反应能力没有太多的要求。

在本设计中主要介绍了单片机与温度测量的方法,以及各硬件电路的连接方法,最终实现将温度控制在40摄氏度以上,且若高于60摄氏度时发出报警。

在本设计中也可用LED显示代替LCD编程上会更加简便而且可以根据设计需要来拓展显示温度的位数。

本制作的设计中使用了继电器控制的只是隔离电路,以P2.4口的状态来控制加热装置,因此,还可以实现许多其它功能的电路。

通过本次课程设计让我学会了protues以及visio的使用方法,认识到理论知识和实践之间的巨大差异,动手能力不足,在以后的学习中我会努力加强在这方面训练。

 

参考文献

[1]王思明,苟军年等编著.单片机原理及应用系统设计.北京:

科学出版社,2012

[2]曹巧媛主编.单片机原理及应用(第二版).北京:

电子工业出版社,2002

[3]何力民编.单片机高级教程.北京:

北京航空大学出版社,2000

附录A硬件电路连接图

附录B源程序

#include<

reg52.h>

intrins.h>

#defineucharunsignedchar

#defineuintunsignedint

sbitDQ=P3^7;

//18B20接口

sbitd1=P2^0;

//高于上限时,红灯闪烁

sbitd2=P2^1;

//低于下限温度时,绿灯闪烁

sbitd3=P2^2;

//黄灯正常时发光

sbitfeng=P1^0;

//不在正常范围内时蜂鸣器响

sbitsw=P2^4;

//当低于下限时,继电器吸合,升温开始工作

sbitrs=P2^6;

//1602控制位选择

sbitrw=P2^5;

sbiten=P2^7;

bitflag;

bitflag_f;

chartemph,templ;

//上限温度下线温度变量定义

ucharcodetable1[]={"

CT:

C"

};

ucharcodetable2[]={"

H:

+90.0L:

+40.0"

charhf='

+'

hs=9,hg=0,hd=0,lf='

ls=4,lg=0,ld=0;

//温度调整全局变量

voiddelayus(uintus)//延长时间为11*us+3微秒

{

while(--us)_nop_();

}

voiddelayms(uintms)//延时函数1秒

{uintx,y;

for(x=ms;

x>

0;

x--)

for(y=0;

y<

110;

y++);

//*************LCD1602控制函数*****************//

voidlcd_write_com(ucharcom)//写指令

delayms(5);

//维持信号稳定

rs=0;

rw=0;

en=0;

delayms

(1);

en=1;

P0=com;

voidlcd_write_date(uchardate)//写数据

rs=1;

P0=date;

voidlcd_init()//液晶初始化

uchari;

delayms(15);

lcd_write_com(0x38);

lcd_write_com(0x01);

lcd_write_com(0x06);

lcd_write_com(0x0

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 视频讲堂

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1