- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
摘要
在实际生产、生活等各个领域中,温度是环境因素的不可或缺的一部分,对温度及时精确的控制和检测显得尤为重要。比如,农业上土壤各个层面上的温度将会影响植物的生长;在医院的监护中也用到温度的测量。在工业中,料桶里外上限温度要求不一,以及热处理中工件各个部位的温度对工件形成后的性能至关重要等等。现代电子工业的飞速发展对自动测试的要求越来越高。采用单片机对温度进行控制,不仅具有控制方便和组态简单的优点,而且可以提高被控温度的技术指标。针对以上情况,在控制成本的前提下,本文介绍了一款既能够固定显示实时温度,又具有循环检测显示,同时还能对不同的报警温度的温度控制报警系统。此系统能够满足现代生产生活的需要,效率高,具有较强的稳定性和灵活性。关键字:温度检测、AT89C51、DS18B20目录
. 一.实训目的 1
. 二.实训题目及方案 1
2.1题目:温度循环检测系统 1
. 三.硬件设计 2
3.1系统整体硬件电路: 2
3.2系统设计方框模块图: 3
. 四.软件设计 4
4.1主程序: 4
. 五.软件调试 9
. 六.其它四项课题 10
键盘与显示、键盘分析作业调度、秒表、电子时钟 10
. 七.实训总结 11
. 八.参考文献 12
. 九.总原理图 13一.实训目的1、实现当前温度值的显示和温度超过设定值时的声光报警;
2、 采用数字温度传感器DS18B20完成在-15℃--+35℃范围内温度的采集;
3、单相220V交流电压供电,采用AT89C51集成芯片。
4、掌握Keil C51 μVision2编程软件与Proteus仿真软件的使用,并进行软件 联机调试;
5、进行硬件仿真与调试。
二.实训题目及方案
2.1题目:温度循环检测系统
2.2整体设计方案:
本系统的设计分硬件系统的设计和系统软件的设计。硬件系统包括单片机、LED显示电路、时钟、温度采集电路;系统软件主要包括温度采集和数据处理的相应子程序以及LED显示温度值的等相关子程序。温度计电路设计总体设计方框图如1-1图所示,控制器采用单片机AT89C51,温度传感器采用DS18B20,用3位LED数码管以串口传送数据实现温度显示,模数转换芯片 ADC0809 在单片机 AT89C51的控制下进行模拟信号的转换,最终实现温度循环检测。图1-1总方案设计图三.硬件设计
3.1系统整体硬件电路:
系统整体硬件电路包括:传感器数据采集电路,温度显示电路,报警电路,单片机主板电路。如1-2图所示系统硬件流程图如图1-2
3.2系统设计方框模块图:图1-3设计方框模块图四.软件设计
一个应用系统,要完成各项功能,首先必须有较完善的硬件作保证。同时还必须得到相应设计合理的软件的支持,尤其是微机应用高速发展的今天,许多由硬件完成的工作,都可通过软件编程而代替。系统程序主要包括主程序,读出温度子程序,温度转换命令子程序,显示数据刷新子程序等,循环扫描子程序。
4.1主程序:LED_0EQU 30HLED_1EQU 31HLED_2EQU 32HADCEQU 35HTCNTAEQU 36HTCNTBEQU 37HH_TEMPEQU 38H;温度上限
L_TEMPEQU 39H;温度下限
FLAGBIT 00HH_ALMBIT P3.0L_ALMBIT P3.1SOUNDBIT P3.7;声音报警信号CLOCKBIT P2.4;时钟信号STBIT P2.5EOCBIT P2.6;转换结束状态信号OEBIT P2.7;输出允许信号ORG00HSJMPSTARTORG0BHLJMPINT_T0ORG1BHLJMPINT_T1START: MOVLED_0, #00HMOVLED_1, #00HMOVLED_2, #00HMOVDPTR, #TABLEMOVH_TEMP, #153MOVL_TEMP, #77MOVTMOD, #12HMOVTH0, #245MOVTL0, #0MOVTH1, # (65536-1000)/256MOVTL1, # (65536-1000) MOD 256MOVIE, #8aHCLRCSETBTR0;为ADC080提供时钟
WAIT:SETB H_ALMSETBL_ALMCLRSTSETBSTCLRST;启动转换
JNBEOC, $SETBOEMOVADC,P1;读取AD转换结果
CLROEMOVA, ADCSUBBA,#77;判断是否低于下限
JCLALMMOVA, H_TEMPMOVR0, ADCSUBBA,R0;判断是否高于上限
JCHALMCLRTR1LJMPPROC
LALM:;低温报警CLRL_ALMSETBTR1CLRFLAGLJMPPROC
HALM:;高温报警
CLRH_ALMSETBTR1SET
文档评论(0)