基于AT89S52单片机的数字温度计设计

合集下载

基于AT89S52单片机的数字温度控制系统软件设计

基于AT89S52单片机的数字温度控制系统软件设计
20 2 . 0 7, 0
f 张 萍 等 .基 于 数 字 温 度 计 4 ]
D 1B 0的 温 度 测 量 仪 的 开 发 f. S8 2 J 1
自动化仪 表 20 ,. 0 76 『I 5 何希才.传感器及其应用 『 ] Ⅵ 北 l.
京:国防工业 出版 社.2 0 . 00
f 6 1何立民等. 片机应 用系统设计 单
[】 德 .单 片机原 理 与应 用技 术 【] 京 : 7张友 M. 北 机械
工业 出版社 . 0 4 2 0.
调显示程序
iHale Waihona Puke 调 B D码转化程序 C
【] 鑫.单 片机 原理 及 应 用【 . 京 : 工 业 出 8张 M] 北 电子
版 社 .0 8 20 .
度控制 器设计 【.微计算机 信息, J ]
Ab ta t sr c:Aln t h e h ia rges h e eaue i cmmo aa tri h id s a po u t n u sn h mo oi i ne ae o g wi te tc nc lpo rs,te tmp rtr s a o h n p rmee n te n ut l rd ci ,b tu ig te i r o n lhc itg td t r crutt c ue h p rmee i e o n t is em.Ths rce h s d sg e h dgtltmp rtr uvn a d o t ln ytm b sd n te i i o a c s te aa tr s cmig he mant a c b r i at l a ein d te ii e eaue s rig n cnr l g sse i a o i ae o h mo oi i nertd crut h sse i o oe o he d ls e eaue g te n d l,tmp rtr o tol g moue a w l stmp rtr n lhc itgae ic i t .T e y tm s c mp sd ftre mo ue:tmp rtr ah r g mo ue e eaue c nrln d l s el e eaue i i a

开题报告基于单片机的电子体温计的设计

开题报告基于单片机的电子体温计的设计

本科毕业设计(论文)开题报告题目:基于单片机的电子温度计的设计课题类型:设计□实验研究□论文□√学生姓名:学号:专业班级:学院:指导教师:开题时间:一、毕业设计(论文)内容及研究意义(价值)设计内容:本课题的要求:以单片机为处理核心设计电子体温计。

显示精度为0.1°C。

当温度处在35°C——40°C之间时,还可在显示的温度值后面加低体温、正常、低热、超高热等友情提示。

该体温计的温度测量范围为-55°C——125°C,所以,还可用于其他温度的测量。

根据系统的要求,我采用的是AT89S52单片机与数字温度传感器DS18B20相连,对其采集到的温度电信号进行处理, 再经过滤波和放大, 把温度的标准电信号提取出来进行A/D 转换, 最终在液晶显示器( LCD)上显示出来。

研究意义:温度测量在物理实验、医疗卫生、食品生产等领域,尤其在热学实验中,有特别重要的意义。

传统所使用的温度计通常都是精度为1°C和0.1°C 的水银、煤油或酒精温度计。

这些温度计的刻度间隔通常都紧密,不容易准确分辨,读数困难,而且他们的热容量还比较大,达到热平衡所需的时间较长,因此很难读准,并且使用非常不方便。

电子体温计与传统的温度计相比,具有读数方便,测温范围广,测温速度快、测温准确、携带方便等优点,其输出温度采用数字显示,主要用于对温度比较准确的场所,或科研实验室使用。

电子体温计和传统的水银体温计相比更安全可靠,我们都知道水银有剧毒,如果破损可能带来玻璃扎伤或水银污染的隐患。

二、毕业设计(论文)研究现状和发展趋势(文献综述)温度计的发展很快,从原始的玻璃管温度计发展到了现在的热电阻温度计、热电偶温度计、半导体集成数字温度计等。

在电子式温度计中,传感器是它的重要组成部分,温度计的精度、灵敏度基本决定了温度计的精度、测量范围、控制范围和用途等。

温度传感器应用极其广泛,目前已经研制出多种新型温度传感器,从而构成性能优良的温度监控系统。

基于AT89S52单片机的数字式温度计的设计

基于AT89S52单片机的数字式温度计的设计

交流与探讨2020年5月(上)/ 总第260期113引 言近年来,数字式的温度计正越来越流行,像DS18B20这种功能高度集成的温度传感器芯片有很多应用场景,它可以结合单片机构成一个系统,这种系统有着低成本、易使用、转换速度快、测量精度高、电路简单、稳定性高等优点。

1 硬件电路的设计1.1控制模块的设计设计温度测量系统的控制模块是由单片机的最小系统来负责,可以这样来理解单片机的最小系统:在可以使单片机正常工作的情况下,使用最少的元件所构成的系统[1]。

一般来说,由四个部分来构成:单片机(AT89S52)、复位电路、时钟电路、输入和输出设备。

最小系统的结构图如图1所示。

图1单片机最小系统框图1.2测温模块的设计测温模块主要由DS18B20温度传感器和一个4.7KΩ的上拉电阻组成,DS18B20温度传感器芯片的存储器由两部分组成,一部分是可电擦除的RAM,另一部分是高速暂存器,其中,高速暂存器又包括9个字节的单元,它的结构图如图2所示。

图2高速暂存器RAM 单元在这9个字节中,对于用户而言,只有前两个字节经常会用到,单片机向DS18B20发送转换温度命令后,DS18B20将温度转换成数字值以补码的形式存放在这两个字节中,单片机可以通过命令读到这个温度值[2]。

之后的两个字节用户一般情况下用不到,只在初次使用时通过软件来写入的由用户决定的温度的上限和下限值TH 以及TL,在以后的使用中,如果测得温度超过这两个温度值,就会报警。

第5个字节是配置存储器,用来改变DS18B20测得温度的精确度,一般叫做温度的分辨率[3]。

之后的三个字节并没有被使用,被设置为全“1”。

最后一个字节是循环冗余校验码,用来检验前面8个字节是否正确,从而保证能够与单片机正确地通信。

高速暂存器中的第5字节即配置寄存器的每一位的内容如图3所示。

图3配置寄存器在这8位的存储器里面,第1位由厂家在芯片出厂的时候写入“0”,无法修改。

最后5位写入“1”即可。

基于AT89S52单片机多彩温度计的设计

基于AT89S52单片机多彩温度计的设计

基于AT89S52单片机多彩温度计的设计【摘要】根据色彩合成的三基色原理,任何颜色的光都可以通过改变红、绿、蓝三基色按照不同的比例而合成,由此原理,采用AT89S52单片机作为控制核心,DS18B20作为温度采集芯片,12864LCD作为温度显示模块,实现LED 背景灯的亮度、色彩和发光范围的随温度变化而连续变化的功能。

【关键词】控制;设计;调节1.功能要求设计一个多彩温度计,可应用于酒店、商场、车站等公共场所,也可以应用在家庭、办公室等小型场所,作为装饰使用。

该设计可以显示当前环境温度,同时也能够显示当前日期时间。

温度和时间信息显示使用的是12864LCD,多彩温度计的背景光源使用的是全彩LED。

背景光源的亮度、色彩可以随着环境温度的变化而逐渐变化,在温度从-20℃→40℃变化过程中,背景光源的色彩从蓝色渐变为红色。

2.方案的设计2.1 LED的亮度控制设计LED使用的是三合一的全彩芯片,它有4个引脚,其中公共端引脚连接电源,其余3个引脚分别对应于三基色的红、绿、蓝,这3个引脚与单片机的3个引脚相连,当单片机引脚置于低电平时,对应的LED会发光。

而LED的亮度调节是通过占空比来实现的,占空比就是单片机引脚输出的脉冲中,高电平保持的时间与该脉冲周期的时间之比。

由于该设计单片机引脚是低电平时LED点亮,即占空比为0时(没有高电平信号),LED有亮度有最大值;而当单片机引脚是高电平时,即占空比为1时,LED亮度有最小值(熄灭);当占空比为50%时,即脉冲高、低电平所占时间相同,此时的亮度应该介于最大亮度和最小亮度两者之间。

该设计我们选用了4档亮度,占空比在程序中赋予5个值,有4个档位:0%、25%、50%、75%、100%(熄灭),以此按不同命令实现LED亮度的调节。

2.2 LED的色彩控制设计根据色彩合成的三基色原理,任何颜色的光都可以通过改变红、绿、蓝三基色按照不同的比例而合成,当用红光、蓝光、绿光三色光进行混合时,可分别得到黄光、青光和品红;将这三色光等比例混合时,可得到白光;而将此三色光不同比例混合时,可以获得不同颜色的光。

2017毕业论文-基于at89s52单片机的智能温度检测系统的设计

2017毕业论文-基于at89s52单片机的智能温度检测系统的设计

2017毕业论文-基于at89s52单片机的智能温度检测系统的设计2017毕业论文-基于at89s52单片机的智能温度检测系统的设计I 智能温度检测系统的设计摘要温度测量是现代检测技术的重要组成部分,在保证产品质量、节约能源和安全生产等方面起着关键的作用。

因此,能够确保快速、准确地测量温度的技术及装置普遍受到各国的重视。

近年来,利用数字式温度传感器以实现温度信息的检测已成为温度检测技术的一种发展趋势。

随着科学技术的发展,人们对温度检测的准确度和灵敏度要求越来越高,并且对温度测量系统的智能化有一定的要求,譬如在温度达到允许的最高限时实现报警。

研制更灵敏、更可靠、更精确的温度检测系统越来越有必要。

本课题即以上述任务为出发点,拟设计一种智能温度检测系统。

本系统大致可分为中央处理单元、温度数据采集模块、时钟模块、人机接口模块、串行通讯模块和报警模块六部分。

该系统基于DS18B20 数字温度传感器,以AT89S52 单片机为核心,用数码管驱动及键盘控制芯片CH452 驱动数码管。

通过时钟芯片DS1302,该系统具有时钟功能。

软件开发采用C51 进行编程。

该系统不仅能实时采集所测环境的温度值,将其实时显示在数码管上,并且在温度达到所设定的最高限时进行报警。

上位机通过串行通讯与该系统相连,具有实时分析和存储数据的功能。

关键词:AT89S52,DS18B02,CH452,温度检测II Intelligent Design Temperature Detection System ABSTRACT Temperature measurement of modern detection technology is an important part in ensuring product quality, energy conservation and production safety, and so plays a key role. Therefore, to ensure fast, accurate temperature measurement devices and technologies widely national attention. In recent years, the use of digital temperature sensors to achieve the temperature information testing temperature detection technology has become a trend. With the development of science and technology, people on the temperature detection accuracy and sensitivity increasingly demanding high and the temperature measurement systems have a certain intelligence requirements,such as the temperature reached the maximum when the realization of the police. The development of more sensitive and more reliable, more accurate temperature detection system increasingly necessary. That is subject to the above tasks as the starting point, to design a smart temperature detection system. The system can be broadly classified into central processing units, temperature data acquisition module, the clock modules, human-computer interface module, serial communications module and alarm module six parts. The system is based on DS18B20 digital temperature sensor to AT89S52 microcontroller as the core, the digital drive and keyboard control of the digital chip CH452 drive. DS1302 chip clock through the system has clock. C51 use software development program. The system can not only collect real-time temperature measured by the value of the environment, in fact, shows that in the digital pipe, and set the temperature reaches the maximum and minimum when the realization of police. PC via the serial communication with the system linked with real-time analysis and data storage functions. KEY WORDS: AT89S52,DS18B02,CH452,Temperature Detection III 目录摘要.I ABSTRACT.II 1 绪论.1 1.1 本课题研究的目的及意义.1 1.2 温度测量的现状和发展历程.1 1.3 主要研究工作内容.3 2 系统总体方案及硬件电路设计.4 2.1 系统总体构成.4 2.1.1 各模块介绍.4 2.1.2 系统硬件设计总图.6 2.2 AT89S52 单片机的介绍.6 2.2.1 基本组成.6 2.2.2 引脚功能描述.8 2.3 数码管驱动及键盘控制芯片.11 2.3.1 CH452 芯片概述.11 2.3.2 CH452 的特点.12 2.3.3 封装及引脚12 2.3.4 CH452 功能说明.14 2.3.5 操作命令.16 2.3.6 CH452 驱动数码管及键盘硬件接口.20 2.4 数字温度传感器.21 2.4.1 DS18B20 的性能特点21 2.4.2 DS18B20 的内部结构21 2.4.3 DS18B20 与AT89S52 硬件接口设计.22 2.5 时钟芯片.23 2.5.1 DS1302 概述.23 2.5.2 DS1302 芯片特性.23 2.5.3 DS1302 的引脚和工作原理.23 2.5.4 DS1302 与单片机连接.25 2.6 串行通讯25 2.6.1 串行通讯基础25 2.6.2 MAX232 与单片机的硬件接口.26 3 系统软件设计.28 3.1 系统软件的整体设计.28 3.2 模块化程序的设计.30 3.2.1 温度数据采集模块.30 3.2.2 时钟模块.32 3.2.3 数据参数显示模块.33 4 系统测试.35 4.1 初始界面测试.35 4.2 温度数据采集模块的测试.36 4.3 时钟模块的测试.36 IV 4.4 报警模块测试.37 5 总结38 致谢.39 参考文献.40 附录.41 智能温度检测系统的设计1 1 绪论 1.1 本课题研究的目的及意义温度的测量是科研与生产中最常见的一类测量技术。

基于AT89S52单片机的温度控制器设计

基于AT89S52单片机的温度控制器设计
基于 A 8 S 2 片机 的温 度控制器设计 T 95 单
史 新 鹏
( 军 大连 舰艇 学 院装 备 自动 化 系 , 宁 大连 1 6 1 海 辽 1 0 8)
摘要 : 文章 实现 了一种 基 于 A 8 S2 片机 的 室 内温度控 制 器 ,采 用数 字传 感器 D 1B 0构成测 温单元 ,完 T 95 单 S8 2 成 对 温度 的采 集、转换 和 传输 任务 ,并 用 两个四位 数码 管 实时显 示 当前 室 内的 温度值 ,并 与事 先设 定的 温度 值 进 行 比较 ,最后将 比较 结果 通过 单 片机 以开 关量 的输 出方式控 制 固 态继电 器的通 断 ,L— I 度采
r—
L — 温 制 f 度控
r—
高 电平 ,保证 数据传 输 方 向是 由A 口向B 口传 输 。数
码 管共 阳极 引脚通过 8 5 三 极 管与单 片机 的P 口相 50 2
图 1 系统 总 体 结 构 图
2 o 中圈; 4 新拔扣 2 20 咄 0{ 4
气 不理 想 的话 ,居 室 内温度 会很 低 ,这 将在 很大 程
度 上 影响 到住户 的正 常生活 与 身体健 康 。这时 ,住 户往 往会使 用 一些诸 如 电暖器 等用 电设备 来 为家庭 取暖 。然 而 , 目前市 场 上的 电暖器 往往 只能完 成加 热这 个 简单 的功 能,特 别是 电暖器 如果 在使 用者 夜 间休 息时使用 的话 ,很 可 能一整 夜都在 加热 工作 , 这样 不仅不 安全 ,而 且还造 成 了 电能 的浪 费 。如 果
系统输 入端 包含 电源模 块和 温度 采集模 块 ,系统 输 出端包含温 度显示模 块和温 度控制模块 。

课程设计基于AT89S52的数字温度计(DS18B20)设计实验

课程设计基于AT89S52的数字温度计(DS18B20)设计实验

信息学院《电子系统设计》——设计报告专业:通信工程班级:092设计题目:数字温度计设计学生:庆余、子杰、王洪亮指导教师:铮完成日期:目录一、设计任务和性能指标 (4)1.1设计任务 (4)1.2性能指标 (4)二、设计方案 (4)三、系统硬件设计 (3)3.1主控制器AT89C52.. (3)3.2温度采集装置DS18B20 (4)3.3显示电路的设计 (7)3.4温度调节设置按键电路 (8)3.5复位电路 (8)3.6时钟电路 (8)3.7报警电路 (9)四、系统软件设计 (9)4.1主程序设计 (9)4.2温度检测装置设计 (10)4.3中断设定子程序设计 (12)4.4报警模块设计 (14)五、调试及性能分析 (14)5.1调试步骤 (14)5.2性能分析 (15)六、心得体会 (15)参考文献 (16)附录1 系统硬件电路图 (16)附录2 程序清单.................................... 错误!未定义书签。

一、设计任务和性能指标1.1设计任务设计以智能集成温度传感器DS18B20,89S52单片机为控制器构成数字温度测量装置,它与传统的温度计相比,具有读数方便,测温围广,测温准确,输出温度采用数字显示。

要求用Protel 画出系统的电路原理图(要求以最少组件,实现系统设计所要求的功能),印刷电路板(要求布局合理,线路清晰),绘出程序流程图,并给出程序清单(要求思路清晰,尽量简洁,主程序和子程序分开,使程序有较强的可读性)。

1.2性能指标(1)实时显示环境温度值(2)通过按键可以设定报警温度的上下限值(3)当环境温度大于报警温度上限值,通过红灯闪烁和蜂鸣器报警;当环境温度小于报警温度下限值,通过绿灯闪烁和蜂鸣器报警。

二.设计方案按照系统设计的功能的要求,初步确定设计系统主要由温度测量和数据采集两部分电路组成,电路系统构成框图如图 1.1所示。

方案采用数字温度芯片DS18B20测量温度,输出信号全数字化。

基于AT89S52的数字温度计设计说明

基于AT89S52的数字温度计设计说明

基于AT89S52的数字温度计设计说明一、设计背景温度计是指可以测量并显示环境温度值的仪器。

数字温度计是将温度转换为数字信号,再通过数码管显示温度值的一种温度计。

随着微处理器技术的不断发展,数字温度计也不断得到改进,成为了一种重要的电子测量仪器。

本设计基于AT89S52单片机,设计一款简单的数字温度计。

二、设计方案本设计方案采用DS18B20数字温度传感器作为温度检测器件,通过AT89S52单片机进行信号处理,并将温度值显示在四位数码管上。

具体方案如下:1. 电路连接将DS18B20数字温度传感器的VCC引脚连接到单片机的5V供电端口,GND引脚连接到单片机的GND端口,DQ引脚连接到单片机的P2.0口。

将四位共阳数码管的COM1-COM4引脚连接到单片机的P1.0-P1.3口,a-g引脚连接到单片机的P0.0-P0.6口。

2. 软件设计主程序通过定时器产生1s的时间基准,读取DS18B20传感器的温度值,将温度值转化为数码管可以显示的温度值,并将温度值显示在数码管上。

主程序具体运作流程如下:(1)初始化定时器,设定时间基准为1s。

(2)初始化DS18B20传感器,进行一次温度检测。

(3)将读取到的温度值存入RAM中。

(4)将温度值转化为数码管可以显示的温度值,并存入RAM中。

(5)将数码管显示温度值。

(6)等待1s后,再进行温度检测,重复执行。

三、应用领域数字温度计是一种广泛应用于家庭、实验室、工厂、疾病诊断等领域的电子测量仪器。

本设计采用的AT89S52单片机和DS18B20数字温度传感器成本较低,制作简单,可以在生活中进行自制,具有一定的实用价值。

基于AT89C52单片机的数字温度计设计

基于AT89C52单片机的数字温度计设计

基于单片机的数字温度计设计摘要在日常生活及工业生产过程中,经常要用到温度的检测及控制,温度是生产过程和科学实验中普遍而且重要的物理参数之一。

传统的测温元件有热电偶和二电阻。

而热电偶和热电阻测出的一般都是电压,再转换成对应的温度,这些方法相对比较复杂,需要比较多的外部硬件支持。

我们用一种相对比较简单的方式来测量。

我们采用美国DALLAS半导体公司继DS18B20之后推出的一种改进型智能温度传感器DS18B20作为检测元件,温度范围为-55~125℃,最高分辨率可达0.0625℃。

DS18B20可以直接读出北侧温度值,而且采用三线制与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。

本文介绍一种基于AT89C52单片机的一种温度测量及报警电路,该电路采用DS18B20作为温度监测元件,测量范围0℃~+100℃,使用LCD模块显示,能设置温度报警上下限。

正文着重给出了软硬件系统的各部分电路,介绍了集成温度传感器DS18B20的原理,AT89C52单片机功能和应用。

该电路设计新颖、功能强大、结构简单。

关键词:温度测量,AT89C52,DS18B20,系统仿真Design of Digital Thermometer Based on SCMABSTRACTIn daily life and industrial production process, often used in the detection and control of temperature, temperature is the production process and scientific experiments in general and one of the important physical parameter. Traditional thermocouple and temperature components are the second resistor. The thermocouple and thermal resistance are generally measured voltage, and then replaced by the corresponding temperature, these methods are relatively complex, requiring a relatively large number of external hardware support. We use a relatively simple way to measure. We use the United States following DALLAS Semiconductor DS1820 improved after the introduction of a smart temperature sensor DS18B20 as the detection element, a temperature range of -55℃~125℃, up to a maximum resolution of 0.0625℃. DS18B20 can be directly read out the temperature on the north side, and three-wire system with single-chip connected to a decrease of the external hardware circuit, with low-cost and easy use. The introduction of a cost-based AT89C52 SCM a temperature measurement circuits, the circuits used DS18B20 high-precision temperature sensor, measuring scope 0℃~+100℃, can set the warning limitation, the use of seven segments LCD that can be display the current temperature. The paper focuses on providing a software and hardware system components circuit, introduced the theory of DS18B20, the functions and applications of AT89C52 .This circuit design innovative, powerful, can be expansionary strong.KEY WORDS: Temperature measurement,AT89C52,DS18B20,System simulation目录前言 (1)第1章绪论 (2)1.1 设计背景 (2)1.1.1 温度计的介绍 (2)1.1.2 温度传感器的发展状况 (3)1.2 选题的目的和意义 (4)1.2.1 选题的目的 (4)1.2.2 选题的意义 (4)第2章系统概述 (5)2.1 设计方案的选择 (5)2.1.1 方案一 (5)2.1.2 方案二 (6)2.2 系统设计原理 (6)第3章系统硬件的设计 (8)3.1 AT89C52的介绍 (8)3.2 DS18B20的介绍 (11)3.2.1 DS18B20的引脚排列 (11)3.2.2 DS18B20内部结构 (12)3.2.3 DS18B20的测温原理 (16)3.2.4 DS18B20使用的注意事项 (17)3.3 数字温度计电路设计 (18)3.3.1 数字温度计原理图 (18)3.3.2 时钟电路的设计 (18)3.3.3 复位电路的设计 (19)3.3.4 接口电路的设计 (20)3.3.5 显示电路的设计 (20)3.3.6 报警电路的设计 (23)第4章系统软件的设计 (24)4.1软件Proteus与Keil (24)4.1.1 Proteus软件 (24)4.1.2 Keil软件 (27)4.2 系统主程序 (29)4.2.1 主程序 (29)4.2.2 DS18B20初始化 (30)4.2.3 温度转换命令子程序 (30)4.2.4 温度数据的计算处理方法 (31)4.3 源程序 (31)第5章仿真 (32)5.1 仿真结果 (32)结论 (34)谢辞 (35)参考文献 (36)附录 (37)外文资料翻译 (47)前言随着科技的不断发展,现代社会对各种信息参数的准确度和精确度的要求都有了几何级的增长,而如何准确迅速的获得这些参数就需要受制于现代信息基础的发展水平。

基于AT89S52数字温度计的设计

基于AT89S52数字温度计的设计

摘要随着时代的进步和发展,人们越来越重视对各种仪器设备的温度进行监测和控制。

采用单片机来对它们进行监测和控制不仅具有控制方便,简单和灵活性大等优点,还可以使我们自己更加熟悉单片机的原理及使用。

本文详细介绍了一种基于AT89S52单片机的数字温度计,其以单片机为主设备,DS18B20为从设备,通过LED液晶屏显示温度。

本文对DS18B20的内部结构,温度的采集﹑转换﹑处理等过程,AT89S52的原理,软件编程等等作了详细的说明。

通过测试证明了该温度计功能强大、结构简单,抗干扰能力强,能满足社会的要求,具有可观的前景。

关键词:数字温度计;AT89S52;DS18B20AbstractWith the progress and development of the times, there is growing emphasis on the temperature of the various instruments and equipment for monitoring and control. Using chip computer monitor and control them is not only easy to control, simplicity and flexibility of the big advantages, can also make ourselves more familiar with the principles and the use of the MCU.This paper describes an approach based on AT89S52 single-chip digital thermometer microcontroller-based device, DS18B20 from the device through the LED LCD screen display temperature. Gave a detailed description of the internal structure of this article DS18B20 temperature acquisition processing conversion process, AT89S52 principle, software programming, and so on. The test proved that the thermometer is powerful, simple structure, strong anti-interference ability, to meet the requirements of society, has considerable prospects.Key words:Digital thermometer; AT89S52; DS18B20目录1 绪论 (1)1.1国内外背景 (1)1.2课程设计的意义 (2)1.3设计任务和要求 (2)2 系统方案 (3)2.1 方案一 (3)2.2 方案二 (4)3 系统器件选择 (6)3.1 单片机AT89S52的介绍 (6)3.1.1 AT89S52主要特性 (6)3.1.2 AT89S52引脚介绍 (7)3.2 DS18B20的介绍 (8)3.2.1 DS18B20的主要特性 (9)3.2.2 DS18B20内部结构 (9)3.2.3 DS18B20测温原理 (13)3.2.4 DS18B20使用中的注意事项 (16)3.3 74LS245芯片的介绍 (17)3.3.1 74LS245的功能及特性 (17)3.3.2 74LS245的结构 (18)3.4 74LS07芯片的介绍 (18)3. 4. 1 74LS07的功能及特性 (18)3.4.2 74LS07的结构 (19)3.5 LED 数码管介绍 (20)3.5.1 LED 数码管原理图 (20)3.5.2 数码管介绍 (20)4 系统硬件设计 (22)4.1主控制器 (22)4.2温度检测电路 (23)4.3显示电路 (24)5 系统软件算法分析 (25)5.1 主程序流程图 (25)5.2 各模块流程图 (26)5.2.1 温度转换命令子程序 (26)5.2.3 计算温度子程序 (27)5.3 显示电路的流程图 (27)6实验测试 (28)6.1 仿真 (28)6.1.1 Proteus简介 (28)6.1.2 仿真过程 (29)6.2 实物图 (30)7结束语 (31)致谢 (32)参考文献 (33)附件 1 (34)1 绪论1.1国内外背景温度是工农业生产中最常见的参数之一,与产品的质量,生产效率、安全生产的密切相关,因此在生产过程中需对温度进行检测监控。

基于AT89S52单片机的数字温度计设计

基于AT89S52单片机的数字温度计设计

基于AT89S52单片机的数字温度计设计一引言在生活和生产中,经常要用到一些测温设备,但是传统的测温设备具有制作本钱高、硬件电、和软件设计复杂等缺点。

基于AT89S52单片机的数字温度计具有制作简单、本钱低、读数方便、测温*围广和测温准确等优点,应用前景广阔。

二工程要求基于AT89S52单片机的数字温度计设计具体要求如下:〔1〕温度值用LED显示。

〔2〕围为-30℃~100℃,且测量误差不得大于±0.5℃。

〔3〕本钱的体积、质量要尽可能小。

三系统设计1 框图设计根据设计要求分析,基于AT89S52单片机的数字温度计设计由AT89S52单片机控制器、电源、显示电路、温度传感器、复位电路和时钟电路组成,系统框图如图1所示。

电源给整个电路供电,显示电路显示温度值,时钟电路为AT89S52提供时钟频率。

传感器采用美国DALLAS半导体公司生产的一种智能温度传感器DS18B20,其测温*围为-55~125℃,最高分辨率可达0.0625℃,完全符合设计要求。

图一基于AT89S52单片机的数字温度计系统框图2 知识点本工程需要通过学习和查阅资料,掌握和了解如下知识:●+5V电源原理及设计。

●单片机复位电路工作原理及设计。

●单片机晶振电路工作原理及设计。

●按键电路的设计。

●数码管的特性及使用。

●DS18B20的特性及使用。

●74LS07的特性及使用。

●AT89S52单片机引脚。

●单片机C语言程序设计。

四硬件设计1 电路原理图控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以动态扫描法实现温度显示,电路图可见仿真图所示。

2 元件清单基于AT89S52单片机的数字温度计元件清单如表1所示。

五软件设计1 程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS18B20测量的当前温度值,温度测试每1S进展一次。

这样可以在1S之内测量一次被测温度,其程序流程图如图3所示。

89S52单片机数字温度计设计

89S52单片机数字温度计设计
设计需要用到A/D 转换电路,感温电路比较麻烦。
-3-
图 2.1热电偶电路图
系统主要包括对A/D0809 的数据采集,自动手动工作方式检测,温度的显示等,这几 项功能的信号通过输入输出电路经单片机处理。还有复位电路,晶振电路,启动电路等。 故现场输入硬件有手动复位键、A/D 转换芯片,处理芯片为51 芯片,执行机构有4 位数 码管、报警器等。系统框图如 3.2所示:
测量温度的关键是温度传感器,温度传感器的发展经历了三个发展阶段: ①传统的分立式温度传感器 ②模拟集成温度传感器
-2-
③智能集成温度传感器。 在当今信息化时代展过程中,各种信息的感知、采集、转换、传输和处理的功能器件 已经成为各个应用领域中不可缺少的重要技术工具。传感器是信息采集系统的首要部件, 是实现现代化测量和自动控制的主要环节,是现代信息产业的源头,又是信息社会赖以存 在和发展的物质与技术基础。可见理解和撑握传感器的知识与技术有着其极重要的意义。 传感器知识面广,如果在实践技能的锻炼上下功夫,单凭课堂理论课学习,势必出现 理论与实践脱节的局面。任随书本上把单片机技术介绍得多么重要、多么实用多么好用, 同学们仍然会感到那只是空中楼阁,离自己十分遥远,或者会感到对它失去兴趣,或者会 感到它高深莫测无从下手,这些情况都会令课堂教学的效果大打折扣。 本次设计的目的就是让我们在理论学习的基础上,通过完成一个传感品器件的设计, 使我们学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路、 电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排版调试、焊 接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高。
4.3.1、 温度检测流程........................................................................13 4.3.2、报警模块流程..........................................................................15

基于DS18B20在单片机AT89S52上实现的数字式温度计

基于DS18B20在单片机AT89S52上实现的数字式温度计
MOV R0,#38H ;将温度的最高位符号位放入Ro寄存器
MAIN:
LCALL RESET ;调用复用子程序
MOV A,#0CCH ;写跳过ROM命令
LCALL WRITE ;调用写子程序
MOV A,#44H ;启动温度转换
LCALL WRITE
LCALL RESET ;调用复用子程序
MOV A,#0CCH ;写跳过ROM命令
LCALL WRITE
MOV A,#0BEH ;发读存储器命令
LCALL WRITE
6.用户可自设定报警上下限温度
7.报警搜索命令可识别和寻址哪个器件的温度超出预定值。
8.DS18B20的分辩率由用户通过EEPROM设置为9~12位
9.DS18B20可将检测到温度值直接转化为数字量,并通过串行通信的方式与主控制器进行数据通信。
DS18B20内部结构及功能
DS18B20的内部结构如下图所示,主要包括:寄生电源,温度传感器,64位ROM和单总线接口,存放中间数据的高速暂存器RAM,用于存储用户设定温度上下限值的TH和TL触发器,存储与控制逻辑,8位循环冗余校验码(CRC)发生器等7部分
本数字温度设计采用美国DALLAS半导体公司继DS1820之后推出的一种改进型智能温度传感器DS18B20作为检测元件,测温范围为-55~125℃,最大分辩率可达0.0625℃。DS18B20可以直接读出被测温度值,而且采用1-wire与单片机相连,减少了外部的硬件电路,具有低成本和易使用的特点。
系统硬件电路的设计
2.每只DS18B20具有一个独有的,不可修改的64位序列号,根据序列号访问地应的器件。
3.低压供电,电源范围从3~5V,可以本地供电,也可以直接从数据线上窃取电源(寄生电源方式)。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于AT89S52单片机的数字温度计设计一引言在生活和生产中,经常要用到一些测温设备,但是传统的测温设备具有制作成本高、硬件电、和软件设计复杂等缺点。

基于AT89S52单片机的数字温度计具有制作简单、成本低、读数方便、测温范围广和测温准确等优点,应用前景广阔。

二项目要求基于AT89S52单片机的数字温度计设计具体要求如下:(1)温度值用LED显示。

(2)围为-30℃~100℃,且测量误差不得大于±0.5℃。

(3)成本的体积、质量要尽可能小。

三系统设计1 框图设计根据设计要求分析,基于AT89S52单片机的数字温度计设计由AT89S52单片机控制器、电源、显示电路、温度传感器、复位电路和时钟电路组成,系统框图如图1所示。

电源给整个电路供电,显示电路显示温度值,时钟电路为AT89S52提供时钟频率。

传感器采用美国DALLAS半导体公司生产的一种智能温度传感器DS18B20,其测温范围为-55~125℃,最高分辨率可达0.0625℃,完全符合设计要求。

图一基于AT89S52单片机的数字温度计系统框图2 知识点本项目需要通过学习和查阅资料,掌握和了解如下知识:●+5V电源原理及设计。

●单片机复位电路工作原理及设计。

●单片机晶振电路工作原理及设计。

●按键电路的设计。

●数码管的特性及使用。

●DS18B20的特性及使用。

●74LS07的特性及使用。

●AT89S52单片机引脚。

●单片机C语言程序设计。

四硬件设计1 电路原理图控制器使用单片机AT89S52,测温传感器使用DS18B20,用4位共阳极LED数码管以动态扫描法实现温度显示,电路图可见仿真图所示。

2 元件清单基于AT89S52单片机的数字温度计元件清单如表1所示。

五软件设计1 程序流程图主程序的主要功能是负责温度的实时显示、读出并处理DS18B20测量的当前温度值,温度测试每1S进行一次。

这样可以在1S之内测量一次被测温度,其程序流程图如图3所示。

读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校温度转换命令子程序主要是发温度转换开始命令,采用12位分辨率转换时间约为750ms。

程序设计中采用1s显示程序延时等待转换的完成。

计算温度子程序将RAM中读取值进行BCD码地转换运算,并进行温度值正负的判定,显示数据刷新子程序主要是对显示缓冲器中的显示数据进行刷新操作,当最高显示位为0时将符号显示位移入下一位。

2 程序清单基于AT89S52单片机的数字温度计程序清单如下:#include "reg51.h"#include "intrins.h" //延时函数用#define Disdata P1 //段码输出口#define discan P3 //扫描口#define uchar unsigned char#define uint unsigned intsbit DQ=P3^7; //温度输入口sbit DIN=P1^7; //LED小数点控制uint h;uchar code ditab[16]={0x00,0x01,0x01,0x02,0x03,0x03,0x04,0x04,0x05,0x06,0x06,0x07,0x08,0x08, 0x09,0x09};//温度小数部分用查表法uchar code dis_7[12]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff,0xbf};/* 共阳LED段码表"0" "1" "2" "3" "4" "5" "6" "7" "8" "9" "不亮" "-" */ uchar code scan_con[4]={0xfe,0xfd,0xfb,0xf7}; // 列扫描控制字uchar data temp_data[2]={0x00,0x00}; // 读出温度暂放uchar data display[5]={0x00,0x00,0x00,0x00,0x00};//显示单元数据,共4个数据,一个运算暂存用void delay(uint t)//11微秒延时函数{for(;t>0;t--);}scan()//显示扫描函数{char k;for(k=0;k<4;k++) //四位LED扫描控制{Disdata=dis_7[display[k]];if(k==1){DIN=0;}discan=~scan_con[k];delay(90);discan=0x00;}}ow_reset(void)//18B20复位函数{char presence=1;while(presence){while(presence){DQ=1;_nop_();_nop_();DQ=0;delay(50); // 550usDQ=1;delay(6); // 66uspresence=DQ; // presence=0继续下一步}delay(45); //延时500uspresence = ~DQ;}DQ=1;}void write_byte(uchar val)//18B20写命令函数{uchar i;for (i=8; i>0; i--) //{DQ=1;_nop_();_nop_();DQ = 0;_nop_();_nop_();_nop_();_nop_();_nop_();//5us DQ = val&0x01; //最低位移出delay(6); //66usval=val/2; //右移一位}DQ = 1;delay(1);}uchar read_byte(void)//从总线上读取一个字节{uchar i;uchar value = 0;for (i=8;i>0;i--){DQ=1;_nop_();_nop_();value>>=1;DQ = 0; //_nop_();_nop_();_nop_();_nop_(); //4usDQ = 1;_nop_();_nop_();_nop_();_nop_(); //4usif(DQ)value|=0x80;delay(6); //66us}DQ=1;return(value);}read_temp()//读出温度函数{ow_reset(); //总线复位write_byte(0xCC); // 发Skip ROM命令write_byte(0xBE); // 发读命令temp_data[0]=read_byte(); //温度低8位temp_data[1]=read_byte(); //温度高8位ow_reset();write_byte(0xCC); // Skip ROMwrite_byte(0x44); // 发转换命令}work_temp()//温度数据处理函数{uchar n=0; //if(temp_data[1]>127){temp_data[1]=(256-temp_data[1]);temp_data[0]=(256-temp_data[0]);n=1;}//负温度求补码display[4]=temp_data[0]&0x0f;display[0]=ditab[display[4]];display[4]=((temp_data[0]&0xf0)>>4)|((temp_data[1]&0x0f)<<4);//display[3]=display[4]/100;display[1]=display[4]%100;display[2]=display[1]/10;display[1]=display[1]%10;if(!display[3]){display[3]=0x0A;if(!display[2]){display[2]=0x0A;}}//最高位为0时都不显示if(n){display[3]=0x0B;}//负温度时最高位显示"-"}main()//主函数{Disdata=0xff; //初始化端口discan=0xff;for(h=0;h<4;h++){display[h]=8;}//开机显示8888ow_reset(); // 开机先转换一次write_byte(0xCC); // Skip ROMwrite_byte(0x44); // 发转换命令for(h=0;h<500;h++){scan();} //开机显示"8888"2秒while(1){read_temp(); //读出18B20温度数据work_temp(); //处理温度数据for(h=0;h<500;h++){scan();} //显示温度值2秒}}六系统仿真及调试1 软件调试图5 仿真图1。

相关文档
最新文档