单片机课程设计温度检测报警器

合集下载

基于51单片机的的温度报警器设计

基于51单片机的的温度报警器设计

1引言 (1)1.1 单片机的应用背景 (1)2 总体设计方案 (2)2.1 功能简介 (2)2.2 设计思路 (2)2.3 芯片器材 (3)3 硬件设计 (3)3.1 AT89C51 (3)3.1.1 AT98C51引脚图 (3)3.1.2 AT89C51结构特点 (5)3.2 温度获取 (5) (7)3.3 时钟电路 (8)3.4 温度显示电路 (8)3.5报警电路 (10) (10)4 程序设计 (10)4.1 程序流程图 (11)4.2 初始化子程序 (11)4.3 读子程序 (12)4.4 写子程序 (13)4.5 数据处理子程序 (13)4.6 显示子程序 (15)4.7报警子程序 (17)5 实验仿真 (18) (18)6 总结 (19)参考文献 (20)附录 (21)1引言1.1 单片机的应用背景目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。

导弹的导航装置,飞机上各种仪表的控制,计算机的网络通信与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机,更不用说自动控制领域的机器人、智能仪表、医疗机械了。

世面上主要的单片机类型有Motorola 单片机、Microchip 单片机、东芝单片机、8051单片机、Atmel 单片机等。

此次课设中用到的是ATMEL公司,下面着重介绍一下ATMEL公司的单片机。

ATMEL 公司是世界上著名的高性能低功耗非易失性存储器和数字集成电路的一流半导体制造公司。

ATMEL 公司最令人注目的是它的EEPROM 电可擦除技术闪速存储器技术和质量高可靠性的生产技术。

在CMOS 器件生产领域中,ATMEL 的先进设计水平优秀的生产工艺及封装技术一直处于世界的领先地位。

这些技术用于单片机生产,使单片机也具有优秀的品质在结构性能和功能等方面都有明显的优势,ATMEL 公司的单片机是目前世界上一种独具特色。

温度报警器课程设计报告

温度报警器课程设计报告

目录1引言 (4)2正文 (4)第1章绪论 (4)1.1 设计背景 (4)1.2 设计来源 (4)1.3 设计容与要求 (5)第2章硬件电路设计 (5)2.1 AT89S52单片机 (5)2.2 温度测量模块 (6)2.3 蜂鸣器报警模块 (6)2.4 LED显示模块 (6)2.5 系统电路 (7)第3章软件设计 (7)3.1 AT89S52 (7)3.2 DS18B20 (8)第4章焊接调试过程与问题分析 (9)4.1 焊接调试过程 (9)4.2焊接实物图 (10)第5章总结 (11)参考文献 (11)基于DS18B20的单片机温度采集系统x xxxxxxxxxxxxxxxxxxx摘要:随着现代信息技术的飞速发展和传统工业改造的逐步实现,能够独立工作的温度检测与显示系统应用于诸多领域。

传统的温度检测以热敏电阻为温度敏感元件。

热敏电阻的成本低,需要外加信号处理电路,而且可靠性相对较差,测温准确度低,检测系统也有一定的误差。

与传统的温度计相比,这次设计的是基于DS18B20的数字温度计,它具有读数方便,测温围广,测温精确,数字显示,适用围宽等特点。

在本设计中选用AT89S52型单片机作为主控制器件,采用DS18B20数字温度传感器作为测温元件,通过4位共阳极LED 数码显示管并行传送数据,实现温度显示。

本设计的容主要分为两部分,一是对系统硬件部分的设计,包括温度采集电路和显示电路;二是对系统软件部分的设计,应用C语言实现温度的采集与显示。

通过DS18B20直接读取被测温度值,送入单片机进行数据处理,之后进行输出显示,最终完成了数字温度计的总体设计。

其系统构成简单,信号采集效果好,数据处理速度快,便于实际检测使用。

关键词:单片机AT89S52,温度传感器DS18B20,LED数码管,数字温度计Abstract:With the rapid development of modern information technology and traditional industrial transformation gradually realize, able to work independently temperature detection and display system applied to many fields. The traditional temperature detection to thermistors for temperature sensitive components. Thermistors of low cost, need and signal processing circuit, and relatively poor reliability, low temperature measurement accuracy, detection system also has the certain error. Compared with the traditional thermometer, this design is based on digital thermometer chip DS18B20, it has convenient readings, temperature measuring range, temperature measurement precision, the digital display, wide application scope etc. Characteristics.In the design of AT89S52 single chip microcomputer as the main selection of control device, the digital temperature sensor DS18B20 as temperature sensor, through a total of 4 anode LED digital display tube parallel data transmission, realize temperature display. This design is the main content of the divided into two parts, one is the hardware part of the design, including the temperature acquisition circuit and display circuit; the other is part of the design of the system software, application C language realize the collection of temperature and display. Through the DS18B20 directly read temperature being measured, into the single chip microcomputer data processing, after the output shown, eventually completed the overall design of digital thermometer. The system structure is simple, signal acquisition effect is good, data processing speed, easy to use the actual detection.Keywords: monolithic integrated circuit A T89S52, temperature sensor DS18B20, LED digital tube, digital thermometer1引言随着电子工业的飞速发展单片机技术日益渗透到各个领域,其发展趋势是集成度和智能化越来越高,外围接口越来越简单,使用极为方便。

基于51单片机的温度报警系统设计

基于51单片机的温度报警系统设计

基于51单片机的温度报警系统设计温度报警系统是一种常见的安全监控系统,它可以监测环境温度,并在温度达到设定阈值时发出警报。

本文将介绍一个基于51单片机的温度报警系统的设计。

一、系统设计目标和功能本系统的设计目标是实时监测环境温度,并在温度达到预设阈值时发出警报。

具体功能包括:1.温度采集:通过温度传感器实时采集环境温度。

2.温度显示:将采集到的温度值通过数码管显示出来。

3.温度比较:将采集到的温度值与预设的阈值进行比较。

4.报警控制:当温度超过预设的阈值时,触发警报控制器。

5.报警指示:通过蜂鸣器或者LED灯等方式进行报警提示。

二、硬件设计本系统的硬件设计包括主控部分和外围部分。

1. 主控部分:使用51单片机作为主控芯片,通过AD转换器和温度传感器实现温度数据采集。

采用片内RAM和Flash存储器对数据进行处理和存储。

2.外围部分:包括数码管显示和报警指示。

使用数码管模块将温度值进行显示,使用LED灯或者蜂鸣器进行报警指示。

三、软件设计本系统的软件设计包括程序的编写和算法的设计。

1.程序编写:使用C语言编写单片机的程序。

程序主要包括温度采集、温度比较、报警控制和报警指示等功能。

2.算法设计:根据采集到的温度值与预设阈值进行比较,判断是否触发警报控制器。

同时,根据警报控制器的状态,控制报警指示的开关。

四、系统测试完成硬件和软件设计后,需要进行系统测试以验证系统的正确性和稳定性。

1.硬件测试:对硬件电路进行测试,包括电源、信号传输和外围器件等方面。

测试时需要注意电源的稳定性,信号的准确性和外围部件的工作状态。

2.软件测试:进行程序的运行测试,检查各功能是否正常运行。

特别关注温度采集和比较、报警控制和报警指示等功能。

五、系统性能分析对系统的性能进行分析,包括温度采集的准确性、报警控制的响应时间和报警指示的稳定性等方面。

1.温度采集准确性:主要受温度传感器的精度和ADC转换的准确性影响。

在设计中要选择合适的传感器和ADC。

基于51单片机的温度检测报警系统

基于51单片机的温度检测报警系统

基于51单片机的温度检测报警系统摘要本文介绍了一种基于51单片机的温度检测报警系统的设计方案。

该系统能够实时检测环境温度,并在温度超出设定范围时触发报警器进行报警,从而实现对环境温度的监测和控制。

本文将主要涉及系统的硬件设计、软件设计和实现过程。

系统硬件设计本系统所需的核心硬件有:51单片机、温度传感器DS18B20、LED指示器和蜂鸣器,其中51单片机作为系统的控制中心,主要负责对温度传感器进行采集并触发LED指示器和蜂鸣器进行报警处理。

系统硬件电路图如下:TODO: 插入电路图其中,温度传感器DS18B20通过单总线协议连接到51单片机的P1.0引脚。

P1.1引脚连接到LED指示器,P1.2引脚连接到蜂鸣器。

系统软件设计本系统的软件设计主要分为两部分:主程序和温度采集程序。

主程序包括了系统的初始化、温度检测、温度报警、LED指示器和蜂鸣器控制等模块。

温度采集程序则是通过调用DS18B20的寄存器读写命令从传感器读取温度。

具体实现过程如下:主程序TODO: 插入代码主程序包含以下模块:1.系统初始化:配置P1.0引脚为输入模式,P1.1和P1.2引脚为输出模式。

2.温度检测:调用温度采集程序获取当前温度值,并判断是否超出指定范围。

3.温度报警:如果温度超出指定范围,则触发LED指示器和蜂鸣器进行报警处理。

4.LED指示器控制:根据温度超出指定范围的状态,对LED指示器进行开关控制。

5.蜂鸣器控制:根据温度超出指定范围的状态,对蜂鸣器进行开关控制。

温度采集程序TODO: 插入代码温度采集程序包含以下功能:1.向DS18B20发送获取温度命令。

2.从DS18B20读取温度数值。

3.根据读取到的值计算温度并返回。

系统实现过程本系统的实现过程包括系统硬件的组装和系统软件的编写。

硬件组装过程主要是将51单片机、温度传感器、LED指示器和蜂鸣器进行连接。

软件编写过程则是根据系统设计方案,编写相应的主程序和温度采集程序,并将程序烧录进51单片机中。

温度报警器设计 单片机课程设计

温度报警器设计 单片机课程设计

东北石油大学课程设计课程单片机课程设计题目温度报警器设计院系电气信息工程学院测控系专业班级测控二10-2学生姓名周博学生学号100601220211指导教师段志伟、宋金波2012年3 月30日东北石油大学课程设计任务书课程单片机课程设计题目温度报警器设计专业测控技术与仪器姓名周博学号100601220211 一、任务以AT89S52单片机为控制核心,实现对环境温度的实时监测,并能在预设的温度范围内用LED显示,同时在超过预设范围时产生报警信号。

二、设计要求[1] 报警器的温度用LED显示,同时在超过预设范围时产生报警信号。

[2] 通过对AT89C51单片机的编程,实现温度报警。

[3] 写出详细的设计报告。

[4] 给出全部电路和源程序。

三、参考资料[1] 刘国钧,陈绍业,王凤翥.图书馆目录[M].北京:高等教育出版社,1957.15-18.[2] 刘润华,刘立山.模拟电子技术[J].山东:石油大学出版社,2003.[3] 彭介华.电子技术课程设计指导[J].北京:高等教育出版社,1997.完成期限2012.3.19至2012.3.30指导教师段志伟、宋金波专业负责人曹广华2012年3月16 日目录第1章绪论 (3)1.1 温度报警器概述 (3)1.2 温度报警器技术状况 (3)1.3 温度报警器发展前景 (4)1.4 本设计任务 (4)第2 章总体方案论证与设计 (5)2.1 方案论述 (5)2.2 总体硬件组成框图 (6)第3章系统硬件设计 (7)3.1 单片机 (7)3.2 温度采集电路 (7)3.3 A/D转换电路 (8)3.4 温度显示电路 (10)第4章系统的软件设计 (11)4.1 软件设计思路 (11)4.2 主程序设计 (11)第5章系统调试与测试结果分析 (12)5.1 使用的仪器仪表 (12)5.2 系统调试 (12)5.3 测试结果 (13)结论 (14)参考文献 (15)附录1 程序 (1)附录2 仿真效果图 (4)第1章绪论温度是一个十分重要的物理量,对它的测量与控制有十分重要的意义。

单片机温度报警器设计方案

单片机温度报警器设计方案

单片机与接口技术实践总体设计方案课题名称:温度报警器指导老师:成员:院系:班级:2010年6月21日一、任务说明与系统需求分析本系统通过DS18B20温控元件测量环境温度,由单片机读入温度数值后,转换成两位10进制表示的温度值,输出到数码管显示,并与预设的警报温度对比,在不高于警报温度时,LED灯成流水灯闪烁,当高于警报温度后,单片机控制LED进行警报闪烁提示并控制蜂鸣器发出声音警报,从而达到温控警报功能。

目前在很多场合都需要对环境温度做警报,几乎所有的建筑中都需要安装温度报警装置,以便在火灾发生时,可以尽早的被发现。

本系统通过单片机与DS18B20联合通信,既能实现对温度的实时监测,又能对多种外设进行控制,有效的提供报警信息。

二、总体设计流程图与原理图总体设计流程实验原理图三、程序流程与模块说明模块说明:息发送给单片机。

单片机模块:作为系统的整体控制器,通过P3.3管脚与DS18B20单总线通信,获取环境温度,显示到数码管,并与预设的报警温度比较,当不超过报警温度时,控制LED呈流水灯闪烁,当高于报警温度时,控制LED频繁闪烁,并控制蜂鸣器发出固定频率声音报警。

LED模块:D1~D8为八个LED,当单片机判断温度正常时,控制八个LED流水灯,当高于报警温度时,控制LED频繁闪烁。

蜂鸣器模块:当单片机检测温度高于报警温度时,为蜂鸣器提供信号进行报警,蜂鸣器由8550三极管驱动,8550为PNP型三极管,可通过单片机发出的小信号控制大电流驱动蜂鸣器发声。

数码管模块:数码管用来显示当前的温度值。

程序流程图:四、元件清单三极管8550 ,蜂鸣器,DS18B20温控元件、8051单片机、12M晶振、33pf电容*2、4.7K电阻*1、1k电阻*8、100欧*1、0.1uf * 1、红色LED * 8、两位7段数码管*1五、计划时间表1~4 周:学习单片机基础知识5~8 周:学习单片机汇编语言编程知识9~14 周:对课题进行总体设计与编程实现15~18 周:系统调整与文档整理.。

单片机课程设计---温度检测与报警的设计

单片机课程设计---温度检测与报警的设计班级:电子071班学号:姓名:2010年1月7日摘要:DS18B20是美国DALLAS公司的“单总线”数字温度传感器,它具有结构简单、体积小、功耗低、无须外接元件、用户可自行设定预警上下限温度等特点。

本设计结合单片机最小系统版,通过DS18B20温度传感器,将其获得的温度值在数码管显示,并可通过按键预设温度值,当达到预设温度值时,蜂鸣器报警。

1正文:本设计的构想:通过DS18B20将温度进行处理送数码管显示,并可对预设定的温度值通过蜂鸣器报警。

预设定的温度可通过按键设定。

按键2和按键3通过减计数或加计数实现对温度值的设定。

按键1可查看预设的温度值,按键4用于切换温度显示和温度设定。

DS18B20的特点:DS18B20 的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。

其一个工作周期可分为两个部分,即温度检测和数据处理。

DS 18B20的内部存储器共有三种形态的存储器资源,它们分别是:ROM 只读存储器,用于存放DS18B20ID 编码,其前8 位是单线系列编码(DS18B20 的编码是19H),后面48 位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。

数据在出产时设置不由用户更改。

DS18B20 共64 位ROM。

RAM 数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20 共9 个字节RAM,每个字节为8 位。

第1、2 个字节是温度转换后的数据值信息,第3、4 个字节是用户EEPROM(常用于温度报警值储存)的镜像。

在上电复位时其值将被刷新。

第 5 个字节则是用户第 3 个EEPROM的镜像。

第6、7、8 个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。

第9 个字节为前8个字节的CRC码。

EEPROM 非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM 都存在镜像,以方便用户操作。

基于单片机温度报警器的设计

基于单片机温度报警器的设计温度报警器是一种常见的安全设备,用于监测环境温度并在温度超过设定阈值时发出警报。

基于单片机的温度报警器可以实现温度监测、报警和数据记录等功能,具有灵敏度高、可靠性好、成本低等优点。

下面将描述一种基于单片机的温度报警器的设计。

设计思路:本设计采用温度传感器、单片机、蜂鸣器和LCD液晶显示器等组成,实现温度监测和报警功能。

温度传感器用于测量环境温度,将温度值传输给单片机进行处理;单片机负责对温度值进行比较和判断,当温度超过设定阈值时,通过控制蜂鸣器发出警报声,并在LCD显示器上显示温度值和警报信息。

硬件设计:1.温度传感器:可以选择数字温度传感器,如DS18B20。

将温度传感器连接到单片机的数字引脚上,通过引脚读取传感器输出的数字信号。

2.单片机:可以选择常见的8位单片机,如STC89C52、单片机具有较强的处理能力和丰富的IO资源,可以用于读取和处理温度传感器数据,并控制蜂鸣器和LCD显示器。

3.蜂鸣器:选择合适的蜂鸣器,并将其连接到单片机的IO引脚上。

当温度超过设定阈值时,单片机将IO引脚置高,使蜂鸣器发出警报声。

4.LCD液晶显示器:选择适配器单片机的LCD显示器,通过单片机的IO引脚与单片机连接。

当温度超过设定阈值时,将警报信息显示在LCD上。

软件设计:1.硬件初始化:设置单片机相关IO引脚为输入输出模式,初始化温度传感器和LCD显示器。

2.温度采集:通过单片机的数字引脚读取温度传感器输出的数字信号,并进行相应的数据转换,得到环境温度值。

3.温度监测:将环境温度值与设定的阈值进行比较,若温度超过阈值则触发报警。

4.报警处理:当温度超过设定阈值时,通过设置单片机的IO引脚,控制蜂鸣器发出警报声,并在LCD显示器上显示警报信息。

5.数据记录:可以选择将温度数据保存到EEPROM中,方便后续查询和分析。

总结:基于单片机的温度报警器是一种简单但实用的安全设备,通过温度传感器和单片机的配合,可以实现对环境温度的实时监测和报警功能。

温度报警器课程设计

摘要:本文为温度报警器的设计,通过单片机与温度传感器,可以实现报警作用。

温度传感器在实现数据的采集,处理后,将数据传送给单片机,单片机进行数据处理后,若温度值超过或低于设定值时实现报警,若温度值超过或低于设定值时实现报警,并通过数码显示管显示当并通过数码显示管显示当前温度值。

电路的绘制在proteus 完成,软件设计采用C 语言来编程,这比用汇编语言编写更加灵活。

汇编语言编写更加灵活。

这样,这样,这样,就能实现一个温度报警器的设计了。

就能实现一个温度报警器的设计了。

就能实现一个温度报警器的设计了。

该报警器主该报警器主要由51单片机,温度传感器DS18B20,数码显示器,蜂鸣器以及LED 灯组成。

关键词:51单片机;温度传感器DS18B20;数码显示器;蜂鸣器;LED 灯目录第1章概述 (3)第2章方案设计 (3)第3章硬件电路设计 (4)第4章系统软件设计……………………………………………………仿真与调试第5章仿真与调试结束语结束语参考文献参考文献致谢致谢附录附录第1章 概述温度是一个十分重要的物理量,对它的测量与控制有十分重要的意义。

随着现代工、农业技术的发展及人们对生活环境要求的提高,人们也迫切需要检测与控制温度。

温度控制电路在工、农业生产中有着广泛的应用。

日常生活中也可以见到,如电冰箱的自动制冷、如电冰箱的自动制冷、空调器的自动控制、空调器的自动控制、空调器的自动控制、大棚种植温度的自动控制等等。

大棚种植温度的自动控制等等。

大棚种植温度的自动控制等等。

利用利用温度传感器集成电路制作一个温度报警器,也可以演示自动控制电路的工作原理。

理。

改变温度传感器的温度值,改变温度传感器的温度值,改变温度传感器的温度值,我们就模拟外界环境的温度变化或降低。

我们就模拟外界环境的温度变化或降低。

我们就模拟外界环境的温度变化或降低。

当温度当温度值高于或低于设定值时,单片机会控制蜂鸣器报警,并且LED 灯会随之闪烁。

基于51单片机的温度警报器的设计

基于51单片机的温度警报器的设计温度警报器是一种能够实时监测温度并在温度超过设定阈值时发出警报的装置。

本设计基于51单片机,通过温度传感器、LCD显示屏、蜂鸣器等元件实现温度监测和报警功能。

设计方案如下:1.硬件设计:a.温度传感器:选择一款常见的温度传感器,如DS18B20,通过数据线连接到单片机的GPIO口,实时获取温度数据。

b.LCD显示屏:使用16x2LCD显示屏,通过I2C接口与单片机连接,用于显示当前温度和报警信息。

c.蜂鸣器:选择一个合适的蜂鸣器,通过单片机的GPIO口控制,用于发出声音报警信号。

d.电源电路:为单片机和其他电路提供稳定的电源,可以选择直流电源或电池供电。

2.软件设计:a.初始化:对单片机进行初始化设置,包括IO口初始化、LCD初始化、温度传感器初始化等。

b.温度采集:通过温度传感器不断采集温度数据,并将其显示在LCD 屏幕上。

c.温度判断:获取当前温度值,并与设定的阈值进行比较。

如果高于阈值,进入报警状态。

d.报警处理:当温度超过设定阈值时,触发蜂鸣器发出声音报警信号,并在LCD上显示相应警告信息。

同时,可以选择触发其他动作,如发送短信或邮件通知。

e.报警解除:当温度恢复正常后,蜂鸣器停止报警,LCD屏幕上显示正常温度信息。

通过以上硬件和软件设计,我们可以实现一个基于51单片机的温度警报器。

该警报器能够实时监测环境温度,当温度超过设定阈值时,蜂鸣器会发出声音报警,并在LCD显示屏上显示相应报警信息。

当温度恢复正常后,报警器会自动停止报警,并显示正常温度信息。

除了基本的功能,还可以根据需求进行一些扩展。

比如,可以添加按钮控制来设置温度阈值,或者增加温度记录功能,实时记录温度变化并保存。

总之,基于51单片机的温度警报器设计具有可扩展性和实用性,可以满足不同环境的需求。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

摘 要 随着现代信息化技术的飞速发展和传统工业改造的逐步实现,能独立工作的温度检测系统已广泛应用于各种不同的领域。本文介绍了一个基于AT89C52单片机和数字温度传感器DS18B20的测温系统,并用LED数码管显示温度值,易于读数。系统电路简单、操作简便,系统具有可靠性高、成本低、功耗小等优点。

关键字: AT89C52;DS18B20;LED数码管 目 录 1.问题描述...............................................1 2.设计思想...............................................1 3.硬件设计...............................................1 3.1主要构成电路......................................1 3.2单片机最小系统设计................................2 3.3温度检测电路......................................3 3.4显示电路..........................................4 3.5报警电路..........................................4 4.软件设计及程序编写.....................................5 5.仿真分析...............................................6 6.课程设计总结...........................................6 参考文献.................................................7 附录I系统原理图.........................................8 附录II元器件清单........................................8 附录III系统PCB板图.....................................9 附录IV源程序...........................................10 C语言部分...........................................10 汇编部分............................................14 1

1 问题描述 设计一个温度检测报警器,用2位LED数码管显示出当前环境温度值;温度范围为85oC~90oC,精确度为±1 oC;当温度值小于85oC或大于90oC报警。

2 设计思想 本系统由主控制部分、温度采集部分、数据显示部分和蜂鸣器报警部分等四部分组成。系统主控部分采用的主控芯片是AT89C52单片机,通过对温度采集部分采集的数据进行数据处理后,控制数据的显示。当温度达到预设报警值时,单片机发送控制命令报警。数据采集部分主要通过温度传感器实时的采集当前环境温度,然后传给主控部分的单片机。

3 硬件设计 3.1主要构成电路 按单路温度检测报警器的功能要求,决定采用如图1所示的模块组成系统,主要包括单片机控制器、温度检测电路、LED数码管显示电路、报警电路。

图3.1 温度检测报警器系统组成框图 单片机 温度检测

显示

蜂鸣报警 2

3.2单片机最小系统设计 目前的单片机开发系统只能够仿真单片机,却没有给用户提供一个通用的最小系统。由设计的要求,只要做很小集成度的最小系统应用在一些小的控制单元。其应用特点是: (1)全部I/O口线均可供用户使用。 (2)内部存储器容量有限(只有4KB地址空间)。 (3)应用系统开发具有特殊性。

图 3.2 最小系统图 单片机最小系统如图3.2所示,其中有4个双向的8位并行I/O端口,分别记作P0、P1、P2、P3,都可以用于数据的输出和输入,P3口具有第二功能为系统提供一些控制信号。时钟电路用于产生MCS-51单片机工作所必须的时钟控制信号,内部电路在时钟信号的控制下,严格地按时序指令工作。MCS-51内部有一个用于构成振荡器的高增益反向放大器,该高增益反向放大器的输入端为芯片的引脚XTAL1,输出端为XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的微调电容通常选择为30pF左右,该 3

电容的大小会影响到振荡器频率的高低、振荡器的稳定性和起振的快速性。晶体的振荡频率为12MHz。 把EA脚接高电平,单片机访问片内程序存储器,但在PC值超过0FFFH(4Kbyte地址范围)时,将自动转向执行外部程序存储器内的程序。 MCS-51的复位是由外部的复位电路来实现。采用最简单的外部按键复位电路。按键自动复位是通过外部复位电路的来实现的。

3.3温度检测电路 温度检测电路主要任务是把温度信号转换为电信号,转换的方法有很多,在本实验中。 我采用了温度传感器DS18B20芯片,DQ口线要接4.7KΩ左右的上拉电阻连接单片机的P3.7管脚。

图 3.3 温度传感电路图 DS18B20的性能特点: 采用单总线专用技术,既可通过串行口线,也可通过其它I/O口线与微机接口,无须经过其它变换电路,直接输出被测温度值,测温范围为-55℃-+125℃,测量分辨率为0.0625℃,适配各种单片机或系统机。 CPU对DS18B20的访问流程: 先对DS18B20初始化,再进行ROM操作命令,最后才能对存储器操作,数据操作。DS18B20每一步操作都要遵循严格的工作时序和通信协议。 如主机控制DS18B20完成温度转换这一过程,根据DS18B20的通讯协议,须经三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。 4

3.4显示电路 在单片机接到模数转换器输入的信号后,通过单片机控制从P0口输出到共阴的两位LED数码管显示。

图 3.4 数码管显示电路图 3.5报警电路 在本设计中采用单频音报警电路,适合在单片机应用系统中使用,P3.6接蜂鸣器,当P3.6输出是高电平“1”时,蜂鸣器停止鸣响,当输出为低电平“0”时,蜂鸣器报警鸣响。

图 3.5 蜂鸣器报警电路图 5

4 软件设计及程序编写 本设计程序系统主要程序也是由四部分组成的:单片机控制部分、温度检测部分、LED数码管显示部分和蜂鸣器报警部分,其主程序执行可以通过以下的流程图来证实:

图4.1主流程图 开始

关闭蜂鸣器 Y N DS18B20测温

<85℃ 或>90℃

蜂鸣报警 LED数码管

显示温度

结束 6

程序编写

ORG 0000H

DQ EQU P3.7 TEMPER_L EQU 29H;用于保存读出温度的低8 位 TEMPER_H EQU 28H;用于保存读出温度的高8 位 ZHENG EQU 30H DIS_DUAN EQU P0 DIS_1 EQU 21H ;十位段码存储位置 DIS_2 EQU 20H ;个位段码存储位置 MOV DIS_1,#0 MOV DIS_2,#0

MAIN: ACALL GET_TEMPER;调用读温度子程序 ACALL CHULI ACALL BEEP ACALL DISPLAY ;调用数码管显示子程序 CPL P1.0 AJMP MAIN BEEP: MOV A,ZHENG CLR C CJNE A,#90,SOUND1 NOSOUND: SETB P3.6 RET SOUND1: JB CY,SOUND2 CLR P3.6 RET SOUND2: 7

MOV A,ZHENG CLR C CJNE A,#85,SOUND3 AJMP NOSOUND SOUND3: JNB CY,NOSOUND CLR P3.6 RET INIT_18B20: SETB DQ NOP CLR DQ MOV R0,#250 ;主机发出延时501微秒的复位低脉冲 DJNZ R0,$ SETB DQ ;然后拉高数据线 NOP NOP NOP MOV R0,#25H TSR2: JNB DQ,TSR3 ;等待DS18B20 回应 DJNZ R0,TSR2 TSR3: MOV R0,#117 TSR4: DJNZ R0,TSR4 ;时序要求延时一段时 SETB DQ RET GET_TEMPER: ;读取温度值 SETB DQ ACALL INIT_18B20;先复位DS18B20

相关文档
最新文档