ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:561.15KB ,
资源ID:4315584      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4315584.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(温度检测及报警系统.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

温度检测及报警系统.docx

1、温度检测及报警系统一、 选题背景及研究意义二、 总体设计2.1控制部分2.2测量部分2.3显示部分2.4报警部分三、 硬件设计四、 软件设计五、 总结与展望一、选题背景及研究意义温度是一种最基本的环境参数,人民的生活与环境的温度息息相 关,在工业生产过程中需要实时测量温度,在农业生产中也离不开温度 的测量,因此研究温度的测量方法和装置具有重要的意义。温度是一个十分重要的物理量,对它的测量与控制有十分重要的意 义。随着现代工农业技术的发展及人们对生活环境要求的提高,人们也 迫切需要检测与控制温度:如大气及空调房中温度的高低,直接影响着 人们的身体健康;粮仓温度的检测,防止粮食发霉,最大限度地保持

2、粮 食原有新鲜品质,达到粮食保质保鲜的目的;工业易燃品的存放。 测温技术在生产过程中,在产品质量控制和监测以及节约能源等方面发 挥了着重要作用。本实验设计实现了工业测温基本功能,同时,在设计 实验过程中,运用到单片机、模电、数电、传感器和 C+程序设计等知识,这既能加强我们的理论知识与实践的结合,也能够提高我们应用交 叉学科知识进行综合设计的能力。二、总体设计 总体设计框图:控 制 部 分2.1控制部分控制部分是采用单片机STC89C522.1.1STC89C52 简介STC89C52是一种带8K字节闪烁可编程可檫除只读存储器的低电 压,高性能COMOS的微处理器,俗称单片机。该器件采用 AT

3、MEL高密 度非易失存储器制造技术制造,与工业标准的 MCS-51指令集和输出管脚相兼容。单片机总控制电路如下图4 1:2.1.2复位操作复位操作有上电自动复位相按键手动复位两种方式。上电自动复位是通过外部复位电路的电容充电来实现的, 其电路如图4-2 (a)所示。这佯,只要电源 Vcc的上升时间不超过 1ms, 就可以实现自动上电复位,即接通电源就成了系统的复位初始化。按键手动复位有电平方式和脉冲方式两种。其中,按键电平复 位是通过使复位端经电阻与 Vcc电源接通而实现的,其电路如图4-2 (b)所示;而按键脉冲复位则是利用 RC微分电路产生的正脉冲来实现的,其电路如图4-2 (c)所示:

4、(a)上电复位 (b)按键电平复位图4-2复位电路 上述电路图中的电阻、电容参数适用于 位信号高电平持续时间大于 2个机器周期6MHz晶振,能保证复本系统的复位电路采用图 4-2 (b)上电复位方式2.1.3STC89C52具体介绍如下:1主电源引脚(2根)VCC(Pin40):电源输入,接+ 5V电源GND(Pin20):接地线2外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端3控制引脚(4根)RST/VPP(Pin9):复位引脚,弓I脚上出现 2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号

5、PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部 程序存储器读指令,如果接高电平则从内部程序存储器读指令。4可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O 口,分别位 PO、P1、 P2、P3 口,每个口有 8位(8根引脚),共 32根。POD ( Pin39 /Pin32 ) : 8 位双向 I/O口线,名称为P0.0P0.7P1 口( Pin1 ,Pin8 ) : 8位准双向I/O口线,名称为P1.0P1.7P2 口( Pin21Pin28 ) : 8位准双向I/O 口线,名称为P2.0 P2.7P

6、3 口( Pin10Pin17 ) : 8位准双向I/O 口线,名称为P3.0 P3.72.1.4 STC89C52主要功能,如下表所示STC89C52主要功能主要功能特性兼容MCS51指令系统8K可反复擦写Flash ROM32个双向I/O 口256x8bit 内部 RAM3个16位可编程定时/计数 器中断时钟频率0-24MHZ2个串行中断可编程UART串行通道2个外部中断源共6个中断源2个读写中断口线3级加密位低功耗空闲和掉电模式软件设置睡眠和唤醒功能2.2测量部分测量部分我们采用美国 DALLAS公司生产的 DS18B20温度传感2.2.1 DS18B20 简介DS18B20数字温度传感

7、器,该产品采用美国 DALLAS公司生产的 DS18B20可组网数字温度传感器芯片封装而成,具有耐磨耐碰,体 积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测 温和控制领域。2.2.2封装及接线说明:DS18B20芯片封装结构:特点:独特的一线接口,只需要一条口线通信 多点能力,简化了分布式温度传感应用 无需外部元件 可用数据总线供电, 电压范围为3.0V至5.5V无需备用电源 测量温度范围为-55 C至+ 125 C。华氏相当于是 -67 F到257华氏度-10 C至+85 C范围内精度为士 0.5 C223 DS18B20控制方法DS18B20有六条控制命令:温度转换44H:启动

8、DS18B20进行温度转换读暂存器BEH:读暂存器9个字节内容写暂存器4EH :将数据写入暂存器的 TH、TL字节复制暂存器48H :把暂存器的TH、TL字节写到E2RAM中读电源供电方式 B4H :启动DS18B20发送电源供电方式的信号给主CPU2.2.4DS18B20 的初始化2.2.5DS18B20 的写操作2.2.6DS18B20 的读操作2.3显示部分显示部分是用 LCD1602液晶显示2.3.1 LCD1602 引脚说明引脚号引脚名电平输入#输岀1电源地2UCC电源(巧叩3U对比调整电压4KS0/1输入讳入数癌R/W0/1输入沪冋L叩弓入詭童或数据1=从LCD钱取皓怠aE10输入

9、使能信号,1旳诱取信息. If讯下降沿7扌命指令7BO0/1输入f输出数据line 0(最低位80/1输入f输出数据总钱iwz90/1输入f输出数据 SlineZ100B30/1;输入#输出数据DEM*0/1输入/输出-12DOS0/1输入/输出数拒总线1凶D060/1输入/输出数据总线0B7O/l输入/输出数据总lin P2八5、P2P相连;四、软件设计系统软件程序基于Keil uvsion3开发平台,采用C51语言编写。本程序 采用模块化程序方法,主要分为以下三个模块:LCD初始化显示模块DS18B20数据采集模块温度报警上下限设置模块程序流程图:主程序流程图N跳出 DS18B2 0数据采

10、集流程图进入设置模式(按键)设置温度报警上下限TH 与 TL调用DS18B20模块二 Temp=TH|Tempv=TL? N报警(LED亮,蜂鸣 器响)温度显示报警模块流程图源程序:#in clude#defi ne uchar un sig ned char#defi ne uint un sig ned intsbit DQ=P1A7; ds18b20 与单片机连接口sbit RS二卩2八4;sbit RW=P2A5;sbit EN=P2A6;sbit K仁 P2P;sbit K2=P2A1;sbit K3=P2A2;sbit LED=P1A0;sbit beep二PM5;un sig n

11、ed char code str1=temperature is:;un sig ned char code str2= ;uchar code LCD1010=0123456789;uchar data disdata16=0x00,0x00,0x00,0x2E,0x00,0xDF,0x20,0x48,0x3D,0x00,0x00,0x20,0x4C,0x3D,0x00,0x00;uint tvalue; II 温度值uchar tflag; II温度正负标志uchar flat,up nu m,dow nnu m,temp;void delay1ms( un sig ned int ms)

12、/延时 1 毫秒un sig ned int i,j; for(i=0;ims;i+) for(j=0;j0;x-) for(y=110;y0;y-);void wr_com (un sig ned char com)II写 指令 II delay1ms(1);RS=0;RW=0;EN=0;P0=com; I* LCD 数据传送口 *Idelay1ms(1);EN=1;delay1ms(1);EN=0;void wr_dat( un sig ned char dat)I写 数据 II delaylms(l);RS=1;RW=0;/* LCD数据传送口 */EN=O;P0=dat; delay1

13、ms(1);EN=1;delay1ms(1);EN=0;void lcdnit()初始化设置/ delay1ms(15);wr_com(0x38);delay1ms(5);wr_com(0x08);delay1ms(5);wr_com(0x01);delay1ms(5);wr_com(0x06);delay1ms(5); wr_com(0x0c);delay1ms(5); 一 一 void display (un sig ned char *p)显示 / while(*p!=0)wr_dat(*p);p+;delay1ms(1);ini t_play()/初始化显示 _lcdn it();wr

14、_com(0x80);display(str1);wr_com(0xC0);display(str2);*DS18B20测温模块*void delay_18B20(u nsig ned int i)/延 时 1 微秒 _while(i-);void ds1820rst() un sig ned char x=0;DQ = 1; DQ 复位delay_18B20(4); 延时DQ = 0; /DQ 拉低delay_18B20(100); /精确延时大于 480usDQ = 1; / 拉高delay_18B20(40);uchar ds1820rd() un sig ned char i=0;un

15、 sig ned char dat = 0;for (i=8;i0;i-) DQ = 0; /给脉冲信号dat=1;DQ = 1; /给脉冲信号if(DQ)dat|=0x80; delay_18B20(10);retur n(dat);void ds1820wr(uchar wdata)un sig ned char i=0;for (i=8; i0; i-) DQ = 0;DQ = wdata&0x01; delay_18B20(10);DQ = 1;wdata=1;read_temp()uchar a,b;ds1820rst(); ds1820wr(0xcc); ds1820wr(0x44

16、);ds_k82oso八dsk820w(0xcc)y/ dsk820w(0xbe)y/ aHdsk820d()八 buds1820dp fva-ueub- fva-ueAAHo?fva-ueAva-ue-Bifava-uecoxoffoff-agHO 八e-seva-ueH fva-ue+nff-agHk八fva_ueAva_ue*(p625)y/law refurnava-ue)八 void ds1820disp()畜w血和引 宀 ucha二disdaarnllfva_ue%1000/100+0x30w-Hi 選 disdaar2llfva_ue%100/10+0x30w-l?p選 disd

17、aarsAva-ue%10+0x30y/b disdas-ollLCDlsupnum/l 0 disdas-u oHLCDksupnum%6 八 d i sd as-u 4HLC D lsd own n u m/10八 disdas-u 5HLCD1sdownnum%k0八 if(ff-agHHO) /+宀disdas-0llfva-ue/1000+0x30y/iElaw引珂应選 e-se宀disdaarollox2dy/mlaw和引 m=up nu m|temp=dow nnum) beep=0;LED=0;elsebeep=1;LED=1;P函数 */*main void mai n()i

18、ni t_play();初始化显示 flat=0;upnum=30; dow nnum=9;while(1) read_temp();/读取温度ds1820disp();/湿示 key(); compare();五、总结与展望单片机是一门应用性与实践性很强的学科,如何学习单片机? 学单片机不仅要学习理论知识,实践操作同样重要。学过单片机的 人都有这样的经历。就是把自己写的程序烧录到单片机里面的时候会发 现与自己想要的结果又很大的不同。这就是因为缺少实践操作的原因。设计本系统的过程中我们遇到了两大问题:一是软件问题。在编写 DS18B20的测量程序的过程中遇到了很多 问题,刚开始总是得不到测量数

19、据,后来仔细读 DS18B20说明资料,发现写时序的时候出了点问题,然后我们又按照着 DS18B20的通讯时序和接收时序将程序一条条重写,经过调试后,用 Proteus仿真软件可以仿真出正确的结果。但软件仿真与硬件还是有点区别,等我们把电路 板做出来的时候,把程序烧录进去,发现出错!经过再三检查,不断的 思考,最后我发现软件仿真是在硬件理想状态下运行的。因此,我对应 的将软件程序进行了一些细节修改。最后可以在我们做的硬件电路板中 进行正确的测量与显示。二是硬件问题。刚开始画 PCB时,没有联系到做实际板的问题。 做第一块板的时候遇到了如下问题: 画封装与元器件的实际封装大小不 一致;过孔的设置太小;导线设置太小;封装画反了等。因为第一块板 子的功能还不能顺利的实现,所以我们很认真的检查了电路板,通过电 路检测,发现板子的电路有些封装画反了。通过检查和检查板子出现的 情况,我们PCB的错误一点点的改正。后来,我们就是这样一点点的 检查板子的来完成我们的作品。本系统具有较强的实用性,我对 DS18B20及一些测量温度的传感 器进行了比较,DS18B20不仅测量精度高,稳定性好,体积小巧,而且 价格也比较便宜。另外,本系统还具有较高的扩展性,可以制作时钟, 计算器,温度测量于一体,具有较强的实用价值。

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

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