基于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。
《2024年基于51单片机的温度控制系统设计与实现》范文
《基于51单片机的温度控制系统设计与实现》篇一一、引言在现代工业控制领域,温度控制系统的设计与实现至关重要。
为了满足不同场景下对温度精确控制的需求,本文提出了一种基于51单片机的温度控制系统设计与实现方案。
该系统通过51单片机作为核心控制器,结合温度传感器与执行机构,实现了对环境温度的实时监测与精确控制。
二、系统设计1. 硬件设计本系统以51单片机为核心控制器,其具备成本低、开发简单、性能稳定等优点。
硬件部分主要包括51单片机、温度传感器、执行机构(如加热器、制冷器等)、电源模块等。
其中,温度传感器负责实时监测环境温度,将温度信号转换为电信号;执行机构根据控制器的指令进行工作,以实现对环境温度的调节;电源模块为整个系统提供稳定的供电。
2. 软件设计软件部分主要包括单片机程序与上位机监控软件。
单片机程序负责实时采集温度传感器的数据,根据设定的温度阈值,输出控制信号给执行机构,以实现对环境温度的精确控制。
上位机监控软件则负责与单片机进行通信,实时显示环境温度及控制状态,方便用户进行监控与操作。
三、系统实现1. 硬件连接将温度传感器、执行机构等硬件设备与51单片机进行连接。
具体连接方式根据硬件设备的接口类型而定,一般采用串口、并口或GPIO口进行连接。
连接完成后,需进行硬件设备的调试与测试,确保各部分正常工作。
2. 软件编程编写51单片机的程序,实现温度的实时采集、数据处理、控制输出等功能。
程序采用C语言编写,易于阅读与维护。
同时,需编写上位机监控软件,实现与单片机的通信、数据展示、控制指令发送等功能。
3. 系统调试在完成硬件连接与软件编程后,需对整个系统进行调试。
首先,对单片机程序进行调试,确保其能够正确采集温度数据、输出控制信号。
其次,对上位机监控软件进行调试,确保其能够与单片机正常通信、实时显示环境温度及控制状态。
最后,对整个系统进行联调,测试其在实际应用中的性能表现。
四、实验结果与分析通过实验测试,本系统能够实现对环境温度的实时监测与精确控制。
基于51单片机和CC1101的无线温度监控系统设计
基于51单片机和CC1101无线温度监控系统设计前言目前,科学技术的发展日新月异,单片机等大规模集成电路的进步与发展,温度监控技术的应用越来越广泛。
在传统微机化的温度监控系统中,均是以有线方式来实现温度监控。
传统的温度监控系统,其突出的问题是由于有线通信,线缆传输连线麻烦,需要特制接口,颇为不便,且实用性不强,成本高,造成系统的普及性降低,同时也带来了制作繁琐,外围电路复杂的缺点。
近年来,随着各种单片机及无线收发芯片的出现与推广,使得基于CC1101的无线温度监控系统的实现成为可能。
温度是工业、农业生产中常见的和最基本的参数之一,在生产过程中常需对温度进行检测和监控,采用微型机进行温度检测、数字显示、信息存储及实时控制,对于提高生产效率和产品质量、节约能源等都有重要的作用。
伴随工业科技、农业科技的发展,温度测量需求越来越多,也越来越重要。
但是在一些特定环境温度监测环境范围大,测点距离远,布线很不方便。
这时就要采用无线方式对温度数据进行采集。
利用无线技术实现数据传输比使用传统的有线电缆有不可比拟的优点,如可移动性、方便灵活性等多方面都更能满足人们的实际需要。
实现无线数据传输的方法多种多样,使用高频无线电技术、激光技术、红外技术等等均能满足无线传输要求。
本设计是以宏晶科技推出的STC89C52RC单片机作为控制核心,提出以DS18B20的单线分布式温度采集与控制系统,通过CC1101无线收发模块收发信息。
监控点将接收到主控点的信息后,经过一些处理,然后相应的监控点将采集并发送数据给主控点。
主控点通过串口将收到的温度信息回馈到上位机(PC机),从而远程实现对整个系统的检测与控制。
一.总体方案设计温度监控系统有着共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等。
若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。
基于51单片机的温度控制系统设计
S O I E N C E &T E C H N 0 L O G Y
皿圆
基于 5 1单 片机 的温 度 控 制 系统 设计
李先 利 张 家 为 4 0 1 31 1 ) ( 重温 度控 制 系统 的硬件 电路 设计 . 总体 机 构 、 工作 原理 , 键盘 显示 等硬件 电路 、 单 片机及 扩展 几 1 3 ' 电路A / D 转 换和 D / A转换 电路 作 了详细的说 明和论述 。 关键 词 : 单 片机 温度控 制 系统设计 中图 分 类 号 : T P 2 7 4 文献 标 识 码 : A 文章 编号 : 1 6 7 2 -3 7 9 1 ( 2 0 1 3 ) 1 0 ( e ) - 0 1 0 5 - 0 1 本 文 对 单 片 机 的 温 度 控 制 系 统 进 行 论 述的时候 , 主 要 是 从 具 体 的 四 个 组 成 部 分 进行 : 第一是输 入部分 ; 第 二 是 输 出部 分 ; 第 三 是按 键 部 分 ; 第 四是 显 示 部 分 。 温 度 控 制系 统通过 A DC 0 8 0 9 进行 A / D 转换 的形式 对温度传 感器的 实际温度 进行检测 , 同 时 将检测送 到单片机 中 , 如 果 检 测 到 的 值 同 设 定 值 在 比 较 的 时 候 出现 了 偏 差 , 会 对 偏 差值进行修 正 , 得 到 的 控 制 值 对 电机 转 速 进行 控 制 , 实 现 温 度 的控 制 。 这个 公 式 中 , Ama x 代表 的 是 测 量范 围 中的 最 大值 , 而 Ami n 代表 的是 测 量 范 围 中的 最 小值。 因此 , 可以将相应的数值加入公式中 进行计算 。 比如n 是8 的时候 , 而 Y是 3 的 时 候, 就 可 以满 足 相 应 模 数 转 换 器 的 要 求 。 最 常 用 的 模 数 转 换 器 是 ADC 0 8 0 9 , 这 个 转 换 器 的特 点是 价 格 比较 便 宜 , 性能较好 , 同时 有八个通 道 , 并 且 可 以 对 同一 个 参 数 进 行 测定 , 也 可 以 对 不 同 的 参 数进 行 测 定 。 本 次 设 计 中 是 通过 多 通 道 采集 的 方式 来 获取 温 度信号 , 这 样 可 以 对 系 统 的 各 个 要 求 进 行 充 分 的满 足 。 因此 , 本 次 设 计 中 的模 数转 换 所用 的 器件 选 择 用ADC0 8 0 9。 2 . 4 人机 交互 的设 计 人 机 界 面 主要 是 通 过 人 与 机 器 进 行 充 分 的结 合 , 从而对功能的选择、 控 制 参数 以 及 执行进 行设定 , 同时 对 温 度 的 显 示 等 功 能 进行较好 的控制 。 在 单 片 机 的 应 用 系 统 中, 人 机 交 互 是 属 于 外 部 设备 构成 系统 。 这 个 设 计 是 通 过 应 用 系统 同相 应 的 操 作 人 员 进 行相互 的活动 , 通 过 这 种 形 式 让 系 统 同 外 界进行相应 的联 系。 如 果 需 要 一 个 较 为 安全 的应用 系统 , 应 该 拥 有 较 为 灵 活 和 方 便 的交互功 能。 这 个 系 统 不 但 能 够 将 系 统 运 行 的 状 态 较 好 地 展示 出 来 , 同 时 又 可 以 进 行 恰 当的 人 工 干 预 。 2. 5 显示接 口的设计 在单片微机系统中 , 常用的显示器有 : 数码 管显示 器 , 简称 L E D, 液 晶显 示 器 , 简
基于51单片机的数字温度计
引言:数字温度计是一种基于51单片机的温度测量装置,它通过传感器感知环境的温度,并使用单片机将温度值转换为数字形式,并显示在液晶屏上。
本文将详细介绍数字温度计的设计原理、硬件连接、软件编程以及应用领域。
概述:数字温度计基于51单片机的设计理念,其基本原理是通过传感器将温度转换为电信号,然后通过ADC(模数转换器)将电信号转换为数字信号,最后使用单片机将数字信号转换为温度值。
同时,数字温度计还将温度值显示在液晶屏上,方便用户直观地了解环境温度。
正文内容:1. 硬件连接:1.1 使用温度传感器感知环境温度:常用的温度传感器有NTC热敏电阻和DS18B20数字温度传感器。
通过将传感器连接到51单片机的引脚上,可以实现对环境温度的感知。
1.2 连接ADC进行模数转换:ADC是将模拟信号转换为数字信号的关键部件。
通过将51单片机的引脚连接到ADC芯片的输入端,可以将模拟的温度信号转换为数字信号。
1.3 连接液晶屏显示温度值:通过将51单片机的引脚连接到液晶屏的控制引脚和数据引脚,可以将温度值以数字形式显示在液晶屏上。
2. 软件编程:2.1 初始化引脚和ADC:在软件编程中,需要初始化51单片机的引脚设置和ADC的工作模式。
通过设置引脚为输入或输出,以及设置ADC的参考电压和工作模式,可以确保硬件正常工作。
2.2 温度测量算法:根据传感器的工作原理和电压-温度特性曲线,可以编写相应的算法将ADC测得的电压值转换为温度值。
例如,对于NTC热敏电阻,可以使用Steinhart-Hart公式进行温度计算。
2.3 温度值显示:将温度值以数字形式显示在液晶屏上。
通过设置液晶屏的控制引脚和数据引脚,可以控制液晶屏的显示内容,并将温度值以数字形式显示在屏幕上。
3. 基于51单片机的数字温度计应用:3.1 家庭温度监测:数字温度计可以安装在家庭中的不同区域,实时监测室内温度,并通过数字显示提供直观的温度信息。
这对于家庭的舒适性和节能都有重要意义。
基于 51 单片机的温度控制系统设计
基于 51 单片机的温度控制系统设计一、概述随着科技的不断进步,单片机技术在各个领域得到了广泛的应用,其中温度控制系统是其重要的应用之一。
温度控制系统的设计可以帮助我们在工业、农业、生活等领域实现精确的温度控制,提高生产效率和产品质量,降低能源消耗,提升人们的生活舒适度。
本文将讨论基于 51 单片机的温度控制系统设计。
二、系统设计原理1. 温度传感器原理温度传感器是温度控制系统中的关键元件,用于感知环境温度并将其转换为电信号。
常见的温度传感器包括热电偶、热敏电阻、半导体温度传感器等。
本系统选择半导体温度传感器,其工作原理是利用半导体材料的温度特性,通过材料的电阻、电压、电流等参数的变化来测量温度。
2. 控制系统原理温度控制系统的核心是控制器,它根据温度传感器采集到的温度信号进行逻辑判断,然后控制执行元件(如风扇、加热器等)来调节环境温度。
基于 51 单片机的控制系统,通过采集温度传感器信号,使用自身的算法进行温度控制,并输出控制信号给执行元件,从而实现温度的精确控制。
三、系统硬件设计1. 单片机选型本系统选择 51 单片机作为控制器,考虑到其成本低、易于编程和广泛的开发工具支持等优点。
常用的型号包括 STC89C51、AT89S51 等。
2. 温度传感器选型温度传感器的选型最终决定了系统测量的精度和稳定性。
选择适合的半导体温度传感器,如 LM35、DS18B20 等,其精度、响应时间、成本等因素需综合考虑。
3. 控制元件选型根据实际需要选择对应的执行元件,比如风扇、加热器、制冷器等,用于实现温度控制目标。
四、系统软件设计1. 控制算法设计控制系统应当具备良好的控制算法,通过对温度传感器信号的采集和处理,根据设定的温度范围和控制策略来输出对应的控制信号。
经典的控制算法包括比例积分微分(PID)控制算法、模糊控制算法等。
2. 硬件与软件接口设计单片机与传感器、执行元件之间的接口设计尤为重要,应当保证稳定可靠的通信。
基于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单片机的温度警报器设计具有可扩展性和实用性,可以满足不同环境的需求。
基于51单片机的温控系统设计流程框图
基于51单片机的温控系统设计流程框图下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor.I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!基于51单片机的温控系统设计流程详解在电子工程领域,51单片机因其简单易用、功能强大而被广泛应用。
基于51单片机数字温度计系统设计与实现
基于51单片机数字温度计系统设计与实现数字温度计是一种可以测量环境温度并将结果以数字方式显示的设备。
在本次任务中,我们将基于51单片机设计和实现一个数字温度计系统。
本文将介绍数字温度计的原理、硬件设计、软件设计以及系统的实施过程。
首先,让我们来了解一下数字温度计的工作原理。
数字温度计通过传感器获取环境温度的模拟信号,然后将其转换为数字信号进行处理,并最终在数字显示器上显示温度值。
通常,我们使用的传感器是温度敏感电阻或数字温度传感器。
接下来,我们将讨论硬件设计。
在本次任务中,我们使用的是51单片机作为主控制器。
我们需要连接一个温度传感器来测量温度,并将温度值转换为数字信号。
同时,我们还需要连接一个数字显示器,用于显示温度值。
为了实现这些功能,我们需要设计一个电路板,并正确布局电子元件。
另外,我们还需要通过键盘或按钮来控制系统的操作,例如切换温度单位等。
在软件设计方面,我们需要编写程序来完成以下任务:首先,我们需要初始化51单片机的引脚和中断。
然后,我们需要编写一个温度转换的函数,将传感器输出的模拟信号转换为数字信号。
接下来,我们需要编写一个显示函数,将转换后的数字温度值显示在数字显示器上。
最后,我们还可以添加一些功能,例如设置温度单位(摄氏度或华氏度)和存储温度数据等。
在系统实施过程中,我们需要按照以下步骤进行操作:首先,进行硬件的连接和组装。
确保所有电子元件正确连接并固定在电路板上。
然后,烧录编写好的程序到51单片机中。
接下来,我们可以通过设置开关或按键来控制系统的操作。
最后,我们可以测试系统的功能和性能,确保数字温度计正常工作。
值得注意的是,在设计和实现数字温度计系统时,我们需要考虑一些问题。
例如,温度传感器的精度和响应时间,数字显示器的显示精度和分辨率,以及系统的稳定性和可靠性等。
通过合理的设计和选择高质量的元件,我们可以提高系统的性能和可靠性。
总结起来,本次任务中我们基于51单片机设计和实现了一个数字温度计系统。
基于51单片机RS485总线的远距离温度监控系统程序
/等待初始化结束
delay(*DS18b20读一个字节*******************/uchar ReadOneChar(void)
{
uchar i=0; uchar dat=0; for (i=8;i>0;i--){
Ox3f,OxO6,Ox5b,Ox4f, Ox66,Ox6d,Ox7d,OxO7, Ox7f,Ox6f,Ox77,Ox7c, Ox39,Ox5e,Ox79,Ox71,
OxOO
DQ
//DS18B20接入口
//O~3
//4~7
//8~b //c~f
};uchar tem[7]; uchar T_num=200;/************************void delay(uint n);时函数void init_uart(void);始化void init_T0();定时器T0初始化void Init_DS18B20(void);始化函数uchar ReadOneChar(void);一个字节void WriteOneChar(uchar dat);一个字节int ReadTemperature(void);读取温度
}
delay(8);
}
/*****************DS18b20读取温度********************/int ReadTemperature(void)
{
uchar dat_L=0,dat_H=0;
int temper=0;
float temp1=0;
Init_DS18B20();
#include<reg52.h>
#define uchar unsigned char #define uint unsigned int sbit
基于51单片机的温度测量系统
目录摘要 (I)ABSTRACT (II)1 绪论 (1)1.1选题的背景 (1)1.2课题研究的目的和意义 (1)1.3本文的结构 (1)2 系统总体方案设计 (1)2.1总体方案设计 (2)2.2部分模块方案选择 (3)2.2.1单片机的选择 (3)2.2.2温度检测方式的选择 (3)2.2.3显示部分的选择 (4)2.2.4电源模块的选择 (4)3 硬件电路的设计 (4)3.1 硬件电路设计软件 (4)3.2系统整体原理图 (5)3.3单片机最小系统电路 (6)3.4单片机的选型 (7)3.5温度测量模块 (8)3.5.1 DS18B20概述 (8)3.5.2 DS18B20测温工作原理 (11)3.5.3 DS18B20温度传感器与单片机的接口电路 (12)3.6 显示模块 (13)3.7 按键以及无线遥控模块 (15)3.7.1按键的相关知识 (15)3.7.2 5伏带解码四路无线接收板模块 (16)3.8 报警及指示灯模块 (18)3.9 电源模块 (19)4 系统软件设计及仿真部分 (20)4.1软件设计的工具 (20)4.1.1程序编写软件 (20)4.1.2仿真软件 (21)4.2各模块对应的软件设计 (22)4.2.1显示模块的程序 (22)4.2.2温度测量的程序 (26)4.2.3报警系统程序 (32)4.2.4按键程序 (33)4.2.5总体程序 (35)5 实物制作 (37)5.1电源部分 (37)5.2单片机最小系统部分 (37)5.3 总体实物 (37)6 总结 (38)7 致谢 (39)参考文献 (40)附录一 (41)附录二 (49)基于单片机的温度测量系统摘要随着测温系统的极速的发展,国外的测量系统已经很成熟,产品也比较多。
近几年来,国内也有许多高精度温度测量系统的产品,但是对于用户来说价格较高。
随着市场的竞争越来越激烈,现在企业发展的趋势是如何在降低成本的前提下,有效的提高生产能力。
基于STC89C51单片机的智能温度控制系统设计
基于STC89C51单片机的智能温度控制系统设计一、本文概述随着科技的快速发展和智能化时代的到来,温度控制技术在各个领域中的应用越来越广泛,特别是在工业、农业、医疗、家居等领域,对于温度的精确控制要求日益提高。
传统的温度控制系统往往依赖于复杂的硬件设备和繁琐的操作流程,难以满足现代社会的需求。
因此,开发一种基于STC89C51单片机的智能温度控制系统,旨在通过先进的控制技术实现温度的精确、稳定和高效控制,具有重要的现实意义和应用价值。
本文将对基于STC89C51单片机的智能温度控制系统设计进行全面的探讨。
文章将介绍STC89C51单片机的性能特点及其在温度控制系统中的优势,为后续的设计提供理论基础。
接着,文章将详细阐述系统设计的总体方案,包括硬件设计和软件设计两大部分,以确保系统的稳定性和可靠性。
在硬件设计方面,文章将重点介绍温度传感器、控制器、执行器等关键部件的选型与连接;在软件设计方面,文章将详细介绍温度数据的采集、处理、控制算法的实现以及用户界面的设计。
本文还将对系统的调试与优化过程进行详细的描述,包括硬件调试、软件调试、系统测试等环节,以确保系统在实际应用中能够达到预期的性能指标。
文章将对整个设计过程进行总结,并对未来的研究方向进行展望,以期为推动智能温度控制技术的发展贡献一份力量。
本文旨在设计一种基于STC89C51单片机的智能温度控制系统,通过对其硬件和软件设计的详细介绍,以及系统调试与优化的过程分析,为相关领域的研究人员和实践者提供一种参考和借鉴。
本文也期望能够推动智能温度控制技术在实际应用中的广泛推广和应用,为现代社会的智能化发展贡献一份力量。
二、系统硬件设计系统硬件设计是基于STC89C51单片机的智能温度控制系统的核心部分,主要包括STC89C51单片机、温度传感器、显示模块、控制执行模块以及电源模块等几大部分。
单片机模块:选用STC89C51作为核心控制器,该单片机具有高性能、低功耗、易编程等优点,能够满足系统对温度数据的采集、处理和控制的需求。
基于51单片机的温控系统设计
基于51单片机的温控系统设计1.引言1.1 概述概述部分的内容可以包括以下几个方面:温控系统是一种广泛应用于各个领域的实时温度控制系统。
随着科技的发展和人们对生活质量的要求提高,温控系统在工业、家居、医疗、农业等领域得到了广泛应用。
温度作为一个重要的物理量,对于许多过程和设备的稳定运行至关重要。
因此,设计一种高效可靠的温控系统对于提高工作效率和产品质量具有重要意义。
本文将基于51单片机设计一个温控系统,通过对系统的整体结构和工作原理的介绍,可以深入了解温控系统在实际应用中的工作机制。
以及本文重点研究的51单片机在温控系统中的应用。
首先,本文将介绍温控系统的原理。
温控系统的核心是温度传感器、控制器和执行器三部分组成。
温度传感器用于实时检测环境温度,通过控制器对温度数据进行处理,并通过执行器对环境温度进行调节。
本文将详细介绍这三个组成部分的工作原理及其在温控系统中的作用。
其次,本文将重点介绍51单片机在温控系统中的应用。
51单片机作为一种经典的微控制器,具有体积小、功耗低、性能稳定等优点,广泛应用于各种嵌入式应用中。
本文将分析51单片机的特点,并介绍其在温控系统中的具体应用,包括温度传感器的数据采集、控制器的数据处理以及执行器的控制等方面。
最后,本文将对设计的可行性进行分析,并总结本文的研究结果。
通过对温控系统的设计和实现,将验证51单片机在温控系统中的应用效果,并对未来的研究方向和发展趋势进行展望。
通过本文的研究,可以为温控系统的设计与应用提供一定的参考和指导,同时也为利用51单片机进行嵌入式系统设计的工程师和研究人员提供一定的技术支持。
1.2文章结构文章结构部分的内容可以包含以下内容:文章结构部分旨在介绍整篇文章的组织结构和各个部分的内容。
本篇文章基于51单片机的温控系统设计,总共分为引言、正文和结论三部分。
引言部分主要包括概述、文章结构和目的三个小节。
首先,概述部分介绍了本文的主题,即基于51单片机的温控系统设计。
基于51单片机的数字温度计设计
基于51单片机的数字温度计设计数字温度计是一种广泛使用的电子测量设备,通过传感器将温度转化为数字信号,并显示出来。
本文将介绍基于51单片机的数字温度计的设计。
该设计将使得使用者能够准确、方便地测量温度,并实时显示在液晶显示屏上。
1. 硬件设计:- 传感器选择:在设计数字温度计时,我们可以选择使用NTC(负温度系数)热敏电阻或者DS18B20数字温度传感器作为温度传感器。
这里我们选择DS18B20。
- 信号转换:DS18B20传感器是一种数字传感器,需要通过单总线协议与51单片机进行通信。
因此,我们需要使用DS18B20专用的驱动电路,将模拟信号转换为数字信号。
- 51单片机的选择:根据设计要求选择合适的51单片机,如STC89C52、AT89S52等型号。
单片机应具备足够的IO口来与传感器和液晶显示屏进行通信,并具备足够的计算和存储能力。
- 显示屏选择:为了实时显示温度,我们可以选择使用1602型字符液晶显示屏。
该显示屏能够显示2行16个字符,足够满足我们的需求。
通过与51单片机的IO口连接,我们可以将温度数据显示在屏幕上。
2. 软件设计:- 采集温度数据:通过51单片机与DS18B20传感器进行通信,采集传感器传输的数字温度数据。
通过解析传感器发送的数据,我们可以获得当前的温度数值。
- 数据处理:获得温度数据后,我们需要对其进行处理。
例如,可以进行单位转换,从摄氏度到华氏度或者开尔文度。
同时,根据用户需求,我们还可以对数据进行滤波、校准等处理。
- 显示数据:通过与液晶显示屏的连接,我们可以将温度数据显示在屏幕上。
可以使用51单片机内部的LCD模块库来控制液晶显示屏,显示温度数据以及相应的单位信息。
- 用户交互:可以设置一些按键,通过与51单片机的IO口连接,来实现用户与数字温度计的交互。
例如,可以设置一个按钮来进行温度单位的切换,或者设置一个按钮来启动数据保存等功能。
3. 功能拓展:- 数据存储:除了实时显示当前温度,我们还可以考虑增加数据存储功能。
基于51单片机RS485总线的远距离温度监控系统程序
#include<reg52.h>#define uchar unsigned char#define uint unsigned intsbit DQ = P1^0; //DS18B20接入口sbit segd=P1^1; //段控制74573锁存使能sbit segw=P1^2; //位控制74573锁存使能uchar code tab[]={0x3f,0x06,0x5b,0x4f, //0~30x66,0x6d,0x7d,0x07, //4~70x7f,0x6f,0x77,0x7c, //8~b0x39,0x5e,0x79,0x71, //c~f0x00 //灭};uchar tem[7];uchar T_num=200;/************************函数声明***********************/void delay(uint n); //延时函数void init_uart(void); //串口初始化void init_T0(); //定时器T0初始化void Init_DS18B20(void); //DS18b20初始化函数uchar ReadOneChar(void); //DS18b20读一个字节void WriteOneChar(uchar dat); //DS18b20写一个字节int ReadTemperature(void); //DS18b20读取温度void disp_dat(uchar x,uchar y); //单个数码管显示函数void disp(void); //温度显示函数uchar sum(uchar *dat,uchar n); //求和校验函数uchar get_adress(void); //获取从机地址函数void change(void); //数据调整函数void send_dat(void); //串行数据发送函数/**********************主函数***********************/void main(){init_T0();init_uart(); //初始化串口while(1){change(); //调整数据disp();//进行显示}}/**********************延时函数**********************/void delay(uint n){while(n--) ;}/********************定时器T0初始化******************/void init_T0(){TMOD=0x01; //工作方式1定时50msTL0=0x00;ET0=1;//允许定时器T0中断EA=1; / /开总中断TR0=1;//启动定时器T0}/*********************串口初始化*********************/void init_uart(void){SCON=0x40; //工作方式1TMOD=TMOD|0x20; //T 1为工作方式2TH1=0xFD; //设置T1TL1=0xFD;TR1=1;//启动定时器T1}/*****************DS18b20初始化函数******************/void Init_DS18B20(void){uchar x=0;DQ=1; / /DQ复位delay(10); //延时DQ=0; / /将DQ拉低delay(80); //精确延时约480us/DQ线拉高总线delay(20);while(!DQ); / /等待初始化结束delay(30);}/****************DS18b20读一个字节*******************/uchar ReadOneChar(void){uchar i=0;uchar dat=0;for (i=8;i>0;i--){DQ=0;//给脉冲信号dat>>=1;DQ=1;//给脉冲信号if(DQ)dat|=0x80; //读入值是否为1delay(8);}return(dat);}/***************DS18b20写一个字节********************/void WriteOneChar(uchar dat){uchar i=0;for (i=8;i>0;i--){DQ=0;DQ=dat&0x01;delay(10);DQ=1;dat>>=1;}delay(8);}/*****************DS18b20读取温度********************/int ReadTemperature(void){uchar dat_L=0,dat_H=0;int temper=0;float temp1=0;Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作WriteOneChar(0x44); //启动温度转换Init_DS18B20();WriteOneChar(0xCC); //跳过读序号列号的操作WriteOneChar(0xBE); //读取温度寄存器dat_L=ReadOneChar(); //低位dat_H=ReadOneChar(); //高位temper=dat_H;temper<<=8;temper=temper|dat_L;temp1=temper*0.0625;temper=temp1*10+0.5; //计算温度值return(temper);}/****************获取从机地址函数*******************/uchar get_adress(void){uchar ad;ad=P1;ad>>=4;//获取地址return(ad);}/******************求和校验函数**********************/uchar sum(uchar *dat,uchar n){uchar i;uchar s_dat=0x00;for(i=2;i<n+1;i++) //对十位、个位和小数位上的数据求和{s_dat+=dat[i];}return(s_dat); //返回求和值}/*******************数据调整函数********************/void change(void){int temp;temp=ReadTemperature(); //读温度tem[0]=0x24; //发送起始标志$tem[1]=get_adress(); //获取从机地址tem[2]=temp%1000/100; //存十位上的数据tem[3]=temp%100/10; //存个位上的数据tem[4]=temp%10; //存小数位上的数据tem[5]=sum(tem,3); //存校验和tem[6]=0x23; //发送结束标志#}/***************单个数码管显示函数*******************/void disp_dat(uchar x,uchar y){segw=1;//74HC573开锁存P0=~(0x01<<x); //送位选segw=0;segd=1;if(x==1)P0=tab[y]|0x80; //若是个位送显示小数点elseP0=tab[y]; //送显示数据segd=0;}/******************温度显示函数**********************/void disp(void){disp_dat(0,tem[2]); //显示十位上的数据delay(200);disp_dat(1,tem[3]); //显示个位上的数据delay(200);disp_dat(2,tem[4]); //显示小数点后第一位数据delay(200);disp_dat(3,16); //清零段位74HC573中的数据}/****************串行数据发送函数*******************/void send_dat(void){uchar i;for(i=0;i<7;i++){SBUF=tem[i];while(TI==0); //等待发送结束TI=0;}}/*******************定时T0中断程序*****************/void senddat_T0(void) interrupt 1{TH0=0x4c; //重载定时器初值TL0=0x00;if(--T_num==0){send_dat(); / /发送数据T_num=200; //恢复计数值}}文档已经阅读完毕,请返回上一页!。
基于51单片机的温度控制系统设计与实现
基于51单片机的温度控制系统设计与实现1. 系统设计概述温度控制系统是智能控制领域中的一个重要领域,主要应用于各种工业生产、制冷空调、农业温室等领域。
本文主要介绍基于51单片机的温度控制系统。
2. 系统硬件设计系统硬件设计主要分为两部分:传感器采集部分和控制执行部分。
其中传感器采集部分主要采用DS18B20数字温度传感器,控制执行部分则主要采用继电器进行控制。
3. 系统软件设计系统软件设计主要采用C语言进行编程实现。
具体包括温度采集、PID算法控制以及控制执行等功能。
4. 温度采集部分设计温度采集部分采用DS18B20数字温度传感器进行温度采集。
该传感器具有传输速度快、采集精度高等特点。
系统采用单总线模式进行控制,通过读取传感器中的温度数据并进行运算,得到当前温度值。
5. 基于PID算法的控制设计本系统采用PID算法进行控制,具体包括比例控制、积分控制和微分控制。
其中比例控制主要控制温度的偏差,积分控制主要控制温度的稳定性,微分控制主要控制温度的变化率。
6. 控制执行部分设计控制执行部分主要采用继电器进行控制。
当温度值达到设定值时,单片机通过控制继电器的开关状态来控制制冷或制热设备的开关。
7. 系统测试与优化在设计完整的软硬件系统后,需进行系统测试以得到有效的控制效果。
在测试过程中,发现系统存在延迟现象,需要对算法进行优化,以提高系统响应速度和稳定性。
8. 总结基于51单片机的温度控制系统具备采集精度高、响应速度快、控制稳定等特点,能够广泛应用于各种不同的领域。
但是在实践中,还需针对不同领域实际情况进行优化和调整,以提高系统效率和稳定性。
基于51单片机的温度控制系统设计与实现
基于51单片机的温度控制系统设计与实现一、本文概述本文旨在探讨基于51单片机的温度控制系统的设计与实现。
随着科技的快速发展,温度控制在各个领域都扮演着至关重要的角色,如工业生产、家庭生活、医疗设施等。
传统的温度控制系统大多依赖于复杂的硬件设备和昂贵的软件平台,而基于51单片机的温度控制系统则以其低成本、高性能和易于实现等优点,逐渐受到广大工程师和研究者的青睐。
本文将首先介绍51单片机的基本原理和特点,为后续的设计和实现奠定理论基础。
接着,我们将详细阐述温度控制系统的总体设计方案,包括硬件选择和软件设计思路。
在此基础上,我们将重点讨论如何实现温度采集、处理和控制的功能,包括传感器的选择、信号调理、A/D 转换、控制算法的实现等。
本文还将探讨温度控制系统的稳定性、可靠性和实时性等问题,并提出相应的优化措施。
通过实际应用的案例,我们将展示基于51单片机的温度控制系统在实际工作中的表现,并评估其性能。
本文将对基于51单片机的温度控制系统的设计和实现进行总结,并提出未来改进和发展的方向。
我们希望通过本文的探讨,能够为相关领域的研究者和工程师提供一些有益的参考和启示。
二、51单片机基础知识51单片机,又称8051微控制器,是由Intel公司在1980年代初推出的一款8位单片机。
由于其结构简单、功能完善、可靠性高且价格适中,51单片机在嵌入式系统领域一直占据重要地位。
尽管现在市面上已经出现了许多性能更强、功能更丰富的单片机,但51单片机由于其广泛的应用基础和良好的教学价值,仍然是许多初学者和工程师的首选。
51单片机的核心结构包括中央处理器(CPU)、4KB的ROM(只读存储器)、128B的RAM(随机存取存储器)、两个16位的定时器/计数器、四个8位的并行I/O口、一个全双工串行通信口以及一个中断控制系统。
它还具有一个5向量的两级中断结构,能够实现简单的中断处理。
51单片机采用冯·诺依曼结构,即指令和数据都存储在同一个存储器中,通过指令操作码的不同来实现不同的功能。
基于51单片机数字温度计的设计与实现
基于51单片机数字温度计的设计与实现数字温度计是一种能够测量环境温度并显示数值的设备。
基于51单片机的数字温度计设计与实现是指利用51单片机作为核心,结合温度传感器和其他辅助电路,实现一个能够测量温度并通过数码管显示温度数值的系统。
本文将从硬件设计和软件实现两个方面介绍基于51单片机数字温度计的具体设计与实现过程。
一、硬件设计1. 温度传感器选取在设计数字温度计时,首先需要选取合适的温度传感器。
市面上常用的温度传感器有热敏电阻、功率型温度传感器(如PT100)、数字温度传感器(如DS18B20)等。
根据设计需求和成本考虑,我们选择使用DS18B20数字温度传感器。
2. 电路设计基于51单片机的数字温度计的电路设计主要包括单片机与温度传感器的连接、数码管显示电路和电源电路。
(1)单片机与温度传感器的连接在电路中将51单片机与DS18B20数字温度传感器相连接,可采用一线总线的方式。
通过引脚的连接,实现单片机对温度传感器的读取控制。
(2)数码管显示电路为了能够显示温度数值,我们需要设计一个数码管显示电路。
根据温度传感器测得的温度值,通过数字转换和数码管驱动,将温度数值显示在数码管上。
(3)电源电路电源电路采用稳压电源设计,保证整个系统的稳定供电。
根据实际需求选择合适的电源电压,并添加滤波电容和稳压芯片,以稳定电源输出。
3. PCB设计根据电路设计的原理图,进行PCB设计。
根据电路元件的布局和连线的走向,绘制PCB板的线路、元件和连接之间。
二、软件实现1. 单片机的编程语言选择对于基于51单片机的数字温度计的软件实现,我们可以选择汇编语言或者C语言进行编程。
汇编语言的效率高,但编写难度大;C语言的可读性好,开发效率高。
根据实际情况,我们选择使用C语言进行编程。
2. 温度传感器数据获取利用单片机的IO口与温度传感器相连,通过一线总线协议进行数据的读取。
根据温度传感器的通信规则,编写相应的代码实现数据的读取。
本科毕业论文---基于51单片机的温度控制系统设计论文
基于51单片机的温度控制系统摘要:温度控制系统在工业,农业上应用广泛,在当代社会,对于温度控制方面要求越来越高,越来越精细。
因此我们在本次学校实习中选择完成一个基本的温度测量并控制温度在一定范围内的课题,因此来锻炼自己的能力。
本次设计采用单片机对温度进行测量和控制,并控制其温度稳定在某一个设定值上。
通过数码管显示温度,并具有报警系统,可以通过键盘输入来控制基准温度与上下限温度。
基本达到自动控制的目的。
基于STC89C52单片机的温控系统主要实现了温度采集、A/D转换、温度控制及报警等功能。
首先,介绍了我们选择的课题要求,同时重点介绍了我们选择的芯片资料,如STC89C52,ADC0809。
其次,阐述了系统的工作原理,完成了系统结构图的设计,把系统划分为5大模块并完成了各大模块的设计工作,同时附以系统硬件电路原理图。
最后,设计了系统的软件。
系统软件是用C语言进行软件设计的,C语言具有指令简单,数据量小等特点。
关键词:温度控制;STC89C52;C语言Abstract:The temperature control system in industry, agriculture on a wide range of applications, in the contemporary society, the temperature control requirements more and more high, more and more fine. Therefore, we in the school practice choose to complete a basic temperature measurement and project control temperature in a certain range, thus to exercise their abilities.This design uses the monolithic integrated circuit for measuring and controlling temperature, and to control its temperature stability in a certain set of values. Through digital tube display temperature, and has alarm system, through the keyboard input to control the reference temperature and minimum temperature. Basically achieve the purpose of automatic control.The temperature control system of STC89C52 single chip microcomputer is mainly realized the temperature acquisition, A/D conversion, temperature control and alarm functions based on.Secondly, it describes the principle of the system, designed the system structure diagram, the system is divided into 5 major parts and finished the designing of each module, and attached to the system hardware circuit diagram.Finally, the design of the system software. The system software is written in C language for software design, C language has the characteristics of simple instruction, small amount of data.Key Words:temperature control;STC89C52 ;C language目录1课题要求 (5)2总体设计方案 (6)2.1系统总体设计 (6)2.2单片机选择 (6)2.3显示电路选择 (7)2.4键盘电路选择 (8)2.5 AD电路选择 (8)2.6温度采集电路选择 (9)2.7控制电路选择 (11)3 系统硬件设计 (12)3.1系统硬件功能分析 (12)3.2单片机最小系统设计 (12)3.4温度检测电路设计 (14)3.4 AD转换模块设计 (15)3.5温度控制系统设计 (17)3.6报警模块设计 (18)3.7键盘输入模块设计 (19)4 系统软件设计 (20)4.1主程序分析 (20)4.2显示模块分析 (20)4.3 AD转换模块分析 (20)4.4 键盘输入模块设计 (21)4.5报警控制模块设计 (22)5 实习结果 (23)6 总结与鸣谢 (24)参考文献 (24)附录1 (25)附录2 (25)1课题要求本课题是设计一个基于单片机的温度控制系统,用来测量温度并将温度控制在一定范围内。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录目录 0课题任务说明: (1)一、任务分析与方案确定 (2)1.1复位电路 (2)(1)上电复位电路 (2)(2)外部复位电路 (2)(3)上电外部复位电路 (3)1.2振荡电路 (3)(1)内部时钟方式 (3)(2)外部时钟方式 (3)1.3 A/D转换器的选取 (3)1.4 多位数码管显示电路分析 (4)1.5 键盘电路分析 (4)1.6 上位机电路分析 (4)二、系统硬件设计 (5)2.1 ADC0809转换电路 (5)(1)ADC0809内部功能 (5)(2)ADC0809引脚介绍 (5)(3)与AT89C51单片机的连接电路 (6)2.2 复位电路 (6)2.3 振荡电路 (6)2.4 键盘电路 (7)2.4 显示电路 (7)2.6 串行通信电路 (7)三、软件程序设计 (8)3.1 数据采集 (8)3.2 A/D数据转换 (8)3.3 LED数据显示程序设计 (9)3.4 键盘电路程序设计 (9)3.5 串行控制程序设计 (10)四、调试小结 (11)附录A:电路原理图 (12)附录B:源代码(或关键代码) (13)参考文献 (15)课题任务说明:随着电子技术以及应用需求的发展,单片机技术得到了迅速的发展,在高集成度、高速度、低功耗以及高性能方面取得了很大的进展,电子技术有了更好的飞跃,我们现在完全可以运用单片机和温度传感器进行温度测量和控制。
温度是日常生活、冶金、化工、医学、建筑、机械等领域最常遇到的一个物理量。
随着经济的发展和科学技术的进步,对于温度的测量和控制有了更高要求。
采用单片机温度测量系统,能大大的提高温度测量的精度,降低产品的成本,简化操作,节省劳动力,提高生产效率。
在现实生活和工农业生产及科学研究中,温度的测量非常的重要。
在工业生产过程中需要实时测量温度,在农业生产中也离不开温度的测量,因此研究温度的测量方法和装置具有重要的意义。
本课题需要通过研究A/D转换器、串口通信的工作原理,采用软件编程与硬件电路结合技术,利用MCS-51芯片及相关芯片构成模拟温度监控系统。
设计要求如下所示:(1)由可变电阻产生0~5V的连续变化的模拟信号来代表0~100摄氏度的温度。
(2)通过使用A/D转换芯片完成模拟量到数字量的转变。
(3)使用多位数码管来显示检测温度结果,并精确到小数点后两位。
(4)添加独立按键,点击后下位机(单片机)通过串口通信向上位机(虚拟主机)发送当前温度值。
(5)上位机下发数据“0x31”开启温度值上传功能,发送数据“0x30”禁止温度值上传功能,并用一个发光二极管指示状态(点亮:代表允许上传;熄灭:代表禁止上传)。
开机时,系统默认为温度值禁止上传。
(6)当温度值发生改变时,下位机自动发送当前温度值给上位机进行处理(允许温度值上传的情况下)。
一、任务分析与方案确定根据本课题的基本任务要求,本课题是基于AT89C51单片机设计的温度监控系统,该系统主要分为五个部分:信号处理电路、A/D 转换电路、显示电路(LED 指示灯、LED 数码显示器)、键盘电路(独立按键)、上位机与下位机的串口通信电路,其系统原理框图如下图所示:图1.1系统原理框图1.1复位电路复位电路对单片机系统是非常重要的。
一个好的复位电路必须满足两点。
其一是上电时有足够的有效复位电平时间,以便CPU在晶振起振时达到稳态后可靠复位;其二是系统断电后,复位端能够快速放电,以便系统在连续快速开关时能够可靠复位。
下面介绍几种比较常见的复位电路。
(1)上电复位电路上电瞬间,RST端的的电位与Vcc相同,随着电容的逐步充电,充电电流减小,RST 电位逐渐下降。
电路图下图1.2所示。
图1.2上电复位电路(2)外部复位电路按下开关时,电源通过电阻对外接电容进行充电,使RES端为高电平,复位按钮松开后,电容通过下拉电阻放电,逐渐使RET端恢复低电平。
电路图如下图1.3所示。
图1.3 外部复位电路(3)上电外部复位电路上电外部复位电路既具有上电复位又具有外部复位电路,上电瞬间,C 与Rx 构成充电电路,RST 引脚出现正脉冲,只要RST 保持足够的高电平,就能使单片机复位。
电路图如下图1.4所示。
图1.4 上电外部复位电路1.2 振荡电路在MCS-51单片机内部有一个高增益反相放大器,这个反相放大器的作用就是用于构成振荡器用的,引脚XTAL1(19)、XTAL2(18)分别是此放大器的输入端和输出端,但要形成时钟,外部还需要加一些附加电路。
产生时钟的方式有以下两种:(1)内部时钟方式利用单片机内部的振荡器,然后在引脚XTAL1(18 脚)和XTAL2(19 脚)两端接晶振,就构成了稳定的自激振荡器。
(2)外部时钟方式外部振荡器信号的接法与芯片类型有关。
CMOS 工艺的MCU 其XTAL1端接外部时钟信号,XTAL2端可悬空。
HMOS 工艺的MCU 则XTAL2端接外部时钟信号,XTAL1接地。
1.3 A/D 转换器的选取ADC0809是TI 公司生产的8位逐次逼近式模数转换器,包括一个8位的逼近型的ADC 部分,并提供一个8通道的模拟多路开关和联合寻址逻辑,为模拟通道的设计提供了很大的方便。
用它可直接将8个单端模拟信号输入,分时进行A/D 转换,在多点巡回监测、过程控制等领域中使用非常广泛,所以本设计中选用该芯片作为A/D 转换电路的核心。
对于该8个通道的输入信号,8位A/D 转换器,其精度为:820.39%-=。
当输入为0~5V 时,其分辨率为:8/(21)5/(21)0.0196N ref V V -=-=,ref V 为A/D 转换器的满量程值,N 为ADC 的二进制位数。
量化误差为:8/[(21)2]5/[(21)2]0.0098N ref Q V V =-⨯=-⨯=。
1.4 多位数码管显示电路分析在该单片机系统中,多位数码管通过段选线控制显示的字符,位选线控制显示位的亮或暗。
其工作方式主要有两种:静态显示方式和动态显示方式。
静态显示,显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不用再管,直到下一次显示数据需要更新时再传送一次数据。
显示亮度高,数据稳定,占用很少的CPU 时间。
但引线多,线路复杂。
动态显示,利用人眼视觉暂留的特点,循环顺序变更位码,同时数据线上发送相应的显示内容。
显示数据会有闪烁感,占用的CPU 时间多,但能节省I/O 口的使用。
1.5 键盘电路分析为了能够主动向上位机发送温度值,需要为该系统设置键盘。
由于本次设计要求功能简单,仅用一个独立按键即可完成发送功能,降低了系统的硬件开销,软件处理简单。
1.6 上位机电路分析为了便于此次的课题设计,本文采用虚拟终端(virtual terminal )作为上位机来模拟与单片机进行数据通信。
如下图所示AT89C51单片机的P3.0(RXD )、P3.1(TXD )构成了8051单片机的全双工串口引脚,从而实现与上位机的数据通信。
图1.5 串口通信二、系统硬件设计2.1 ADC0809转换电路(1)ADC0809内部功能ADC0809是8位逐次逼近式A/D转换器是一种单片CMOS器件,包括采样保持电路、模/数转换电路,控制电路和数字接口电路。
ADC0809没有内部时钟,必须由外部提供,其范围为10~1280kHz。
典型时钟频率为640kHz。
其结构简图如下图所示。
图2.1ADC0809结构简图图2.2 ADC0809的引脚图(2)ADC0809引脚介绍ADC0809的引脚排列如上图2.2所示,各引脚的功能如下表:引脚功能IN0~IN7 8个模拟通道输入端。
可输入0~5V待转换的模拟电压。
D0~D7 8位转换结果输出端。
三态输出,D7是最高位,D0是最低位。
ADDC、ADDB、ADDA 通道地址线(000~111对应了8个通道)。
ALE 地址锁存允许信号。
START 启动转换信号。
EOC 转换结束信号。
OE 输出允许信号(允许读)。
CLK 外部时钟脉冲输入端,典型值640KHz。
VREF(+)、VREF(-) 参考电压输入端。
VCC +5V电源。
GND 地。
当ALE为高电平时,通道地址输入到地址锁存器中,下降沿将地址锁存,并译码。
在START上升沿时,所有的内部寄存器清零,在下降沿时,开始进行A/D转换,此期间START应保持低电平。
在START下降沿后10us左右,转换结束信号变为低电平,EOC为低电平时,表示正在转换,为高电平时,表示转换结束。
OE为低电平时,D0~D7为高阻状态,OE为高电平时,允许转换结果输出。
(3)与AT89C51单片机的连接电路ADC0809与AT89C51的连接电路图如下图所示:图2.3 AD转换电路图2.2 复位电路单片机的复位是靠外部电路实现的。
无论是HMOS还是CHMOS型,在振荡器正运行的情况下,RST引脚保持二个机器周期以上时间的高电平,系统复位。
本课题采用上电外部复位电路,如图1.4上电外部复位电路图所示,相关参数为典型值。
2.3 振荡电路本课题的振荡电路采用内部方式时钟电路,如下图2.4所示。
外接晶体以及电容1c、2c构成并联谐振电路,接在放大器的反馈回路中,内部振荡器产生自激振荡。
图2.4 晶振电路图2.4 键盘电路键盘电路通常由一组常开按键开关组成。
键盘系统的主要工作包括及时发现有键闭合,并作相应的处理。
由于本课题中按键功能单一,所以采用独立按键电路设计,完成温度值的上传工作。
硬件逻辑如下图2.5所示:图2.5 独立按键电路图2.4 显示电路由于本课题需要显示0~5V的电压值,显示装置中要有多个LED 数码管才能完全显示,所以选择4位数码管,采用动态扫描驱动电路,以节省I/O口占用。
如下图2.6所示:图2.6 数码管显示电路图2.6 串行通信电路为了便于此次的课题设计,本文采用虚拟终端(virtual terminal)模拟上位机来与单片机进行数据通信。
如下图2.7所示为AT89C51单片机和虚拟终端电路连接图。
图2.7 串行通信电路图三、软件程序设计3.1 数据采集A/D转换中断方式使用EOC信号作为向8051的中断申请。
在主程序中,向ADC发出首次启动转换信号后,并计数管理转换通道数。
当检测到EOC的请求后,转去执行中断服务程序,读取转换结果,并启动下一次转换,后继续执行。
其数据采集流程图如下图3.1所示,数据采集中断流程图如下图3.2所示:图3.1 数据采集流程图图3.2 数据采集中断流程图3.2 A/D数据转换在该单片机系统中,被测电压值经过A/D转换,均统一为0~255二进制码,因此要把A/D转换的数码变换成被测量的实际温度值。
其标量转换流程图如下图所示:图3.2 A/D流程图3.3 LED数据显示程序设计LED数码管显示电路主要是通过查询方式来实时显示由ADC0809转换过的数值,其显示程序的工作流程图如下所示:图3.3 LED数码管显示流程图3.4 键盘电路程序设计键盘部分软件主要功能是实现串口通信,在数据通信允许的情况下,每按下一次按键,就会将转换后的温度值通过串口发送给上位机进行处理。