基于单片机的温度控制器设计.
基于STM32单片机的温度控制系统设计

基于STM32单片机的温度控制系统设计一、本文概述本文旨在探讨基于STM32单片机的温度控制系统的设计。
我们将从系统需求分析、硬件设计、软件编程以及系统测试等多个方面进行全面而详细的介绍。
STM32单片机作为一款高性能、低功耗的微控制器,广泛应用于各类嵌入式系统中。
通过STM32单片机实现温度控制,不仅可以精确控制目标温度,而且能够实现系统的智能化和自动化。
本文将介绍如何通过STM32单片机,结合传感器、执行器等硬件设备,构建一套高效、稳定的温度控制系统,以满足不同应用场景的需求。
在本文中,我们将首先分析温度控制系统的基本需求,包括温度范围、精度、稳定性等关键指标。
随后,我们将详细介绍系统的硬件设计,包括STM32单片机的选型、传感器和执行器的选择、电路设计等。
在软件编程方面,我们将介绍如何使用STM32的开发环境进行程序编写,包括温度数据的采集、处理、显示以及控制策略的实现等。
我们将对系统进行测试,以验证其性能和稳定性。
通过本文的阐述,读者可以深入了解基于STM32单片机的温度控制系统的设计过程,掌握相关硬件和软件技术,为实际应用提供有力支持。
本文也为从事嵌入式系统设计和开发的工程师提供了一定的参考和借鉴。
二、系统总体设计基于STM32单片机的温度控制系统设计,主要围绕实现精确的温度监测与控制展开。
系统的总体设计目标是构建一个稳定、可靠且高效的环境温度控制平台,能够实时采集环境温度,并根据预设的温度阈值进行智能调节,以实现对环境温度的精确控制。
在系统总体设计中,我们采用了模块化设计的思想,将整个系统划分为多个功能模块,包括温度采集模块、控制算法模块、执行机构模块以及人机交互模块等。
这样的设计方式不仅提高了系统的可维护性和可扩展性,同时也便于后续的调试与优化。
温度采集模块是系统的感知层,负责实时采集环境温度数据。
我们选用高精度温度传感器作为采集元件,将其与STM32单片机相连,通过ADC(模数转换器)将模拟信号转换为数字信号,供后续处理使用。
基于单片机的室内温度控制系统设计与实现

基于单片机的室内温度控制系统设计与实现1. 本文概述随着科技的发展和人们生活水平的提高,室内环境的舒适度已成为现代生活中不可或缺的一部分。
作为室内环境的重要组成部分,室内温度的调控至关重要。
设计并实现一种高效、稳定且经济的室内温度控制系统成为了当前研究的热点。
本文旨在探讨基于单片机的室内温度控制系统的设计与实现,以满足现代家居和办公环境的温度控制需求。
本文将首先介绍室内温度控制系统的研究背景和意义,阐述其在实际应用中的重要性和必要性。
随后,将详细介绍基于单片机的室内温度控制系统的设计原理,包括硬件设计、软件编程和温度控制算法等方面。
硬件设计部分将重点介绍单片机的选型、传感器的选取、执行机构的搭配等关键环节软件编程部分将介绍系统的程序框架、主要功能模块以及温度数据的采集、处理和控制逻辑温度控制算法部分将探讨如何选择合适的控制算法以实现精准的温度调控。
在实现过程中,本文将注重理论与实践相结合,通过实际案例的分析和实验数据的验证,展示基于单片机的室内温度控制系统的实际应用效果。
同时,还将对系统的性能进行评估,包括稳定性、准确性、经济性等方面,以便为后续的改进和优化提供参考。
本文将对基于单片机的室内温度控制系统的设计与实现进行总结,分析其优缺点和适用范围,并对未来的研究方向进行展望。
本文旨在为读者提供一种简单、实用的室内温度控制系统设计方案,为相关领域的研究和实践提供有益的参考。
2. 单片机概述单片机,也被称为微控制器或微电脑,是一种集成电路芯片,它采用超大规模集成电路技术,将具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种IO口和中断系统、定时器计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、AD转换器等电路)集成到一块硅片上,构成一个小而完善的微型计算机系统。
单片机以其体积小、功能齐全、成本低廉、可靠性高、控制灵活、易于扩展等优点,广泛应用于各种控制系统和智能仪器中。
基于单片机的pid温度控制系统设计

一、概述单片机PID温度控制系统是一种利用单片机对温度进行控制的智能系统。
在工业和日常生活中,温度控制是非常重要的,可以用来控制加热、冷却等过程。
PID控制器是一种利用比例、积分、微分三个调节参数来控制系统的控制器,它具有稳定性好、调节快等优点。
本文将介绍基于单片机的PID温度控制系统设计的相关原理、硬件设计、软件设计等内容。
二、基本原理1. PID控制器原理PID控制器是一种以比例、积分、微分三个控制参数为基础的控制系统。
比例项负责根据误差大小来控制输出;积分项用来修正系统长期稳态误差;微分项主要用来抑制系统的瞬时波动。
PID控制器将这三个项进行线性组合,通过调节比例、积分、微分这三个参数来实现对系统的控制。
2. 温度传感器原理温度传感器是将温度变化转化为电信号输出的器件。
常见的温度传感器有热电偶、热敏电阻、半导体温度传感器等。
在温度控制系统中,温度传感器负责将环境温度转化为电信号,以便控制系统进行监测和调节。
三、硬件设计1. 单片机选择单片机是整个温度控制系统的核心部件。
在设计单片机PID温度控制系统时,需要选择合适的单片机。
常见的单片机有STC89C52、AT89S52等,选型时需要考虑单片机的性能、价格、外设接口等因素。
2. 温度传感器接口设计温度传感器与单片机之间需要进行接口设计。
常见的温度传感器接口有模拟接口和数字接口两种。
模拟接口需要通过模数转换器将模拟信号转化为数字信号,而数字接口则可以直接将数字信号输入到单片机中。
3. 输出控制接口设计温度控制系统通常需要通过继电器、半导体元件等控制输出。
在硬件设计中,需要考虑输出接口的类型、电流、电压等参数,以及单片机与输出接口的连接方式。
四、软件设计1. PID算法实现在单片机中,需要通过程序实现PID控制算法。
常见的PID算法包括位置式PID和增量式PID。
在设计时需要考虑控制周期、控制精度等因素。
2. 温度采集和显示单片机需要通过程序对温度传感器进行数据采集,然后进行数据处理和显示。
基于单片机的温度控制系统设计原理

基于单片机的温度控制系统设计原理基于单片机的温度控制系统设计概述•温度控制系统是在现代生活中广泛应用的一种自动控制系统。
它通过测量环境温度并对温度进行调节,以维持设定的温度范围内的稳定状态。
本文将介绍基于单片机的温度控制系统的设计原理。
单片机简介•单片机是一种集成电路芯片,具有强大的计算能力和丰富的输入输出接口。
它可以作为温度控制系统的核心控制器,通过编程实现温度的测量和调节功能。
温度传感器•温度传感器是温度控制系统中重要的部件,用于测量环境温度。
常见的温度传感器有热敏电阻、热电偶和数字温度传感器等。
在设计中,需要选择适合的温度传感器,并通过单片机的模拟输入接口对其进行连接。
温度测量与显示•单片机可以通过模拟输入接口读取温度传感器的信号,并进行数字化处理。
通过数值转换算法,可以将传感器输出的模拟信号转换为温度数值,并在显示器上进行显示。
常见的温度显示方式有数码管和LCD等。
温度控制算法•温度控制系统通常采用PID(比例-积分-微分)控制算法。
这种算法通过比较实际温度和设定温度,计算出调节量,并通过输出接口控制执行机构,实现温度的调节。
在单片机程序中,需要编写PID控制算法,并根据具体系统进行参数调优。
执行机构•执行机构是温度控制系统中的关键部件,用于实际调节环境温度。
常见的执行机构有加热器和制冷器。
通过单片机的输出接口,可以控制执行机构的开关状态,从而实现温度的调节。
界面与交互•温度控制系统还可以配备界面与交互功能,用于设定目标温度、显示当前温度和执行机构状态等信息。
在单片机程序中,可以通过按键、液晶显示屏和蜂鸣器等外设实现界面与交互功能的设计。
总结•基于单片机的温度控制系统设计涉及到温度传感器、温度测量与显示、温度控制算法、执行机构以及界面与交互等多个方面。
通过合理的设计和编程实现,可以实现对环境温度的自动调节,提高生活和工作的舒适性和效率。
以上是对基于单片机的温度控制系统设计原理的简要介绍。
《2024年基于51单片机的温度控制系统设计与实现》范文

《基于51单片机的温度控制系统设计与实现》篇一一、引言在现代工业控制领域,温度控制系统的设计与实现至关重要。
为了满足不同场景下对温度精确控制的需求,本文提出了一种基于51单片机的温度控制系统设计与实现方案。
该系统通过51单片机作为核心控制器,结合温度传感器与执行机构,实现了对环境温度的实时监测与精确控制。
二、系统设计1. 硬件设计本系统以51单片机为核心控制器,其具备成本低、开发简单、性能稳定等优点。
硬件部分主要包括51单片机、温度传感器、执行机构(如加热器、制冷器等)、电源模块等。
其中,温度传感器负责实时监测环境温度,将温度信号转换为电信号;执行机构根据控制器的指令进行工作,以实现对环境温度的调节;电源模块为整个系统提供稳定的供电。
2. 软件设计软件部分主要包括单片机程序与上位机监控软件。
单片机程序负责实时采集温度传感器的数据,根据设定的温度阈值,输出控制信号给执行机构,以实现对环境温度的精确控制。
上位机监控软件则负责与单片机进行通信,实时显示环境温度及控制状态,方便用户进行监控与操作。
三、系统实现1. 硬件连接将温度传感器、执行机构等硬件设备与51单片机进行连接。
具体连接方式根据硬件设备的接口类型而定,一般采用串口、并口或GPIO口进行连接。
连接完成后,需进行硬件设备的调试与测试,确保各部分正常工作。
2. 软件编程编写51单片机的程序,实现温度的实时采集、数据处理、控制输出等功能。
程序采用C语言编写,易于阅读与维护。
同时,需编写上位机监控软件,实现与单片机的通信、数据展示、控制指令发送等功能。
3. 系统调试在完成硬件连接与软件编程后,需对整个系统进行调试。
首先,对单片机程序进行调试,确保其能够正确采集温度数据、输出控制信号。
其次,对上位机监控软件进行调试,确保其能够与单片机正常通信、实时显示环境温度及控制状态。
最后,对整个系统进行联调,测试其在实际应用中的性能表现。
四、实验结果与分析通过实验测试,本系统能够实现对环境温度的实时监测与精确控制。
基于单片机的水温控制器设计

基于单片机的水温控制器设计引言水温控制在很多领域中都具有重要的应用价值,例如温室、鱼缸、热水器等。
基于单片机的水温控制器能够自动调控水温,提高水温的稳定性和准确性。
本文将介绍如何设计一个基于单片机的水温控制器,以实现对水温的精确控制。
一、硬件设计1.单片机选择选择一个合适的单片机对于设计一个稳定可靠的水温控制器至关重要。
常用的单片机有STC89C52、AT89C52等。
在选择时应考虑单片机的性能、功耗、接口等因素。
2.温度传感器温度传感器用于检测水温,常用的有NTC热敏电阻和DS18B20数字温度传感器。
NTC热敏电阻价格便宜,但精度较低,DS18B20精度高,但价格相对较贵。
3.加热装置加热装置用于根据温度控制器的输出信号进行加热或制冷。
可以选择加热丝、加热管或半导体制冷片等。
4.驱动电路驱动电路用于将单片机的输出信号转换为合适的电流或电压,驱动加热装置。
可以选择晶体管或继电器等。
5.显示模块可以选择液晶显示屏或LED数码管等显示水温的数值。
二、软件设计1.初始化设置首先,对单片机进行初始化设置,包括引脚配置、定时器设置等。
然后,设置温度传感器和加热装置的引脚。
最后,设置温度范围,以便根据实际需求进行调整。
2.温度检测使用温度传感器检测水温,并将读取到的温度值转换为数字形式,以便进行比较和控制。
可以使用ADC(模拟-数字转换)模块转换模拟信号为数字信号。
3.控制算法本设计中可以采用PID控制算法进行水温控制。
PID(Proportional-Integral-Derivative)控制算法根据设定值和反馈值之间的差异来计算控制信号。
可以根据需求进行参数调整,以获得更好的控制效果。
4.显示和报警使用显示模块显示当前水温的数值,并在温度超出设定值时触发报警功能。
报警可以采用声音、灯光等形式。
5.控制输出根据PID算法计算出的控制信号,控制驱动电路,驱动加热装置或制冷装置,以实现水温的调节。
总结基于单片机的水温控制器能够实现对水温的精确控制。
单片机基于51单片机温度控制设计简介
单片机基于51单片机温度控制设计简介一、引言本文将介绍基于51单片机的温度控制设计,其中包括硬件设计和软件设计两个部分。
温度控制是工业自动化中非常重要的一部分,其应用范围非常广泛,如冷库、温室、恒温水槽等。
本文所介绍的温度控制设计可广泛应用于各种场合。
二、硬件设计1.传感器部分本设计采用DS18B20数字温度传感器,其具有精度高、抗干扰能力强等优点。
传感器的输出信号为数字信号,与51单片机通信采用单总线方式。
2.控制部分本设计采用继电器控制加热器的开关,继电器的控制信号由51单片机输出。
同时,为了保证控制精度,本设计采用PID控制算法,其中P、I、D系数均可根据实际情况进行调整。
3.显示部分本设计采用LCD1602液晶显示屏,可显示当前温度和设定温度。
4.电源部分本设计采用12V直流电源供电,其中需要注意的是,由于继电器的电流较大,因此需要采用稳压电源。
三、软件设计1.初始化在程序开始运行时,需要对各个模块进行初始化,包括DS18B20传感器、LCD1602液晶显示屏和PID控制器等。
2.采集温度程序需要不断地采集温度,通过DS18B20传感器获取当前温度值,并将其显示在LCD1602液晶显示屏上。
3.控制加热器根据当前温度和设定温度的差值,通过PID控制算法计算出控制信号,控制继电器的开关,从而控制加热器的加热功率。
4.调整PID参数为了保证控制精度,需要不断地调整PID控制算法中的P、I、D系数,以达到最优控制效果。
四、总结基于51单片机的温度控制设计,可以实现对温度的精确控制,具有应用广泛、控制精度高等优点。
本文所介绍的硬件设计和软件设计,可供读者参考和借鉴,同时也需要根据实际情况进行调整和改进。
基于单片机的温控系统设计与实现
基于单片机的温控系统设计与实现温控系统是一种可以根据环境温度自动调节设备工作状态的系统。
基于单片机的温控系统是一种利用单片机计算能力、输入输出功能及控制能力,通过传感器获取环境温度信息并实现温度控制的系统。
下面将对基于单片机的温控系统的设计与实现进行详细介绍。
一、系统设计和功能需求:基于单片机的温控系统主要由以下组成部分构成:1.温度传感器:用于获取当前环境温度值。
2.控制器:使用单片机作为中央控制单元,负责接收温度传感器的数据并进行温度控制算法的计算。
3.执行器:负责根据控制器的指令控制设备工作状态,如电风扇、加热器等。
4.显示器:用于显示当前环境温度和控制状态等信息。
系统的功能需求主要包括:1.温度监测:通过温度传感器实时获取环境温度数据。
2.温度控制算法:根据温度数据进行算法计算,判断是否需要调节设备工作状态。
3.设备控制:根据控制算法的结果控制设备的工作状态,如打开或关闭电风扇、加热器等。
4.信息显示:将当前环境温度及控制状态等信息显示在显示器上。
二、系统实现的具体步骤:1.硬件设计:(1)选择适合的单片机:根据系统功能需求选择合适的单片机,通常选择具有较多输入输出引脚、计算能力较强的单片机。
(2)温度传感器的选择:选择合适的温度传感器,常见的有热敏电阻、热电偶、数字温度传感器等。
(3)执行器的选择:根据实际需求选择合适的执行器,如电风扇、加热器等。
(4)显示器的选择:选择适合的显示器以显示当前温度和控制状态等信息,如液晶显示屏等。
2.软件设计:(1)编写驱动程序:编写单片机与传感器、执行器、显示器等硬件的驱动程序,完成数据的读取和输出功能。
(2)设计温度控制算法:根据监测到的温度数据编写温度控制算法,根据不同的温度范围判断是否需要调节设备工作状态。
(3)控制设备的逻辑设计:根据温度控制算法的结果设计控制设备的逻辑,确定何时打开或关闭设备。
(4)设计用户界面:设计用户界面以显示当前温度和控制状态等信息,提示用户工作状态。
基于单片机的智能冰箱温度控制器的设计
基于单片机的智能冰箱温度控制器的设计智能冰箱温度控制器是一种基于单片机的温度控制系统,通过对温度传感器数据的采集和处理,可以实现对冰箱内部温度的精确控制。
本文将介绍该智能冰箱温度控制器的设计原理、硬件组成和软件实现。
设计原理:智能冰箱温度控制器的设计原理是通过感知冰箱内部温度并根据设定的温度值自动控制制冷或加热设备的工作,以维持冰箱内部温度在设定范围内。
其主要实现步骤如下:1.温度传感器采集:使用温度传感器(如DS18B20)对冰箱内部温度进行采集,将温度值转换为数字量。
2.温度数据处理:通过单片机对温度传感器采集的数据进行处理,可以实现多种功能,如温度变化的实时监测、故障检测及报警等。
3.温度控制算法:根据采集到的温度值和设定的温度范围,决定是否打开制冷或加热装置。
在制冷过程中,当温度低于设定范围时,打开制冷装置,使温度升高;当温度高于设定范围时,关闭制冷装置。
加热过程与此类似。
4.控制输出:通过单片机的IO口控制制冷或加热装置的开关,实现对温度的控制。
硬件组成:智能冰箱温度控制器的硬件组成主要包括单片机、温度传感器、继电器、显示屏和按键等。
1.单片机:选择适合的单片机(如STC89C52)作为主控芯片,负责采集并处理温度数据,控制制冷或加热装置的开关。
2.温度传感器:选择精度高、性能稳定的温度传感器(如DS18B20),能够准确地采集冰箱内部温度。
3.继电器:通过继电器,单片机可以控制制冷或加热装置的开关。
继电器的选型要考虑到其负载电流和电压的要求。
4.显示屏和按键:为了方便用户操作和监控系统状态,可以添加液晶显示屏和按键。
显示屏用于显示当前温度和设置的目标温度,按键用于设定目标温度。
软件实现:智能冰箱温度控制器的软件实现主要包括温度数据采集和处理、温度控制算法的实现以及用户界面的设计。
1.温度数据采集和处理:通过单片机的ADC接口读取温度传感器采集到的模拟量,并转换为数字量。
然后,通过算法将数字量转换为实际温度值,并保存在变量中供后续使用。
基于单片机的马弗炉温度控制器设计
3、控制输出:根据处理后的结果,通过单片机的PWM端口控制继电器的通断, 实现对加热元件的调压。
实现
为实现马弗炉温度控制器的稳定运行,还需注意以下几点: 1、热电偶的安装:合理选择安装位置,确保能准确反映马弗炉内部的温度。
3、加热元件:根据单片机主控制器的控制信号,调节电阻炉的加热功率,实 现温度的调节。常见的加热元件有电热丝和陶瓷加热片。
4、断路器/继电器:用于控制加热元件的电源通断,保护电路安全。
二、硬件电路设计
1、单片机最小系统:包括单片机、时钟电路、复位电路和程序下载接口。根 据具体单片机型号,设计相应的最小系统板。
为验证本设计的实际效果,我们进行了一系列测试。具体测试方案如下:
1、空载测试:在不加载任何样品的情况下,将马弗炉加热至设定温度,观察 控制器的稳定性和精度。
2、加载测试:在马弗炉内加载不同质量的样品,分别观察控制器对不同质量 样品的控制效果。
3、温度突变测试:在马弗炉达到设定温度后,突然改变温度设定值,观察控 制器的响应速度和调节效果。
五、程序设计
在程序设计阶段,需要根据硬件电路设计和系统功能需求,编写相应的程序代 码来实现电阻炉温度控制系统的各项功能。程序主要包括以下几个部分:
1、初始化程序:初始化单片机、温度传感器、加热元件等硬件设备。
2、温度数据采集程序:通过温度传感器接口电路,实时读取电阻炉内的温度 数据。
3、加热元件控制程序:根据温度数据和设定的温度值,判断是否需要调节加 热元件的工作状态,并输出相应的控制信号。
4、断路器/继电器控制程序:在异常情况下,如加热元件故障或温度超过安全 范围,控制断路器/继电器切断加热元件电源,保护系统安全。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
技术参数和设计任务:1、利用单片机AT89S51实现对温度物理量的控制,以实现对温度控制的目的;2、为达到电源输出5V电压目标,完成电源电路的设计;3、为达到数码管显示目标,完成显示电路的设计;4、为达到键盘控制的目标,完成键盘电路的设计;5、为达到检测温度的目标,完成检测电路的设计;6、完成报警设计;7、进行软件设计[分配系统资源,编写系统初始化和主程序模块;编写数字调节器软件模块;编写A/D转换器处理程序模块;编写输出控制程序模块;其它程序模块(数字滤波、显示与键盘等处理程)等等。
一、本课程设计系统概述1、系统原理温度传感器 DS18B20 从设备环境的不同位置采集温度,单片机 AT89S51 获取采集的温度值,经处理后得到当前环境中一个比较稳定的温度值,再根据当前设定的温度上下限值,通过加热和降温对当前温度进行调整。
当采集的温度经处理后超过设定温度的上限时,单片机通过三极管驱动继电器开启降温设备 (压缩制冷器) ,当采集的温度经处理后低于设定温度的下时 , 单片机通过三极管驱动继电器开启升温设备 (加热器) 。
当由于环境温度变化太剧烈或由于加热或降温设备出现故障,或者温度传感头出现故障导致在一段时间内不能将环境温度调整到规定的温度限内的时候,单片机通过三极管驱动扬声器发出警笛声。
系统中将通过串口通讯连接PC机存储温度变化时的历史数据,以便观察整个温度的控制过程及监控温度的变化全过程。
2、系统结构图本设计以AT89S51单片机为主控核心设计的一个温度控制系统,低温时可控制加热设备,高温时控制风扇,超出设定最高温度值时蜂鸣器发出声响报警。
图1 总体硬件方框图3、文字说明控制方案(1)温度测量部分方案DS18B20是DALLAS公司生产的一线式数字温度传感器,它具有微型化、低功耗、高性能抗干扰能力、强易配处理器等优点,特别适合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(按9位二进制数字)给单片机处理,且在同一总线上可以挂接多个传感器芯片,它具有三引脚TO-92小体积封装形式,温度测量范围-55~+125℃,可编程为9~12位A/D转换精度,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出,其工作电源既可在远端引入,业可采用寄生电源方式产生,多个DS18B20可以并联到三根或者两根线上,CPU只需一根端口线就能与多个DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
从而可以看出DS18B20可以非常方便的被用于远距离多点温度检测系统。
(2)主控制部分方案 AT89S51 是一个低功耗,高性能CMOS 8位单片机,片内含8k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash 只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。
此外,AT89S51设计和配置了振荡频率可为0Hz并可通过软件设置省电模式。
空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。
同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以适应不同产品的需求。
由于系统控制方案简单 ,数据量也不大 ,考虑到电路的简单和成本等因素 ,因此在本设计中选用 A TMEL 公司的 A T89S51单片机作为主控芯片。
主控模块采用单片机最小系统是由于 A T89S51芯片内含有4 kB的 E2PROM ,无需外扩存储器 ,电路简单可靠 ,其时钟频率为 0~24 MHz ,并且价格低廉 ,批量价在 10元以内。
AT89S51提供以下标准功能:4K字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗(WDT),两个数据指针,两个16位定时器/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟。
同时, AT89S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。
掉电方式何在RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直接到一个硬件复位。
AT89S51引脚功能说明 Vcc:电源电压 GND:地P0口:P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口,作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端口。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口:P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号校验期间,P1接收低8位地址。
表4-1为P1口第二功能。
表1 系统P1口第二功能表P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL 逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流I。
在访问8位地址的外部数据存储器(如执行:MOVX @Ri 指令)时,P2口线上的内(也即特殊功能寄存器,在整个访问期间不改变。
Flash 编程或校验时,P2也接收高位地址和其它控制信号。
)P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能,P3口的第二功能如下表2。
表2 系统P3口的第二功能表RST:复位输入。
当振荡工作时,RST引脚出现两个机器周期上高电平将使单片机复位。
WDT益出将使该引脚输出高电平,设置SFR AUXR 的 DISRTO 位(地址8EH)可打开或关闭该功能。
DISRTO 位缺省为RESET输出高电平打开状态。
PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
当访问外部数据存储器,高有两次有效的PSEN信号。
AT89S51单片机内部构造及功能:特殊功能寄存器:特殊功能寄存器的片内空间分存如下图3所示。
这些地址并没有全部占用,没有占用的地址不可使用,读这些地址将得到一个随意的数值。
中断寄存器:各中断允许控制位于IE寄存器,5个中断源的中断优先级控制位于IP寄存器。
下图为AUXR辅助寄存器。
电源空闲标志:电源空闲标志(POF)在特殊功能寄存储器SFR中PCON的第4位(PCON.4),电源打开时POF置“1”,它可由软件设置睡眠状态并不为复位所影响。
存储器结构:MCS-51单片机内核采用程序存储器和数据存储器空间分开的结构,均具有64KB外部程序和数据的寻址空间。
程序存储器:如果EA引脚接地(GND),全部程序均执行外部存储器。
在AT89S51假如接至Vcc(电源+),程序首先执行从地址0000H-0FFFH(4KB)内部程序存储器,再执行地址为1000H-FFFFH(60KB)的外部程序存储器。
数据存储器:在AT89S51的具有128字节的内部RAM,这128字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行,128字节均可设置为堆栈区空间。
看门狗定时器(WDT):WDT是为了解决CPU程序运行时可能进入混乱或死循环而设置,它由一个14bit计数器和看狗复位SFR(WDTRST)构成。
外部复位时,WDT默认为关闭状态,要打开WDT,必按顺序将01H和0E1H写到WDTRST寄存器,当启动了WDT,它会随晶体振荡器在每个机器周期计数,除硬件复位或WDT溢出复位外没有其它方法关闭WDT,当WDT溢出,将使RST引脚输出高电平的复位脉冲。
引脚图详见图3图3 AT89S51单片机引脚图二、各单元硬件设计(1)键盘单元单片机应用系统中除了复位按键有专门的复位电路,以及专一的复位功能外,其它的按键或键盘都是以开关状态来设置控制功能或输入数据。
键开关状态的可靠输入:为了去抖动我采用软件方法,它是在检测到有键按下时,执行一个10ms的延时程序后,再确认该键电平是否仍保持闭合状态电平,如保持闭合状态电平则确认为真正键按下状态,从而消除了抖动影响对照图示的4*4键盘,说明线反转法工作原理。
首先辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。
方法是:向行线输出全扫描字00H,把全部列线置为低电平,然后将列线的电平状态读入累加器A中。
如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。
判断键盘中哪一个键被按下是通过将列线逐列置低电平后,检查行输入状态来实现的。
方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。
键盘共有16个按键,用于方便设定温度。
…数字按键,输入数字0----9;设置的确认,修改设置温度时进行确认; 设置的清除,修改设置温度时进行删除; 开启电源关闭电源显示及设置转换到温度点1,按此按键后,显示预设置温度的数码管闪烁; 显示及设置转换到温度点2,按此按键后,显示预设置温度的数码管闪烁;表3系统键盘的按键分布表(2)温度控制及超温和超温警报单元 当采集的温度经处理后超过规定温度上限时,单片机通过 P1.4 输出控制信号驱动三极管 D1 ,使继电器 K1 开启降温设备 ( 压缩制冷设备 ) :当采集的温度经处理后低于设定温度下限时,单片机通过 P1.5 输出控制信号驱动三极管 D2 ,使继电器 K2 开启升温设备 ( 加热器1) 。