单片机温度监控报警系统.doc
《单片机温度监控报警系统.doc》由会员分享,可在线阅读,更多相关《单片机温度监控报警系统.doc(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本科生开放实验报告实 验 项 目:单片机实时温度监控报警系统学 生 姓 名: 韦锐涛 学 号: 2009051138 学 院: 信息科学技术学院 学 系: 电子工程系 专 业: 电子科学与技术 指 导 教 师: 黄伟英、潘小萍 暨南大学教务处2010 年 12月 25日单片机实时温度监控报警系统摘要:本着熟悉单片机编程,系统设计的目的,增强动手合作能力,选择了做单片机实时温度监控报警系统这个实验项目。本开放性实验主要由AT89S52芯片、1602液晶显示器、DS18B20数字式温度传感器、HK4100继电器、蜂鸣器等组成。通过编程,利用单片机芯片自身的定时器和中断做一个实时时钟,可以记下发生事
2、故时间,通过温度传感器实时采集环境温度显示在液晶屏上,并经过单片机处理,设置两个上限温度报警值,经过继电器控制外围线路。本系统可用于智能家居温控报警,车间温控等,具有一定推广价值。关键字:温度报警 温度上下限 AT89S52单片机 液晶LCD1602 温度传感器DS18B20 目录一、课程任务1.1功能说明二、整体设计方案2.1整体框架及各模块功能三、硬件电路主要模块设计3.1 各模块设计3.1.1传感器的选择3.1.2单片机的选择3.1.3液晶的选择3.2各模块分析3.2.1 单片机89S52管脚图3.2.2 DS18B20引脚及管脚功能介绍3.2.3 LCD1602液晶显示介绍四、控制软件
3、主要模块设计及电路图4.1 单片机模块电路图及分析4.2液晶显示模块电路图及分析4.3温度传感器模块电路图及分析五、系统调试及所遇到问题六、个人总结七、参考文献八、附录 一 课程设计任务1.1功能说明1. 完成温度进行测量,理论测量范围0C+125C2. 可以通过按键进行温度上限两个报警值设定并实现功能;3. 将温度测量值和上限两个温度在LCD液晶显示模块显示;4. 当温度大于上限的较小值时会亮绿灯灯并长声报警,大于较大值时会亮红绿灯并自动断开继电器所控制回路。5. 通过定时器编一个时钟实时显示当前时间,在继电器断开外围电路时会停止时间,记下事故发生时间。二 整体设计方案2.1整体框架及各模块
4、功能本系统共分为七个模块。1、单片机模块,这部分主要实现数据的处理,输出执行,报警设置功能(主要模块)2、液晶显示模块可以分别显示实时温度值,温度上下限。(主要模块)3、温度传感模块的主要功能是通过DS18B20的强大功能实现对温度的采集。(主要模块)4、继电器模块可以控制外围其他线路,如家居电线总开关。5、蜂鸣器模块可以发出报警声。6、LED灯模块可以显示报警信号7、按键可以设置时间和上限的两个温度值温度读取液晶显示继电器控制AT89S52控制器键盘扫描并设置蜂鸣器LED灯 图1 整体框图 图2 温度报警器总电路图开始液晶、定时器、变量初始化键盘扫描、按键处理时钟显示、温度转化并显示Yes温
5、度小于较低温度值正常工作NoYes温度大于较低且小于温度值绿灯亮,有长报警声No温度大于较高温度值红绿灯亮,有短报警声,继电器控制开关断开,停止时钟YesNo结束单片机温度实时监控报警系统流程图三 硬件电路设计(由于继电器、蜂鸣器、LED灯、按键模块结果和线路较为简单,下面主要以单片机控制、液晶显示、温度采集模块为主来分析)3.1各模块设计3.1.1传感器的选择采用DALLAS最新单线数字温度传感器DS18B20。新的“一线器件”体积更小、适用电压更宽、更经济。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20“一线总线”数字化温度传感器也支
6、持“一线总线”接口,测量温度范围为 -55C+125C,在-10+85C范围内,精度为0.5C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。DS18B20的特性:DS18B20可以程序设定912位的分辨率,精度为0.5C。可选更小的封装方式,更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色!继“一线总线”的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20使电压、特性及
7、封装有更多的选择,让我们可以构建适合自己的经济的测温系统。3.1.2单片机的选择AT89S52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。3.1.3液晶的选择采用LCD1602液晶显示模块,有体积小、功耗低、显示内容丰富、超薄轻巧等优点,在袖珍式仪表和低功耗应用系统中得到广
8、泛的应用。目前字符型液晶显示模块已经是单片机应用设计中最常用的信息显示器件。它可以显示两行,每行16个字符,采用单5V电源供电,外围电路配置简单,价格便宜,具有很高的性价比。3.2各模块分析3.2.1单片机89S52管脚图注:引脚说明:电源引脚Vcc(40脚):典型值5V。Vss(20脚):接低电平。外部晶振X1、X2分别与晶体两端相连接。当采用外部时钟信号时,X2接振荡信号,X1接地。输入输出口引脚:P0口:I/O双向口。作输入口时,应先软件置“ 1”。P1口:I/O双向口。作输入口时,应先软件置“ 1”。P2口:I/O双向口。作输入口时,应先软件置“ 1”。P3口:I/O双向口。作输入口时
9、,应先软件置“ 1”。控制引脚:RST/Vpd、ALE/-PROG、-PSEN、-EA/Vpp组成了MSC-51的控制总线。RST/Vpd(9脚):复位信号输入端(高电平有效)。第二功能:加+5V备用电源,可以实现掉电保护RAM信息不丢失。ALE/-PROG(30脚):地址锁存信号输出端。第二功能:编程脉冲输入。-PSEN(29脚):外部程序存储器读选通信号。-EA/Vpp(31脚):外部程序存储器使能端。第二功能:编程电压输入端(+21V)。3.2.2 DS18B20引脚及管脚功能介绍注DQ:数字信号输入输出端。GND:电源地端。VDD:外接供电电源输入端(在寄生电源接线时此脚应接地)。3.
10、2.3 LCD1602液晶显示介绍管脚功能1602采用标准的16脚接口第1脚:VSS为电源地第2脚:VDD接5V电源正极第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高。第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。 第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。 第6脚:E(或EN)端为使能(enable)端。 第714脚:D0D7为8位双向数据端。 第1516脚:空脚或背灯电源。15脚背光正极,16脚背光负极。四 控制软件主要模块设计及电路图4.1单片机模块电路图及分析 图3 单片机接线图P0接
11、液晶数据口,P2.2和P2.3接2个发光二极管,P3接8个按钮,P2.4接蜂鸣器,P2.5接继电器,P2.6接液晶的RS,P2.7接液晶的EN,P1.2接温度传感器,其他按单片机最小系统连接。4.2液晶显示模块电路图及分析 图3 液晶接线图液晶显示模块的子程序:void write_com(uchar com)/写液晶命令函数rs=0;lcden=0;P0=com;delay(3);lcden=1;delay(3);lcden=0;void write_date(uchar date)/写液晶数据函数rs=1;lcden=0;P0=date;delay(3);lcden=1;delay(3);
12、lcden=0;void write_sfm(uchar add,char date)/1602液晶刷新时分秒函数1为时,4为分,7为秒 char shiwei,gewei;shiwei=date/10;gewei=date%10;write_com(0x80+add);write_date(0x30+shiwei);write_date(0x30+gewei);void write_nyr(uchar add,char date)/1602液晶刷新年月日函数3为年,6为分,9为秒char shiwei,gewei;shiwei=date/10;gewei=date%10;write_com(
13、0xc0+add);write_date(0x30+shiwei);write_date(0x30+gewei);4.3温度传感器模块电路图及分析 图4温度传感器接线图温度传感器读取温度以及显示温度的子程序:void dsreset(void) /18B20复位,初始化函数 uint i; ds=0; i=103; while(i0)i-; ds=1; i=4; while(i0)i-;bit tempreadbit(void) /读1位函数 uint i; bit dat; ds=0;i+; /i+ 起延时作用 ds=1;i+;i+; dat=ds; i=8;while(i0)i-; ret
14、urn (dat);uchar tempread(void) /读1个字节 uchar i,j,dat; dat=0; for(i=1;i=8;i+) j=tempreadbit(); dat=(j1); /读出的数据最低位在最前面,这样刚好一个字节在DAT里 return(dat);void tempwritebyte(uchar dat) /向18B20写一个字节数据 uint i; uchar j; bit testb; for(j=1;j1; if(testb) /写 1 ds=0; i+;i+; ds=1; i=8;while(i0)i-; else ds=0; /写 0 i=8;w
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 温度 监控 报警 系统
限制150内