基于单片机水温控制系统设计

合集下载

基于单片机的水温控制系统设计

基于单片机的水温控制系统设计

基于单片机的水温控制系统设计水温控制系统在许多领域中都具有重要的应用价值,例如温室农业、水族馆、游泳池等。

在这些应用中,保持水温在一个合适的范围内对于生物的生存和健康至关重要。

基于单片机的水温控制系统设计是一种有效的方法,它可以实现对水温的精确控制和调节。

本文将详细介绍基于单片机的水温控制系统设计原理、硬件实现和软件编程等方面内容。

第一章研究背景与意义1.1研究背景随着科技的飞速发展,人们对生活品质的追求不断提高,对家电设备的智能化要求也越来越高。

其中,水温控制系统在热水器、空调等家电产品中具有广泛的应用。

精确控制水温对于提高用户体验、节约能源和保护环境具有重要意义。

然而,现有的水温控制系统存在控制精度不高、响应速度慢等问题,因此,研究一种新型的水温控制系统具有重要的实际意义。

1.2研究意义本研究旨在提出一种新型的水温控制系统,通过对水温进行精确控制,提高家电产品的性能和用户体验。

此外,本研究还将探讨系统性能的评估和改进方法,为水温控制领域的研究提供理论支持。

第二章水温控制系统设计原理2.1 水温测量原理本章将介绍水温的测量原理,包括热电偶、热敏电阻、红外传感器等常用温度传感器的原理及特点。

通过对各种传感器的比较,选出适合本研究的温度传感器。

2.2温度传感器选择与应用在本研究中,我们将选择一种具有高精度、快速响应和抗干扰能力的温度传感器。

此外,还将探讨如何将选定的温度传感器应用于水温控制系统,包括传感器的安装位置、信号处理方法等。

2.3控制算法选择与设计本章将分析现有的控制算法,如PID控制、模糊控制、神经网络控制等,并选择一种适合本研究的控制算法。

针对所选控制算法,设计相应的控制电路和程序。

第三章硬件实现3.1控制器选择与搭建本章将讨论控制器的选型,根据系统的需求,选择一款性能稳定、可编程性强、成本合理的控制器。

然后,介绍如何搭建控制器硬件系统,包括控制器与各种外设(如温度传感器、继电器等)的连接方式。

基于at89c51单片机的水温控制系统的设计文献综述

基于at89c51单片机的水温控制系统的设计文献综述

基于at89c51单片机的水温控制系统的设计文献综述基于AT89C51单片机的水温控制系统的设计文献综述一、引言水温控制系统在工业、家电、农业等领域有着广泛的应用。

随着科技的发展,单片机作为微控制器在控制系统中的应用越来越广泛。

AT89C51单片机作为一种常用的单片机,具有性能稳定、价格低廉等优点,被广泛应用于水温控制系统的设计中。

本文将对基于AT89C51单片机的水温控制系统的设计进行文献综述。

二、AT89C51单片机简介AT89C51是一种常用的8位单片机,由美国ATMEL公司生产。

它具有4K字节的Flash 存储器、128字节的RAM、32位I/O端口、两个16位定时器/计数器、一个5向量两级中断结构、一个全双工串行通信口等功能。

AT89C51单片机适用于各种控制领域,如温度、湿度、压力等。

三、水温控制系统设计水温控制系统主要由温度传感器、单片机控制器、执行器等组成。

传感器负责采集水温信息,并将信息传递给单片机控制器。

单片机控制器根据设定的温度值与实际水温的差值,通过执行器调节加热元件的工作状态,从而实现水温的自动控制。

在基于AT89C51单片机的水温控制系统中,常用的温度传感器有热敏电阻、热电偶等。

执行器则可以选择继电器、可控硅等设备,用于控制加热元件的工作状态。

为了实现精确的温度控制,可以采用模糊控制、PID控制等控制算法。

四、AT89C51单片机在水温控制系统中的应用AT89C51单片机在水温控制系统中主要负责温度信号的采集、处理和控制输出。

通过编程实现温度信号的采集和转换,并根据设定值与实际水温的差值,通过执行器调节加热元件的工作状态,从而实现水温的自动控制。

此外,AT89C51单片机还可以实现报警、显示等功能,提高系统的智能化程度。

五、总结与展望基于AT89C51单片机的水温控制系统具有结构简单、成本低廉、易于实现等优点,被广泛应用于各个领域的温度控制中。

随着科技的发展,人们对水温控制系统的精度和智能化程度的要求越来越高。

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

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

基于STM32单片机的温度控制系统设计一、本文概述本文旨在探讨基于STM32单片机的温度控制系统的设计。

我们将从系统需求分析、硬件设计、软件编程以及系统测试等多个方面进行全面而详细的介绍。

STM32单片机作为一款高性能、低功耗的微控制器,广泛应用于各类嵌入式系统中。

通过STM32单片机实现温度控制,不仅可以精确控制目标温度,而且能够实现系统的智能化和自动化。

本文将介绍如何通过STM32单片机,结合传感器、执行器等硬件设备,构建一套高效、稳定的温度控制系统,以满足不同应用场景的需求。

在本文中,我们将首先分析温度控制系统的基本需求,包括温度范围、精度、稳定性等关键指标。

随后,我们将详细介绍系统的硬件设计,包括STM32单片机的选型、传感器和执行器的选择、电路设计等。

在软件编程方面,我们将介绍如何使用STM32的开发环境进行程序编写,包括温度数据的采集、处理、显示以及控制策略的实现等。

我们将对系统进行测试,以验证其性能和稳定性。

通过本文的阐述,读者可以深入了解基于STM32单片机的温度控制系统的设计过程,掌握相关硬件和软件技术,为实际应用提供有力支持。

本文也为从事嵌入式系统设计和开发的工程师提供了一定的参考和借鉴。

二、系统总体设计基于STM32单片机的温度控制系统设计,主要围绕实现精确的温度监测与控制展开。

系统的总体设计目标是构建一个稳定、可靠且高效的环境温度控制平台,能够实时采集环境温度,并根据预设的温度阈值进行智能调节,以实现对环境温度的精确控制。

在系统总体设计中,我们采用了模块化设计的思想,将整个系统划分为多个功能模块,包括温度采集模块、控制算法模块、执行机构模块以及人机交互模块等。

这样的设计方式不仅提高了系统的可维护性和可扩展性,同时也便于后续的调试与优化。

温度采集模块是系统的感知层,负责实时采集环境温度数据。

我们选用高精度温度传感器作为采集元件,将其与STM32单片机相连,通过ADC(模数转换器)将模拟信号转换为数字信号,供后续处理使用。

基于单片机的水温控制系统设计

基于单片机的水温控制系统设计

基于单片机的水温控制系统设计摘要:水温控制系统在工业、农业、生活等各个领域广泛应用。

随着技术的发展,单片机控制技术正在越来越多的应用到水温控制领域中。

本文通过对水温控制系统原理的分析,进行了设计和制作,并通过实验结果验证了本设计的可行性和稳定性。

关键词:单片机控制技术;水温控制系统;可行性;稳定性1. 引言水温控制系统在现代社会中应用广泛,水温控制技术的发展和进步为现代社会的科技进步做出了巨大的贡献。

单片机技术作为一种广泛应用的控制技术,可以实现多种不同的控制操作,因此被广泛应用到水温控制系统中。

本文将针对单片机水温控制系统进行分析设计,并进行实验验证。

2. 水温控制系统原理分析水温控制系统的基本结构由传感器、控制器以及执行机构等组成。

其中,传感器负责温度数据的采集,控制器负责处理和分析数据,并控制执行机构实现温度控制。

单片机水温控制系统的实现原理基于以下几个步骤:1)传感器采集温度数据并将数据转换为数字信号。

2)单片机控制器通过间接方式获取传感器采集的温度数字信号,并将其传输到外围设备中。

3)控制器将传输的信息根据其程序所设定的算法进行计算,得到温度数据,从而调整执行机构的作用。

4)执行机构实现接收计算出的数据并通过温度调节装置将温控装置的工作状态调节到所设定的工作状态,最终实现水温控制。

3. 单片机水温控制系统设计根据以上原理设计单片机水温控制系统,具体实现过程如下:1)传感器:选用DS18B20数字温度传感器,将其与单片机进行连接;2)控制器:选用AT89S52单片机,作为水温控制器,通过程序将传感器所采集到的数字信号转化为温度信息,并与设定温度进行比较和判断,控制继电器开关;3)执行机构:选用继电器作为执行机构,通过继电器的开关控制加热器的加热状态,调节水温。

4. 实验验证将设计好的单片机水温控制系统进行实验,实验过程中将设定温度为30℃,获得的实验结果显示在图1中。

图1 实验结果实验结果表明,本设计的单片机水温控制系统能够在设定温度为30℃时以及系统正常工作的情况下,实现对水温的有效控制。

基于单片机的水温水位控制系统设计

基于单片机的水温水位控制系统设计

四、结论
基于单片机的智能水箱水位和水温控制系统具有结构简单、成本低、可靠性 高等优点。通过实时监测和控制水箱的水位和水温,可以满足不同用户的需求。 此外,通过优化系统的硬件设计和软件设计,可以进一步提高系统的性能和可靠 性。这种系统不仅可以应用于家庭用水领域,也可以应用于工业生产中的液体控 制,具有广泛的应用前景。
1、抗干扰设计
由于环境因素和设备本身的影响,系统可能会受到干扰。因此,需要在硬件 设计和软件设计中加入抗干扰措施,如滤波电路、软件去抖动等。
2、节能设计
为了降低系统的功耗,可以在软件设计中加入休眠模式和唤醒模式。当系统 不需要工作时,可以进入休眠模式,降低功耗。当有数据需要处理时,系统被唤 醒,进入工作状态。
2、软件设计
系统的软件设计主要实现以下功能:数据的采集、处理、显示和控制。首先, 单片机通过水位传感器和水温传感器采集当前的水位和水温数据。然后,单片机 对采集到的数据进行处理,判断水位和水温是否正常。如果异常,则启动相应的 执行机构进行调节。最后,单片机将处理后的数据通过显示模块进行显示。
三、系统优化
六、结论
本次演示设计了一种基于单片机的水温水位控制系统,实现了温度和水位的 自动检测、调节和控制。该系统具有成本低、可靠性高、易于实现等优点,同时 支持远程控制和节能模式等功能。在家庭、工业和科学研究中具有广泛的应用前 景。
参考自动化技术的普及,智能化设备在日常生活和工业生产中 的应用越来越广泛。其中,基于单片机的智能水箱水位和水温控制系统具有重要 应用价值。这种系统可以实现对水箱水位和水温的实时监测和控制,以适应不同 的应用需求。
系统软件采用C语言编写,主要包括以下几个部分:数据采集、数据处理、 控制输出和远程通信。
1、数据采集:通过I/O端口读取DS18B20和超声波水位传感器的数据。

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

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

一、概述单片机PID温度控制系统是一种利用单片机对温度进行控制的智能系统。

在工业和日常生活中,温度控制是非常重要的,可以用来控制加热、冷却等过程。

PID控制器是一种利用比例、积分、微分三个调节参数来控制系统的控制器,它具有稳定性好、调节快等优点。

本文将介绍基于单片机的PID温度控制系统设计的相关原理、硬件设计、软件设计等内容。

二、基本原理1. PID控制器原理PID控制器是一种以比例、积分、微分三个控制参数为基础的控制系统。

比例项负责根据误差大小来控制输出;积分项用来修正系统长期稳态误差;微分项主要用来抑制系统的瞬时波动。

PID控制器将这三个项进行线性组合,通过调节比例、积分、微分这三个参数来实现对系统的控制。

2. 温度传感器原理温度传感器是将温度变化转化为电信号输出的器件。

常见的温度传感器有热电偶、热敏电阻、半导体温度传感器等。

在温度控制系统中,温度传感器负责将环境温度转化为电信号,以便控制系统进行监测和调节。

三、硬件设计1. 单片机选择单片机是整个温度控制系统的核心部件。

在设计单片机PID温度控制系统时,需要选择合适的单片机。

常见的单片机有STC89C52、AT89S52等,选型时需要考虑单片机的性能、价格、外设接口等因素。

2. 温度传感器接口设计温度传感器与单片机之间需要进行接口设计。

常见的温度传感器接口有模拟接口和数字接口两种。

模拟接口需要通过模数转换器将模拟信号转化为数字信号,而数字接口则可以直接将数字信号输入到单片机中。

3. 输出控制接口设计温度控制系统通常需要通过继电器、半导体元件等控制输出。

在硬件设计中,需要考虑输出接口的类型、电流、电压等参数,以及单片机与输出接口的连接方式。

四、软件设计1. PID算法实现在单片机中,需要通过程序实现PID控制算法。

常见的PID算法包括位置式PID和增量式PID。

在设计时需要考虑控制周期、控制精度等因素。

2. 温度采集和显示单片机需要通过程序对温度传感器进行数据采集,然后进行数据处理和显示。

《2024年基于51单片机的温度控制系统设计与实现》范文

《2024年基于51单片机的温度控制系统设计与实现》范文

《基于51单片机的温度控制系统设计与实现》篇一一、引言在现代工业控制领域,温度控制系统的设计与实现至关重要。

为了满足不同场景下对温度精确控制的需求,本文提出了一种基于51单片机的温度控制系统设计与实现方案。

该系统通过51单片机作为核心控制器,结合温度传感器与执行机构,实现了对环境温度的实时监测与精确控制。

二、系统设计1. 硬件设计本系统以51单片机为核心控制器,其具备成本低、开发简单、性能稳定等优点。

硬件部分主要包括51单片机、温度传感器、执行机构(如加热器、制冷器等)、电源模块等。

其中,温度传感器负责实时监测环境温度,将温度信号转换为电信号;执行机构根据控制器的指令进行工作,以实现对环境温度的调节;电源模块为整个系统提供稳定的供电。

2. 软件设计软件部分主要包括单片机程序与上位机监控软件。

单片机程序负责实时采集温度传感器的数据,根据设定的温度阈值,输出控制信号给执行机构,以实现对环境温度的精确控制。

上位机监控软件则负责与单片机进行通信,实时显示环境温度及控制状态,方便用户进行监控与操作。

三、系统实现1. 硬件连接将温度传感器、执行机构等硬件设备与51单片机进行连接。

具体连接方式根据硬件设备的接口类型而定,一般采用串口、并口或GPIO口进行连接。

连接完成后,需进行硬件设备的调试与测试,确保各部分正常工作。

2. 软件编程编写51单片机的程序,实现温度的实时采集、数据处理、控制输出等功能。

程序采用C语言编写,易于阅读与维护。

同时,需编写上位机监控软件,实现与单片机的通信、数据展示、控制指令发送等功能。

3. 系统调试在完成硬件连接与软件编程后,需对整个系统进行调试。

首先,对单片机程序进行调试,确保其能够正确采集温度数据、输出控制信号。

其次,对上位机监控软件进行调试,确保其能够与单片机正常通信、实时显示环境温度及控制状态。

最后,对整个系统进行联调,测试其在实际应用中的性能表现。

四、实验结果与分析通过实验测试,本系统能够实现对环境温度的实时监测与精确控制。

基于单片机的水温控制系统设计

基于单片机的水温控制系统设计

基于单片机的水温控制系统设计引言在能源日益紧张的今天,电热水器,饮水机,电饭煲之类的家用电器在保温时,由于其简单的温控系统,利用温敏电阻来实现温控,因而会造成很大的能源浪费浪费。

利用 AT89C51 单片机为核心,配合温度传感器,信号处理电路,显示电路,输出控制电路,故障报警电路等组成,软件选用汇编语言编程。

单片机可将温度传感器检测到的水温模拟量转换成数字量,显示于LED 显示器上。

该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。

本设计任务和主要内容设计并制作一个水温自动控制系统,控制对象为1升净水,容器为搪瓷器皿。

水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动控制,以保持设定的温度基本不变。

本设计主要内容如下:(1)温度设定范围为40~90℃,最小区分度为1℃,标定温度≤1℃。

(2)环境温度降低时温度控制的静态误差≤1℃。

(3)用十进制数码管显示水的实际温度。

(4)采用适当的控制方法,当设定温度突变(由40℃提高到60℃)时,减小系统的调节时间和超调量。

(5)温度控制的静态误差≤0.2℃。

系统主要硬件电路设计单片机控制系统原理框图温度采样电路选用传感器AD590。

其测量范围在-50℃--+150℃,满刻度范围误差为±0.3℃,当电源电压在5—10V之间,稳定度为1﹪时,误差只有±0.01℃。

此器件具有体积小、质量轻、线形度好、性能稳定等优点。

系统的信号采集电路主要由温度传感器(AD590)、基准电压(7812)及A/D转换电路(ADC0804)三部分组成。

信号采集电路温度控制电路此部分电路主要由光电耦合器MOC3041和双向可控硅BTA12组成。

MOC3041光电耦合器的耐压值为400v,它的输出级由过零触发的双向可控硅构成,它控制着主电路双向可控硅的导通和关闭。

100Ω电阻与0.01uF 电容组成双向可控硅保护电路。

部分控制电路系统主程序设计主程序流程图。

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

水温控制系统设计:盛朋克学号:B11041307系别:电气工程与自动化系水温控制系统设计摘要本系统以AT89C51,AT89C2051单片机为核心,主要包括传感器温度采集,A/D模/数转换,按扭操作,单片机控制,数码管数字显示等部分。

本系统采用PID算法实现温度控制功能,通过串行通信完成两片单片机信息的交互而实现温度设定、控制和显示。

本设计还可以通过串口与上位机(电脑)连接,实现电脑控制。

系统设计有体积小、交互性强等优点。

为了实现高精度的水温控制,本单片机系统采用PID算法控制和PWM脉宽调制相结合的技术,通过控制双向可控硅改变电炉和电源的接通、断开,从而改变水温加热时间的方法来实现对水温的控制。

本系统由键盘显示和温度控制两个模块组成,通过模块间的通信完成温度设定、实温显示、水温升降等功能。

具有电路结构简单、程序简短、系统可靠性高、操作简便等特点。

关键词:单片机,继电器,DS18B20,按键,数码显示,PID,PWM第1章引言在能源日益紧的今天,电热水器,饮水机,电饭煲之类的家用电器在保温时,由于其简单的温控系统,利用温敏电阻来实现温控,因而会造成很大的能源浪费。

但是利用AT89C51单片机为核心,配合温度传感器,信号处理电路,显示电路,输出控制电路,故障报警电路等组成,软件选用汇编语言编程。

单片机可将温度传感器检测到的水温模拟量转换成数字量,显示于LED显示器上。

该系统灵活性强,易于操作,可靠性高,将会有更广阔的开发前景。

1.1 水温控制系统概述能源问题已经是当前最热门的话题,离开能源的日子,世界将失去色彩,人们将寸步难行,虽然本设计是节省电能角度出发,而电能又是可再生能源,但是今天还是有很多的电能是依靠火力,核电等不可再生资源产生,一旦这些自然资源耗尽,我们将面临电能资源的巨大缺口,因此本设计从开源节流的角度出发,节省电能,保护环境。

1.2 本设计任务和主要容设计并制作一个水温自动控制系统,控制对象为1升净水,容器为搪瓷器皿。

水温可以在一定围由人工设定,并能在环境温度降低时实现自动控制,以保持设定的温度基本不变。

本设计主要容如下:(1)温度设定围为40-90℃,最小区分度为1℃,标定温度≤1℃。

(2)环境温度降低是温度控制的静态误差≤1℃。

(3)用十进制数码管显示水的实际温度。

(4)采用适当的控制方法,当设定温度突变(由40℃提高到60℃)时,减小系统的调节时间和超调量。

(5)温度控制的静态误差≤0.2℃。

第2章系统硬件电路设计2.1 单片机控制系统原理图2-1 单片机控制系统原理框图2.2 温度采样电路系统的信号采集电路主要由温度传感器(AD590)、基准电压(7812)及A/D转换电路(ADC0804)三部分组成。

如图:2-2。

图2-2 信号采集电路2.2.1 温度传感器的选取目前市场上温度传感器较多,有一下几种:方案一:选用铂电阻温度传感器,此类温度传感器线性度、稳定性等当面都很好,但其成本较高。

方案二:采用热敏电阻,选用此类元器件有价格便宜的优点,但由于热敏电阻的非线性特性会影响系统的精度。

方案三:选用美国Analog Devices公司生产的二端集成电流传感器AD590。

其测量围在-50℃--+150℃之间,满刻度围误差为±0.3℃,当电源电压在5-10V 之间,稳定度为1%时,误差只有±0.01℃。

此器件具有体积小、质量轻、线性度好、性能稳定等优点其各方面特性都满足此系统的要求。

比较以上三种方案,方案三具有明显的优点,因此选用方案三。

2.2.2 温度传感器AD590测量围在-50℃--+50℃,满刻度围误差为±0.3℃,当电源电压在5-10V之间,稳定度为1%时,误差只有±0.01℃。

AD590为电流型传感器温度没变化1℃其电流变化1uA在35℃和95℃时输出电流分别为308.2uA和368.2uA。

2.2.3 电路原理及参数计算温度采样电路的基本原理是采用电流型温度传感器AD590将温度的变化量转化为电流量,再将电流量转化为电压量通过A/D转换器ADC0804将其转换成数值量交由单片机处理。

2.2.4 ADC0804性能描述ADC0804为8bit的一路A/D转换器,其输入电压围在0-5V,转换速度小于100us,转换精度0.39%。

满足系统的要求。

如图2-3A/D转换电路。

图2-3 温度转换电路2.3 温度控制电路此部分电路主要由光电耦合器MOC3041和双向可控硅BTA12组成。

MOC3041光电耦合器的耐压值为400V,它的输出级由过零触发的双向可控硅构成,它控制着主电路双向可控硅的导通和关闭。

100欧电阻和0.01uF电容组成双向可控硅保护电路。

控制部分电路图如图2-4部分控制电路。

图2-4 部分控制电路2.4 主机控制部分此部分是电路的核心部分,系统的控制采用了单片机89C52。

单片机部有8K 单元的程序存储器及256字节的数据存储器。

因此系统不必扩展外部程序存储器和数据存储器这样大大减少了系统的硬件部分。

如图 2-5 主机控制部分。

图2-5 主机控制部分2.5 键盘及数字显示部分在设计键盘/显示电路时,我们使用单片机2051作为电路控制电路的核心,单片机2051具有一个全双工的串行口,利用此串行口能够方便的实现系统的控制和显示功能。

键盘/显示电路如图2-6图 2-6 键盘/显示部分电路如图2-7中单片机2051的P1口接数码管道的8只引脚,这样易于度数码管的译码,使数码管能显示设计者所需的各数值、小数点、符号等等。

单片机2051的P3.3、P3.4、P3.5接3-8译码器74L138,译码器的输出端和键盘,键盘扫描和显示器扫描同用端口这样能大大的减少单片机的I/O,减少硬件的花费。

图 2-7 单片机2051连接图键盘的接法的差别直接影响到硬件和软件的设计,考虑到单片机2051的端口资源有限,所以我们在设计中将传统的4*4的键盘接成8*2的形式(如图2-8),键盘的扫描除了和显示公用的8个端外,另外的两个端直接和2051的P3.2和P3.7相连。

图 2-8 键盘接线如图2-8的接法已经完全用了单片机的15个I/O口,有效的利用了单片机的资源。

第3章系统的软件设计3.1 系统的主程序设计软件设计流程图如下:图3-1 主程序流程图3.2 主程序主程序在附录中。

3.3 键盘和显示程序设计键盘和显示程序流程图如下:图3-2 键盘显示程序流程图3.4 键盘和显示程序具体程序在附录中。

总结首先,通过这次课程设计,在很大程度上提高了自己的独立思考能力和单片机的专业知识,熟悉了下载调试等一系列的操作。

我设计系统的主要思想符合目前节省能源和国实际的应用特点和要求,采用计算机控制的形式,实现对水温的自动控制。

通过本设计的思考,更加加深了对单片机的认识,熟练了单片机的编程,更对当前的温度传感器有了更深刻的认识和了解,但是由于此系统依赖温度传感器,因而对温度传感器的线性和稳定性等诸多方面有着严格的要求,但是传感器的性能越好,相对而言其价格也就越高,因而在此设计中,温度传感器还是存在遗憾,其次,由于采用了汇编语言,所以其编程过程复杂不易查错。

最后,由于时间紧迫,本设计还有诸多地方需要改进。

总的来说,收获很大。

把书本知识应用到实际中,让我对书本中的理论知识有了更加深刻和立体的认识,同时,让我了解到动手实践的重要性,以后会更加注重理论与实践的结合。

参考文献[1]毅刚、喜元、守达、乔立岩.新编MCS-51系列单片机应用设计.工业大学,2003.6[2]胡汉才.单片机原理及接口技术.清华大学,1996[3]德金,粤初.MCS-51系列单片机接口电路与应用程序实例.航空航天大学,1990[4]建民.单片机在温度控制系统中的应用.江汉大学学报,1996.6[5]何立民.MCS-51系列单片机应用系统设计.航空航天大学,1990[6]志全等.智能仪表设计原理及应用.国防工业,1998.6[7]素行,模拟电子技术基础简明教程,高等教育,1985附录汇编程序主程序如下:ORG 0000HAJMP START ;主程序ORG 000BHAJMP TIMO ;T0中断子程序ORG 0023HAJMP RT ;串口中断接受子程序ORG 0100HSTART: MOV 50H ,#00H ;初始化设定温度MOV 51H,#00HMOV 52H,#00HMOV 53H,#00HMOV 54H,#0C6H ;发送第五个数码管字形码CMOV TMOD,#01H ;T0工作在MODE1MOV TH0,#0ECH ;晶振12M,50ms中断一次MOV TL0,#78HSETB TR0MOV TOMD,#20H ;T1工作在MODE2MOV TH1,#0E6H ;设波特率MOV TL1,#0E6HSTE TR1MOV SCON,#50HMOV IE,#92H ;允许T0,R1中断MOV R6,#04H ;初始要接收的数据个数MOV R1,#50H ;初始要接收的其实地址MOV R4,#00HREY:MOV A,53HCJNE A,#00H,YESSJMP REYYES:MOV R3,#00HYES1:CLR P2.0 ;开始A/D转换CLR P3.6SETB P3.6ACALL DELAYJ1:MOVX A,R0ACALL SJCL ;调用数据处理子程序ACALL DISPDJNZ R3,MMACALL FS ;调用串口发送子程序AJMP YESMM: AJMP YES1SJCL: MOV B,#60HMUL ABMOV 61H,AMOV A,BADD A,#35ACALL L10MOV 60H,R5 ;存十进制高八位(个位和十位)MOV A,61HMOV B,#9MUL ABMOV 61H,B ;存十进制低八位(小数点)RETL10:CLR CMOV R5,#00H ;初始化十进制转换的地位寄存器MOV R4,#08H ;调整次数NEXT: RLC AMOV R2,AMOV A,R5ADDC A,R5DA AMOV R5,AMOV A,R2DJNZ R4,NEXTRETDISP: MOV A,60HANL A,#0F0H ;取D2的显示数据存入70HSWAP AMOV 70H,AMOV A,60HANL A,#0F0H ;取D1的显示数据存入71HMOV 71H,AMOV 72H,61H ;取D0的显示数据存入72HMOV R0,#70H ;取相应的字形码分别存入55-57HMOV DPTR,#TABMOV A ,R0MOVC A,A+DPTRMOV 55H,AINC R0MOV A,R0MOVC A,A+DPTRMOV 56H,AINC R0MOV A,R0MOVC A,A+DPTRMOV 57H,AMOV A,56HADD A,#80H ;在D1字形码上加小数点MOV 56H,ARETFS: MOV A ,R0PUSH ACCMOV TMOD,#20HMOV TH1,#0E6HMOV TL1,#0E6HSET TR1MOV SCON,#50HMOV R0,#54H ;设定发送起始地址MOV R7,#04HLOOP: MOV SBUF,R0JNB T1,$CLR T1INC R0DJNZ R7,LOOPPOP ACCMOV R0,ARET ;串口中断接受子程序RT: PUSH ACCPUSH PSWCLR ET0CLR ESSJ: MOV R1,SBUFINC R1CJNE R4,#03H,MOVESJMP MOVE1MOVE: INC R4CLR RIJNB RI,$MOVE1: DJNZ R6,SJMOV R4,#00HMOV R1,#50H ;重置接收起始地址MOV R6,#04H ;重置接收个数SETB ET0SET ESPOP PSWPOP ACCRETI ;T0中断子程序TIM0: PUSH ACCPUSH PSWMOV TH0,#0ECH ;重设中断时间MOV TL0,#78HCLR CACCAL JSMOV A,51HCJNE A,70H,Q1 ;最高位比SJMP Q2Q1: JC OFFSJMP ONQ2: MOV AM,52HCJNE A,71H,Q3Q3: JC OFFON: CLR P1.4CLR P1.2RE: POP PSWPOP ACCRETIOFF: SETB P1.4SETB P1.2SJMP REDELAY: MOV R7,#50DJNZ R7,$RETTAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H键盘显示程序如下:FLAGA BIT 4EHFLAGB BIT 4FHORG 00HJMP STARTORG 23HJMP UARTISTART: CLR FLAGACLR FLAGBMOV 30H,#07H ;系统显示MOV 31H,#07HMOV 32H,#07HMOV 33H,#07HMOV 34H,#07HMOV 35H,#07HMOV 36H,#07HMOV 37H,#07HMOV R1,#90HMOV R0,#50HPP:CLR P3.3 ;P3.5P3.4P3.3=000 CLR P3.4CLR P3.5MOV A,30HMOV P1,ASETB P3.3 ;001MOV A,31HMOV P1,ASETB P3.4 ;010MOV A,32HMOV P1,ASETB P3.3MOV A,33HMOV P1,ASETB P3.5CLR P3.4CLR P3.3MOV A,34HMOV P1,ASETB P3.3MOV A,35HMOV P1,ASETB P3.4CLR P3.3MOV A,36HMOV P1,ASETB P3.3MOV A,37HMOV P1,ADJNZ R0,PPMOV R0,#0FFHDJNZ R0,$DJNZ R1,PPMOV SCON,#52HMOV 30H,#0FHMOV 34H,#0FHMOV 33H,#93HMOV 37H,#93HZ1:CLR P3.3CLR P3.4CLR P3.5MOV A,30HMOV P1,AJB P3.2,Z11ACALL DELAYJNB P3.2,$SETB FLAGAJMP Z2Z11:JB P3.7,Z2ACALL DELAYJNB P3.7JNB FLAGA,Z2JB FLAGB,Z12MOV 31H,#0C0HMOV R0,#0SETB FLAGBJMP Z2Z12:MOV 32H,#0C0HMOV R1,#0CLR FLAGBZ2:SETB P3.3MOV A,31HMOV P1,AJB P3.2,Z21ACALL DELAYJNB P3.2,$JNB FLAGA,Z3JB FLAGB,Z22MOV 31H,#0F9HMOV R1,#1SETB FLAGBJMP Z3Z22:MOV 32H,#0F9HMOV R1,#1CLR FLAGBJMP Z3Z21:JB P3.7,Z3ACALL DELAYJNB P3.7,$JNB FLAGA,Z3JB FLAGB,Z23MOV R0,#2MOV 31H,#0A4HSETB FLAGBJMP Z3Z23:MOV 32H,#A4HMOV R1,#2CLR FLAGBZ3: SETB P3.4CLR P3.3MOV A,32HMOV P1,AJB P3.2,Z31ACALL DELAYJNB P3.2,$JNB FLAGA,Z4JB FLAGB,Z32MOV 31H,#0B0HMOV R0,#3SETB FLAGBJMP Z4Z32: MOV 32H,#0B0H MOV R1,#3CLR FLAGBJMP Z4Z31: JB P3.7,Z4ACALL DELAYJNB P3.7,$JNB FLAGA,Z4JB FLAGB,Z33MOV 31H,#99HMOV R0,#4SETB FLAGBJMP Z4Z33: MOV 32H,#99HH MOV R1,#4CLR FLAGBZ4:SETB P3.3MOV A,33HMOV P1,AJB P3.2,Z41ACALL DELAYJNB P3.2,$JNB FLAGA,Z5JB FLAGB,Z42MOV 31H,#92HMOV RO,#5SETB FLAGBJMP Z5Z42:MOV 32H,#92HMOV R1,#5CLR FLAGBJMP Z5Z41:JB P3.7,Z5ACALL DELAYJNB P3.7,$JNB FLAGA,Z5JB FLAGB,Z43MOV 31H,#82HMOV R0,#6SETB FLAGBJMP Z5Z43:MOV 32H,#82HMOV R1,#6CLR FLAGBZ5:CLR P3.3CLR P3.4SETB P3.5MOV A,34HMOV P1,AJB P3.2,Z51ACALL DELAYJNB P3.2,$JNB FLAGA,Z6JB FLAGB,Z52MOV 31H,#0F8HMOV R0,#7SETB FLAGBJMP Z6Z52:MOV 32H,#0F8HMOV R1,#7CLR FLAGBJMP Z6Z51:JB P3.7,Z6ACALL DELAYJNB P3.7,$JNB FLAGA,Z6JB FLAGB,Z53MOV 31H,#80HMOV RO,#8SETB FLAGBJMP Z6Z53:MOV 31H,#80HMOV R1,#8CLR FLAGBZ6:SETB P3.3MOV A,35HMOV P1,AJB P3.2,Z61ACALL DELAYJNB P3.2,$JNB FLAGA,Z7JB FLAGB,Z62MOV 31H,98HMOV R0,#9SETB FLAGBJMP Z7Z62: MOV 32H,#98HMOV R1,#9CLR FLAGBJMP 27Z61: JB P3.7,27ACALL DELAYJNB P3.7$JNB FLAGA,Z7MOV A,R0MOV B,#10MUL ABMOV B,R1ADD A,BMOV SBUF,ACLR FLAGACLR FLAGBZ7: SETB P3.4CLR P3.3MOV A,36HMOV P1,AZ8: SRTB P3.3MOV A,37HMOV P1,AJMP Z1DELAY: MOV R7,#0F0HDLO: MOV R6,#0F0HDJNZ R6,$DJNZ R7,DL0RETUARTI: PUSH ACCPUSH PSWMOV DPTR,#TABLEMOV A,SBUFJNB RI,$CLR RIMOV B,AANL A,#00FHMOVC A,A+DPTRMOV 36H,AMOV A,BANL A,#0F0HMOV B,#10HDIV ABMOVC A,A+DPTRMOV 35H,AMOV A,R1POP PSWPOP ACCRETITABLE: DB 11H,7DH,23H,29H,4DHDB 89H,81H,1DH,01H,09H;。

相关文档
最新文档