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

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

基于单片机的温度智能控制系统的设计与实现共3篇基于单片机的温度智能控制系统的设计与实现1基于单片机的温度智能控制系统的设计与实现随着人们对生活质量的需求越来越高,温度控制变得愈发重要。
在家庭、医院、实验室、生产车间等场合,温度控制都是必不可少的。
本文将介绍一种基于单片机的温度智能控制系统的设计与实现。
设计思路本文所设计的温度智能控制系统主要由单片机、温度传感器、继电器和液晶屏幕等部件组成。
其中,温度传感器负责采集温度数据,单片机负责处理温度数据,并实现温度智能控制功能。
继电器用于控制加热设备的开关,液晶屏幕用于显示当前温度和系统状态等信息。
在实现温度智能控制功能时,本设计采用了PID控制算法。
PID控制算法是一种经典的控制算法,它基于目标值和当前值之间的误差来调节控制量,从而实现对温度的精确控制。
具体来说,PID控制器包含三个部分:比例控制器(P)用于对误差进行比例调节,积分控制器(I)用于消除误差的积累,微分控制器(D)用于抑制误差的未来变化趋势。
这三个控制器的输出信号加权叠加后,作为继电器的控制信号,实现对加热设备的控制。
系统实现系统硬件设计在本设计中,我们选择了常见的AT89S52单片机作为核心控制器。
该单片机运行速度快、稳定性好,易于编程,并具有较强的扩展性。
为了方便用户调节温度参数和查看当前温度,我们还选用了4 * 20的液晶屏。
温度传感器采用LM35型温度传感器,具有高精度、线性输出特性,非常适用于本设计。
系统电路图如下所示:系统软件设计在单片机的程序设计中,我们主要涉及到以下几个部分:1. 温度采集模块为了实现温度智能控制功能,我们首先需要获取当前的温度数据。
在本设计中,我们使用了AT89S52单片机的A/D转换功能,通过读取温度传感器输出的模拟电压值,实现对温度的采集。
采集到的温度数据存储在单片机的内部存储器中,以供后续处理使用。
2. PID控制模块PID控制模块是本设计的核心模块,它实现了对温度的精确控制。
基于单片机的温度控制系统设计及仿真

三、结论
本次演示设计并仿真了一个基于单片机的温度控制系统。该系统通过AT89C51 单片机实现温度的精确控制,并采用PID算法对加热和散热装置进行实时调节。 仿真结果表明,该系统具有良好的控制性能和稳定性。在实际应用中,
可以根据具体场景选择合适的硬件设备和参数调整策略,以满足不同的温度控 制需求。
本次演示将探讨如何设计一个基于单片机的温度控制系统,并对其进行仿真。
一、系统设计
1、1系统架构
基于单片机的温度控制系统主要由温度传感器、单片机控制器、加热装置和散 热装置四部分组成。温度传感器负责实时监测环境温度,并将模拟信号转换为 数字信号传递给单片机。单片机接收到这个数字信号后,根据预设的控制算法,
时及时停机并报警,保证系统的安全运行。未来研究方向可以包括进一步优化 控制算法、加入更多的智能化功能以及拓展应用领域等。
谢谢观看
通过深入研究以上方面,有望进一步提高基于单片机的温度控制系统的性能和 可靠性。
参考内容
摘要本次演示旨在设计一种基于单片机的温度控制系统,以提高温度控制的精 度和稳定性。首先,本次演示将介绍温度控制系统的重要性及其在工业生产和 日常生活中的应用。接着,通过对现有技术的分析,指出其存在的不足和缺陷。
二、系统仿真
为了验证系统的有效性,我们使用MATLAB对系统进行仿真。通过设定不同的 温度控制目标,我们可以观察系统的响应时间、稳定性和控制精度。在 MATLAB中,我们可以用S函数来描述控制系统的动态行为。通过调整PID参数, 我们可以观察系统在不同控制策略下的表现。
仿真结果表明,该基于单片机的温度控制系统在PID算法的控制下,能够快速、 准确地达到设定温度,并保持良好的稳定性。
软件设计软件部分采用C语言编写,主要包括数据采集、数据处理和控制输出 三个模块。数据采集模块负责读取温度传感器的数据,并进行初步处理;数据 处理模块根据预设的控制算法对采集到的温度数据进行计算,得到控制输出信 号;
《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、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间: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) 。