本科毕业设计论文基于单片机的温度警报系统课程设计论文Word文件下载.docx
《本科毕业设计论文基于单片机的温度警报系统课程设计论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《本科毕业设计论文基于单片机的温度警报系统课程设计论文Word文件下载.docx(28页珍藏版)》请在冰豆网上搜索。
本文介绍了基于STC89C52单片机、DS18B20温度传感器的温度警报器的设计。
使用LCD液晶显示屏实时显示当前温度。
还拥有可调节上下限温度按键,当温度失控时(即超出监控的温度区间)及时发出警报。
关键词:
STC89C52单片机;
DS18B20温度传感器;
温度警报
目 录
引言1
1课程设计的要求1
2设计方案1
2.1可控门限温度警报器的设计分析1
2.2各模块方案选择与论证1
3硬件及其关键技术介绍3
3.1电路设计3
3.2单片机最小系统的设计4
4软件设计9
4.1主程序流程图9
4.2电路仿真图10
5性能测试10
5.1测试用例10
5.2测试结果分析11
5.3测试过程错误分析11
6设计总结11
谢辞13
参考文献14
附录15
引言
在众多场合需要用到温度报警器。
例如变压器超温报警、冰箱温度异常、环境温度监测、配电柜温度监测、蔬菜大棚等地方都可应用。
本次设计基于温度传感器和单片机实现了在一个温度区间内的监控,提供了警报和显示功能。
其研究具有一定的学术价值和广泛的市场前景。
1课程设计的要求
本设计采用STC89C52单片机为核心,结合液晶显示屏1602和温度传感器18B20等外围电路,通过程序组成一个温度报警器,使其具有如下功能。
具体要求有:
1、能够实时显示当前温度
2、能够用按键调节上下限温度
3、超出所监控的温度区间发出警报
2设计方案
2.1可控门限温度警报器的设计分析
本文介绍的是采用数字温度传感器作为敏感元件的温度警报器,当温度超出或低于所给的温度区间时,会发出警报声以及相应的灯会亮,温度过高时蜂鸣器发出混浊的声响及红灯亮,温度过低时蜂鸣器发出尖锐的声响及绿灯亮。
此次设计的温度区间可通过按键调节。
2.2各模块方案选择与论证
2.2.1单片机的选择
方案一:
采用STC89C52单片机。
STC89C52单片机是STC公司生产的低功耗,高可靠的单片机,是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
它具有8K字节可编程FLASH存储器(次数:
100,000次以上),512位内部RAM,两个16B定时/计数器,低功耗的闲置和掉电模式且支持在线仿真。
用STC提供的STC-ISP.exe工具可将原有的代码下载进STC相关的单片机,或用通用编程器编程。
STC89C52芯片功能强大,内部超级加密,,利用ISP技术写入程序,无读出命令,无法解密,可灵活应用于各种控制领域且价格便宜。
方案二:
采用陵阳61单片机(SPCE061A)。
该单片机有32位通用可编程输入/输出端口,2个10位DAC(数-模转换)输出通道,7通道10位电压模-数转换器(ADC)和单通道语音模-数转换器。
具有RAM、ROM空间大、指令周期短、运算速度快、低功耗、低电压等特点,其中声音模-数转换器输入通道内置麦克风放大器自动增益控制(AGC)功能:
可编程音频处理,使用凌阳音频编码SACM_S240方式(2.4K位/秒),能容纳210秒的语音数据,但价格昂贵。
综上所述,由于方案一价格低廉,本系统程序小,储存器容量小,能实现系统功能,故采用方案一。
2.2.2按键的选择
按键控制采用独立式按键,直接在单片机的I/O口上接上按键。
如图所示:
图2-1独立按键
key0实现温度减一操作;
key1具有两个功能:
1.切换当前操作上/下限温度状态,2.实现温度加一操作。
2.2.3显示方案的选择
采用传统的数码管显示。
数码管具有低压低耗能、寿命长、对外界环境要求低等特点,而且其精度比较高。
采用BCD编码方式显示数字,程序编译简单,但占用I/O接口较多。
采用MZLH01-12864显示。
MZLH01-12864为一块128×
64点阵的LCD显示模组,模组自带两种字号的二级汉字库,并且自带基本绘图GUI功能,包括画点、画直线、矩形、圆形等;
此外还自带有两种字号的ASCII码西文字库。
模组上为串行SPI接口,电源和背光之外通信仅需要连接一根从机选择线(SS)、一根时钟线(SCK)、一根数据线(SDA)以及一根BUSY线即可;
但价格昂贵,有很多功能没有用到,很浪费。
方案三:
采用LCD1602显示,LCD1602是一种用5×
7点阵图形或5×
10图形来显示字符的液晶显示器。
LCD1602有明显的优点:
微功耗、尺寸小、超薄轻巧、显示信息量大、字迹清晰、显示稳写美观。
但LCD1602不能显示中文字符,但并不影响本市计的要求。
权衡利弊,采用第三种方案来实现本温度警报器的显示功能。
2.2.4温度传感器的选择
采用pt100温度传感器。
pt100温度传感器是一种将温度变量转换为可传送的标准化输出信号的仪表。
主要用于工业过程温度参数的测量和控制。
带传感器的变送器通常由两部分组成:
传感器和信号转换器。
传感器主要是热电偶或热电阻;
信号转换器主要由测量单元、信号处理和转换单元组成(由于工业用热电阻和热电偶分度表是标准化的,因此信号转换器作为独立产品时也称为变送器),有些变送器增加了显示单元,有些还具有现场总线功能。
采用DS18B20数字温度传感器。
DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。
主要根据应用场合的不同而改变其外观。
封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。
耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。
考虑到成本及易使用性,选择方案二DS18B20作为本次设计的温度传感器。
3硬件及其关键技术介绍
3.1电路设计
温度警报器的基本框图如下:
图3-1温度警报基本框图
单片机将温度传感器中的温度数据读取出来,并在LCD上实时显示。
通过按键来调节所要监控的温度区间,当温度发生失控时警报电路作出相应的反应。
3.2单片机最小系统的设计
单片机最小系统电路原理图如图:
图3-2单片机最小系统电路原理图
该单片机最小系统有复位电路和晶振电路等。
为了给单片机供电和方便程序下载到单片机中,设计了STC下载电路。
3.2.1STC89C51单片机
STC89C52片内含有Flash程序存储器、SRAM、UART、SPI、A\D、PWM等模块。
该器件的基本功能与普通的51单片机完全兼容。
主要特性:
1.内置标准51内核,机器周期:
增强型为6时钟,普通型为12时钟;
2.工作频率范围:
0~40MHZ,相当于普通8051的0~80MHZ;
3.STC89C5xRC对应Flash空间:
4KB\8KB\15KB;
4.内部存储器(RAM):
512B;
5.定时器\计数器:
3个16位;
6.通用异步通信口(UART)1个;
7.中断源:
8个;
8.有ISP(在系统可编程)\IAP(在应用可编程),无需专用编程器\仿真器;
9.通用I\O口:
32\36个;
10.工作电压:
3.8~5.5V;
11.XTAL2(18脚)、XTAL1(19脚):
使用内部振荡器时,用来外接石英晶体和电容。
晶振电路的电路原理图如下:
图3-3晶振电路原理图
12.RST(9脚):
复位输入端。
使RST=1时,单片机内部复位为初始状态。
复位电路的电路图如下:
图3-4复位电路原理图
52系列单片机为许多控制提供了高度灵活和低成本的解决方法。
充分利用它的片仙资源,即可在较少外围电路的情况下构成功能完善的温度警报器。
3.2.2DS18B20温度传感器
DS18B20的特性:
1独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。
2测温范围-55℃~+125℃,固有测温误差(注意,不是分辨率,这里之前是错误的)1℃。
③支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。
3工作电源:
3.0~5.5V/DC(可以数据线寄生电源)
4在使用中不需要任何外围元件
5测量结果以9~12位数字量方式串行传送
6不锈钢保护管直径Φ6
7适用于DN15~25,DN40~DN250各种介质工业管道和狭小空间设备测温
8标准安装螺纹M10X1,M12X1.5,G1/2”任选
⑩PVC电缆直接出
DS18B20温度传感器时序图:
此处的主控器为单片机
图3-5复位时序图
图3-6写时序图
图3-7读时序图
3.2.3LCD液晶屏
1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线
VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中:
图3-8液晶屏引脚图
表3-1引脚功能说明表
引脚
符号
功能说明
1
VSS
一般接地
2
VDD
接电源(+5V)
3
VO
液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
4
RS
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
5
RW
R/W为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
6
E
E(或EN)端为使能(enable)端,
写操作时,下降沿使能。
读操作时,E高电平有效
7
DB0
低4位三态、双向数据总线0位(最低位)
8
DB1
低4位三态、双向数据总线1位
9
DB2
低4位三态、双向数据总线2位
10
DB3
低4位三态、双向数据总线3位
11
DB4
高4位三态、双向数据总线4位
12
DB5
高4位三态、双向数据总线5位
13
DB6
高4位三态、双向数据总线6位
14
DB7
高4位三态、双向数据总线7位(最高位)(也是busyflag)
15
BLA
背光电源正极
16
BLK
背光电源负极
表3-2寄存器选择控制表
操作说明
写入指令寄存器(清除屏等)
读busyflag(DB7),以及读取位址计数器(DB0~DB6)等
写入数据寄存器(显示各字型)等
从数据寄存器读取数据
注:
关于E=H脉冲——开始时初始化E为0,然后置E为1,再清0.
busyflag(DB7):
在此位为1时,LCD忙,将无法再处理其他的指令要求。
读写时序图:
图3-9LCD读时