基于AT89C51单片机的数字温度计

合集下载

(完整word版)基于AT89C51单片机数字温度计的设计

(完整word版)基于AT89C51单片机数字温度计的设计

基于AT89C51单片机数字温度计的设计一、项目概述在生活和生产中,人们经常要用到一些测温设备,但是传统的测温设备具有制作成本高、硬件电路和软件设计复杂登缺点。

基于AT89C51的数字温度计具有制作简单、成本低、读数方便、测温范围广等优点,应用前景广泛。

二、项目要求基于AT89C51的数字温度计的具体要求如下:1.温度值用LED显示。

2.测温范围为-30~100℃,且测量误差不大于±0.5℃。

3.成品的体积、质量尽可能小。

三、设计框图及流程图1 主控制器单片机AT89S51具有低电压供电和体积小等特点,四个端口只需要两个口就能满足电路系统的设计需要,很适合便携手持式产品的设计使用系统可用二节电池供电。

2 显示电路显示电路采用4位共阳LED数码管。

3温度传感器DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字值读数方式。

DS18B20的性能特点如下:●独特的单线接口仅需要一个端口引脚进行通信;●多个DS18B20可以并联在惟一的三线上,实现多点组网功能;●无须外部器件;●可通过数据线供电,电压范围为3.0~5.5V;●零待机功耗;●温度以9或12位数字;●用户可定义报警设置;●报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件; ●负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;DS18B20采用3脚PR -35封装或8脚SOIC 封装,其内部结构框图如下图所控制器使用单片机AT89C51,测温传感器使用DS1820,用4位共阳极LED 数码管以动态扫描法实现温度显示,电路图如图1所示:图1.电路原理图五、软件设计1.程序流程图主程序的主要是负责温度的实时显示,读出并处理DS1280测量的当前温度值,温度测量每1s进行一次。

基于AT89C51DS18B20的数字温度计设计

基于AT89C51DS18B20的数字温度计设计

基于AT89C51DS18B20的数字温度计设计一、本文概述Overview of this article本文旨在探讨基于AT89C51微控制器和DS18B20数字温度传感器的数字温度计设计。

我们将详细介绍如何利用这两种核心组件,结合适当的硬件电路设计和软件编程,实现一个能够准确测量和显示温度的数字温度计。

This article aims to explore the design of a digital thermometer based on AT89C51 microcontroller and DS18B20 digital temperature sensor. We will provide a detailed introduction on how to utilize these two core components, combined with appropriate hardware circuit design and software programming, to achieve a digital thermometer that can accurately measure and display temperature.我们将对AT89C51微控制器和DS18B20数字温度传感器进行简要介绍,包括它们的工作原理、主要特性和适用场景。

然后,我们将详细阐述硬件电路的设计,包括微控制器与温度传感器的连接方式、电源电路、显示电路等。

We will provide a brief introduction to the AT89C51 microcontroller and DS18B20 digital temperature sensor, including their working principles, main characteristics, and applicable scenarios. Then, we will elaborate on the hardware circuit design, including the connection method between the microcontroller and temperature sensor, power circuit, display circuit, etc.在软件编程方面,我们将介绍如何使用C语言对AT89C51微控制器进行编程,实现温度数据的读取、处理和显示。

基于AT89C51单片机的数字温度显示计

基于AT89C51单片机的数字温度显示计
基于AT89C51单片机的课程设计
一、设计任务 二、电路原理图 三、流程图的绘制及说明 四、Proteus仿真
一、设计任务
• 本次设计是基于AT89C51单片机的数字温 度计。该单片机与MCS-51系列单片机完全 兼容、工作性能优良、性价比较高。温度 转换器采用DS18B20数字温度传感器,它 是一种智能温度传感器,具有结构简单、 分辨率高等优点。 • 本次设计的温度计可实现 10-50℃ 范围内 的温度显示,可以设定温度的上下限仿真
• 首先,添加仿真文件,双击AT89C51后,在 Program File选项中添加通过伟福编译器编译后 生成的后缀为.hex的文件,单击确定完成文件添 加。 • 然后单击菜单栏“源代码”选项,选择“全部编 译”,然后选择“调试”菜单选项下的“执行”, 系统开始运行,进行温度测量和显示工作 。 • 调整DS18B20的测量温度,数码管可以对应显示 结果。当温度在10~50℃之间变化时,报警指示 灯D2不亮;当温度低于10℃,或者大于等于50℃ 时,报警指示灯D2被点亮。
二、电路原理图
应用Proteus ISIS软件绘制的原理图如图1 所示:
图1 电路原理图
三、流程图的绘制及说明
• 本次设计采用汇编方法编写源程序,并使用伟福 编译器进行编译生成Proteus仿真软件所需要 的.hex文件。 • 设计步骤是先将温度传感器DS18B20的转换数据 读入到单片机AT89C51,再将读到的补码形式二 进制数据转换为BCD码,然后将BCD码通过查表 得到7段显示码送数码管显示。故主程序需要调用 读温度子程序、温度BCD码计算处理子程序、显 示BCD码刷新子程序等主要子程序,此外这些子 程序还需要调用DS18B20复位初始化子程序、读 出转换后的温度值、写DS18B20的子程序和延时 等子程序。 • 主程序流程图如图2所示 :

基于AT89C51的单片机的数字温度计

基于AT89C51的单片机的数字温度计

基于单片机的数字温度计设计摘要随着国民经济的发展,人们需要对各中加热炉、热处理炉、反应炉和锅炉中温度进行监测和控制。

采用单片机来对他们控制不仅具有控制方便,简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。

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

在生产过程中,为了高效地进行生产,必须对它的主要参数,如温度、压力、流量等进行有效的控制。

温度控制在生产过程中占有相当大的比例。

温度测量是温度控制的基础,技术已经比较成熟。

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

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

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

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

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

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

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

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

关键词:温度测量;DS18B20;AT89C51- I -Design of Digital Thermomer Based on SCMAbstractAlong with national economy development, the people need to each heating furnace、the heat-treatment furnace、in the reactor and the boiler the temperature carry on the monitor and the control. Not only uses the monolithic integrated circuit to come to them to control has the control to be convenient, simple and flexibility big and so on merits, moreover may enhance large scale is accused the temperature technical specification, thus can big enhance the product the quality and quantity.In 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. In the production process, in order to efficiently carry out the production, to be its main parameters, such as temperature, pressure, flow control, etc... Temperature control in the production process of a large proportion. Temperature measurement is the basis of temperature-controlled, more mature technology.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 º C, up to a maximum resolution of 0.0625 º C. 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 AT89C51 MCU a temperatur measurement circuits, the circuits used DS18B20 high-precision temperatur sensor, measuring scope 0℃-~+100℃,can set the warning limitation, the use of seven segments LED 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 founctions and applications of AT89C51 .This circuit design innovative, powerful, can be expansionary strong.Keywords:Temperatur measurement;DS18B20; AT89C51- II -目录摘要......................................... . (I)Abstract (II)第1章绪论 (5)1.1课题背景及研究意义 (5)1.2国内外现状 (5)1.3课题的设计目的 (6)1.4课题的主要工作 (6)1.5本文研究内容 (6)第2章开发工具Proteus与Keil (8)2.1 Proteus软件 (8)2.1.1 Proteus简介 (8)2.1.2 4大功能模块 (8)2.1.3 ISIS智能原理图输入系统 (10)2.1.4 Proteus简单应用 (10)2.2 Keil软件 (11)2.2.1 Keil软件简介 (11)2.2.2 Keil软件调试功能 (11)2.3本章小结 (12)第3章系统概述 (13)3.1方案选择 (13)3.1.1方案一 (13)3.1.2方案二 (14)3.2系统设计原理 (14)3.3系统组成 (14)3.4 DS18B20温度传感器与单片机的接口电路 (15)3.5本章小结 (16)第4章系统硬件设计 (17)4.1 80C51单片机的介绍 (17)4.1.1 80C51单片机主要特性 (18)4.1.2 80C51单片机管脚图 (19)4.1.3 80C51单片机的中断系统 (21)4.1.4 80C51单片机的定时/计数器 (21)4.2 LCD液晶显示器简介 (21)4.2.1液晶模块简介 (22)4.2.2液晶显示部分与89C51的接口 (23)4.3通讯模块 (24)4.4 DS18B20介绍 (25)4.4.1温度传感器工作原理 (25)- III -4.4.2 DS18B20相关介绍 (27)4.4.3 DS18B20使用中的注意事项 (28)4.5本章小结 (28)第5章系统软件设计 (29)5.1主程序设计 (29)5.2 DS18B20初始化 (30)5.3数据测试 (31)5.4仿真结果 (31)5.5本章小结 (33)结论 (34)致谢 (35)参考文献 (36)附录A (37)附录B (44)附录C (49)附录D (50)- IV -第1章绪论1.1课题背景及研究意义随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。

基于单片机AT89C51芯片DS18B20传感器的智能温度计设计

基于单片机AT89C51芯片DS18B20传感器的智能温度计设计
uchar table_dm1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
uchar data temp_data[2]={0x00,0x00};
uchar data display[5]={0x00,0x00,0x00,0x00,0x00};
DQ=0;_nop_();_nop_();_nop_();_nop_(); //5 us
DQ=val&0x01;
delay(6);
val=val/2;
}
DQ=1;
delay(1);
}
//DS18B20读1字节函数//
uchar read_byte(void)
{
uchar i;
uchar value=0;
delay(50);
DQ=1;
delay(6);
presence=DQ; //presence=0
}
delay(45);
presence=~DQ;
}
DQ=1;
}
//DS18B20写命令函数//
void write_byte(uchar val)
{
uchar i;
for(i=8;i>0;i--)
{
DQ=1;_nop_();_nop_();
图3-3复位电路
3.2
测温电路方面,我选择的温度传感器是DS18B20.这是美国DALLAS半导体公司最新推出的一种改进型只能温度传感器,不同于传统的热敏电阻,DS18B20能够直接读出被测温度,并且可根据实际要求通过简单的编程实现9~12位的数字读书方式。
DS18B20可以采用两种方式供电,一种是采用电源供电方式,此时DS18B20的1脚接地,2脚作为信号线,3脚接电源。另一种是寄生电源供电方式,如图4所示单片机端口接单线总线,为保证在有效的DS18B20时钟周期内提供足够的电流,可用一个MOSFET管来完成对总线的上拉。

基于AT89C51单片机的数字体温计的设计

基于AT89C51单片机的数字体温计的设计

38基于AT89C51单片机的数字体温计的设计李素蕊 新乡医学院三全学院 毕彦平 新乡医学院【摘 要】本文介绍了基于单片机,采用DS18B20单线数字温度传感器设计的数字体温测量系统,该系统便于医护人员对诸如儿童、精神病人等病人的体温的记录,实用性较强。

【关键词】数字体温计;AT89C51;DS18B201.引言患者的体温是医务人员对其进行体格检查、诊断疾病,进行生命体征监测的重要指标。

通过测量的体温变化,可以了解疾病发生和发展的规律,反映出某种疾病或疾病的某一个阶段,及时控制疾病的恶化[1]。

因此医护人员会对患者每天都进行两次的体温测量,如若患者为儿童或者精神病患者,体温测量会更费时。

近年,人们还设计出了人体红外测温仪这种非接触式体温计,但这种体温计容易受皮肤的干燥清洁度、空气温度、污染、电磁场等干扰因素的影响[3],因此要求被测人在被测环境中停留30min以上,以保证被测人额头与外界换热条件趋于稳定,从而提高测量准确性。

还有一些用其他芯片设计的数显体温计,由于采用的温度传感器的不稳定性,从而亦影响测量的准确度。

为了提高医护人员的工作效率,减少病患者的痛苦及其时间。

而针对市面上及部分医院用到的普通的数显体温计,准确度不够高,误差相对较大,从而影响对疾病的观察和诊断,基于这一点,我们设计了一种采用DS18B20数字温度传感器,基于单片机芯片AT89C51设计的数字体温计,其为测量准确度较高,成本又相对低的快速的数显体温计。

2.系统硬件设计框图本系统的设计框图如下图1所示,由DS18B20单线温度传感器来感知外界温度的变化,通过总线传给单片机AT89C51,进而读取温度后提示及其显示温度。

图1 硬件电路框图采用的DS18B20是一种价格便宜的单线数字温度传感器,它具有很多优点:(1)体积小,共有接地、电源、数据线3个引脚,无需额为的电源[4];(2)测温速度快,最多0.75s可以完成,极大提高了测温速度;(3)测温分辨率可达0.0625℃,性能稳定,安全可靠;(4)DS18B20适合于构成多点温度测控系统,在医院体温检测中也得到了一定应用[5]。

基于AT89C51的数字体温计设计

基于AT89C51的数字体温计设计

摘要随着时代的进步和发展,单片机技术已经普及到我们生活,工作,科研等各个领域,已经成为一种比较成熟的技术,采用单片机控制已经成为了一种潮流。

现代信息技术的三大基础是信息采集(即传感器技术)、信息传输(通信技术)和信息处理(计算机技术)。

传感器属于信息技术的前沿尖端产品,尤其是温度传感器种类日益繁多,数字温度传感器更因适用于各种微处理器接口组成的自动温度控制系统具有可以克服模拟传感器与微处理器接口时需要信号调理电路和A/D转换器的弊端等优点,被广泛应用于工业控制、电子体温计、测温仪器等各种温度控制系统中。

本文将介绍一种基于STC89C52单片机控制的数字体温计,配合采用DS18B20为温度采集模块,HS1602液晶显示模块显示结果,另外用MAX232模块进行电压转换,实现对体温的采集与再现。

关键词:52单片机,DSI8B20,HS1602,体温计THE DIGITAL THERMOMETERS DESIGN BASED ON STC89C52’S MINUIMUM SYSTEMABSTRACTWith the progress and development, microcontroller technology has spread to our lives, work, research and other fields, has become a relatively mature technology, using SCM has become a trend. Modern information technology is based on the three information collection (ie, sensor technology), information transfer (ICT) and information processing (computer technology). Sensor belongs to the forefront of cutting-edge information technology products, especially the increasingly diverse types of temperature sensors, digital temperature sensor is more suitable for a variety of microprocessor interface for the composition of the automatic temperature control system can overcome the analog sensors and signal conditioning required for microprocessor interfacing circuit and A / D converter defects, etc., are widely used in industrial control, electronic thermometer, thermometer, etc. of various temperature control systems. This article describes a microcontroller based control ofdigital thermometers STC89C52, with the use of DS18B20 the temperature acquisition module, HS1602 liquid crystal display module displays the results, another module with a MAX232 voltage conversion, acquisition and representation of body temperature.KEYWORDS:52 microcontroller, DSI8B20, HS1602, thermometer目录1引言--------------------------------------------------------------------------------------------------------------- 1 2总体设计--------------------------------------------------------------------------------------------------------- 22.1方案论证 ------------------------------------------------------------------------------------------------- 22.1.1单片机系统--------------------------------------------------------------------------------------- 22.1.2电源模块------------------------------------------------------------------------------------------ 22.1.3温度传感器--------------------------------------------------------------------------------------- 22.1.4显示模块------------------------------------------------------------------------------------------ 32.1.5确定方案------------------------------------------------------------------------------------------ 32.2总体设计 ------------------------------------------------------------------------------------------------- 3 3硬件设计--------------------------------------------------------------------------------------------------------- 43.1 单片机系统 --------------------------------------------------------------------------------------------- 43.2电源模块 ------------------------------------------------------------------------------------------------- 63.3 复位电路 ------------------------------------------------------------------------------------------------ 63.4 时钟振荡电路 ------------------------------------------------------------------------------------------ 73.5单片机最小系统 ---------------------------------------------------------------------------------------- 73.6温度传感器模块 ---------------------------------------------------------------------------------------- 83.6.1 DS18B20原理 ----------------------------------------------------------------------------------- 83.6.2 DS18B20电路连接 --------------------------------------------------------------------------- 103.7液晶显示模块 ----------------------------------------------------------------------------------------- 113.8 串口通信模块 ---------------------------------------------------------------------------------------- 13 4软件设计------------------------------------------------------------------------------------------------------- 164.1 软件流程 ---------------------------------------------------------------------------------------------- 164.2 DS18B20模块程序设计 -------------------------------------------------------------------------- 174.3 HS1602驱动程序设计 ------------------------------------------------------------------------------ 174.4 RS-232-C串口通信模块程序设计 ---------------------------------------------------------------- 18 5结果分析------------------------------------------------------------------------------------------------------- 19 6结语------------------------------------------------------------------------------------------------------------- 20 参考文献: ------------------------------------------------------------------------------------------------------ 21 附录1 完全电路图 -------------------------------------------------------------------------------------------- 22 附录2 部分源程序 -------------------------------------------------------------------------------------------- 231引言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温体温度计就是一个典型的例子,但人们对它的要求越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。

基于AT89C51的数字温度计设计与仿真

基于AT89C51的数字温度计设计与仿真

摘要随着科学技术的不断发展,温度的检测、控制应用于许多行业,数字温度计就是其中一例,它的反应速度快、操作简单,对环境要求不高,因此得到广泛的应用。

传统的温度测量大多使用热敏电阻,但热敏电阻的可靠性差,测量温度准确率低,而且必须经过专门的接口电路将模拟信号转换成数字信号才能由单片机进行处理。

本课题采用单片机作为主控芯片,利用DS18B20来实现测温,用LCD液晶显示器来实现温度显示。

温度测量范围为0~119℃,精确度0.1℃。

可以手动设置温度上下限报警值,当温度超出所设报警值时将发出报警鸣叫声,并显示温度值,该温度计适用于人们的日常生活和工、农业生产领域。

关键词:数字温度计;DS18B20;AT89C51; LCD1602Design and Simulation of Digital Thermometers Based onAT89C51Deng Lian WeiAbstractWith the continuous development of science and technology, the temperature detection and control used in many industries, the digital thermometer is a case in which the reaction speed, simple operation, less demanding on the environment, it is widely used. Most of the traditional use of thermistor temperature measurement, but poor reliability of thermistors to measure temperature, low accuracy, and must go through a special interface circuit converts the analog signal to digital signal processing by the microcontroller. The subject of using SCM as the main chip, the use of DS18B20 to achieve temperature, with the LCD liquid crystal display to achieve the temperature display.Temperature measurement range is 0 ~ 119 ℃, accuracy of 0.1 ℃. You can manually set the alarm value upper and lower temperature, when the temperature exceeds the set alarm when the alarm calls, and display temperature, the thermometer for people's daily lives and industrial and agricultural production areas.Keywords:Digital Thermometer; DS18B20; AT89C51; LCD1602目录第一章绪论 (1)1.1 前言 (1)1.2 课题的目的及意义 (1)1.3 该论文研究的内容 (1)第二章设计方案 (2)2.1 方案1:使用电阻元件 (2)2.2 方案2:使用温度传感器 (2)2.3 方案2的总体设计框图 (2)2.3.1 温度传感器 (2)2.3.2 1602LCD模块显示特性 (6)第三章硬件电路设计 (10)3.1 电路原理图 (10)3.2 LCD1602显示器与单片机的接口电路 (10)3.2.1 查看温度报警值 (11)3.2.2 报警状态显示 (11)3.3 DS18B20温度传感器与单片机的接口电路 (11)3.3.1 检测DS18B20状态 (12)3.4 按键与单片机的接口电路 (12)3.4.1 设定温度报警值 (13)第四章软件设计 (14)4.1 读出温度子程序 (15)4.2 温度转换命令子程序 (15)4.3 计算温度子程序 (16)4.4 显示数据刷新子程序 (16)4.5 电路仿真 (17)4.6 结果分析 (20)总结 (21)参考文献 (22)附录 (23)基于AT89C51的数字温度计设计与仿真绪论第一章绪论1.1 前言随着人们生活水平的不断提高,单片机控制无疑是人们追求的目标之一,它所给人带来的方便也是不可否定的,其中数字温度计就是一个典型的例子,但人们对它的要求也越来越高,要为现代人工作、科研、生活、提供更好的更方便的设施就需要从单片机技术入手,一切向着数字化控制,智能化控制方向发展。

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

摘要:随着现代信息技术的飞速发展和传统工业改造的逐步实现.能够独立工作的温度检测和显示系统应用于诸多领域。

本文将介绍一种基于AT89C51 单片机的数字温度计,本温度计与传统的温度计相比,具有读数方便,测温范围广,测温准确,其输出温度采用数字显示,主要用于对测温比较准确的场所,或科研实验室使用,该设计控制器使用单片机AT89C51,测温传感器使用DS18B20,用4位共阳极LED数码管采用动态扫描方式,实现温度显示。

关键词:AT89C51 数字温度计DS18B20AT89C51基本结构和原理AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。

AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL 高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

外形及引脚排列如图所示1.1主要特性:(1)与MCS-51 兼容(2)4K字节可编程闪烁存储器(3)寿命:1000写/擦循环(4)数据保留时间:10年(5)全静态工作:0Hz-24MHz(6)三级程序存储器锁定(7)128×8位内部RAM(8)32可编程I/O线(9)两个16位定时器/计数器(10)5个中断源(11)可编程串行通道(12)低功耗的闲置和掉电模式(13)·片内振荡器和时钟电路1.2管脚说明:VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH 编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL 门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。

如想禁止ALE的输出可在SFR8EH地址上置0。

此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

1.3振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。

该反向放大器可以配置为片内振荡器。

石晶振荡和陶瓷振荡均可采用。

如采用外部时钟源驱动器件,XTAL2应不接。

有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

1.4复位电路:单片机复位的条件是:必须使RST/VPD 或RST引(9)加上持续两个机器周期(即24个振荡周期)的高电平。

例如,若时钟频率为12 MHz,每机器周期为1μs,则只需2μs以上时间的高电平,在RST引脚出现高电平后的第二个机器周期执行复位。

单片机常见的复位如图所示。

电路为上电复位电路,它是利用电容充电来实现的。

在接电瞬间,RESET端的电位与VCC相同,随着充电电流的减少,RESET的电位逐渐下降。

只要保证RESET为高电平的时间大于两个机器周期,便能正常复位。

该电路除具有上电复位功能外,若要复位,只需按图中的RESET 键,此时电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。

温度传感器DS18B20测温原理DS18B20的性能特点DS18B20温度传感器是美国DALLAS半导体公司最新推出的一种改进型智能温度传感器,与传统的热敏电阻等测温元件相比,它能直接读出被测温度,并且可根据实际要求通过简单的编程实现9-12位的数字值读数方式。

DS18B20的性能特点如下:(1)独特的单线接口仅需要一个端口引脚进行通信,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。

(2)DS18B20支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点组网测温;(3)无须外部器件,全部传感元件及转换电路集成在形如一只三极管的集成电路内;(4)可通过数据线供电,电压范围为3.0-5.5V;(5)零待机功耗;(6)温度以9或12位数字,对应的可分辨温度分别为0.5℃、0.25℃、0.125℃和0.0625℃,可实现高精度测温;(7)用户可定义报警设置;(8)报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件;(9)负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作;(10)测量结果直接输出数字温度信号,以"一线总线"串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力DS18B20组成及结构DS18B20采用3脚PR35封装或8脚SOIC封装,其引脚排列及内部结构框图如图2及图3以及图4的测温原理图如下所示:图2 引脚排列图3 内部结构框图图4 DS18B20测温原理图预置 斜率累加器比较低温度系数振荡计数器1温度寄存器Tx预置=0高温度系数振荡-0计数器2T 1加1停止T 264位ROM的结构开始8位是产品类型的编号,接着是每个器件的惟一的序号,共有48位,最后8位是前面56位的CRC检验码,这也是多个DS18B20可以采用一线进行通信的原因。

温度报警触发器TH和TL,可通过软件写入户报警上下限。

DS18B20温度传感器的内部存储器还包括一个高速暂存RAM和一个非易失性的可电擦除的EERAM。

高速暂存RAM的结构为8字节的存储器,结构如图4所示。

头2个字节包含测得的温度信息,第3和第4字节TH和TL的拷贝,是易失的,每次上电复位时被刷新。

第5个字节,为配置寄存器,它的内容用于确定温度值的数字转换分辨率。

DS18B20工作时寄存器中的分辨率转换为相应精度的温度数值。

该字节各位的定义如图5所示。

低5位一直为1,TM是工作模式位,用于设置DS18B20在工作模式还是在测试模式,DS18B20出厂时该位被设置为0,用户不要去改动,R1和R0决定温度转换的精度位数,来设置分辨率。

温度 LSB温度 MSBTH用户字节1TL用户字节2配置寄存器保留保留保留CRCTM R1 R0 1 1 1 1 1图5 DS18B20的字节定义DS18B20的分辨率定义如表2-1所示表2-1 分辨率设置表R0 R1 分辨率最大温度转移时间0 0 9位96.75ms0 1 10位187.5ms1 0 11位375ms1 1 12位750ms由表1可见,DS18B20温度转换的时间比较长,而且分辨率越高,所需要的温度数据转换时间越长。

因此,在实际应用中要将分辨率和转换时间权衡考虑。

主机控制DS18B20完成温度转换过程是:每一次读写之前都要对DS18B20进行复位,即将数据总线下拉500us,然后释放,DS18B20收到信号后等待16-60us左右,之后发出60-240us的存在低脉冲,主CPU收到此此信号表示复位成功;复位成功后发送一条ROM指令,然后发送RAM指令,这样才能对DS18B20进行预订的读写操作。

表2-2 ROM指令集指令约定代码功能读ROM 33H 读DS18B20中的编码符合ROM 55H 发出此命令后,接着发出64位ROM编码,访问单线总线上与该编辑相对应的DS18B20使之做出响应,为下一步对该DS18B20的读写作准备搜索ROM 0F0H 用于确定挂接在同一总线上的DS18B20个数和识别64位ROM地址,为操作各器件作准备跳过ROM 0CCH 忽略64位ROM地址,直接向DS18B20发送温度变换指令告警搜索命令0ECH 执行后,只有温度跳过设定值上限或下限的片子才能做出反应表2-3 RAM指令集指令约定代码功能温度转换44H 启动DS18B20进行温度转换读暂存器0BEH 读暂存器9个字节内容写暂存器4EH 将数据写入暂存器的TH、TL字节复制暂存器48H 把暂存器的TH、TL字节写到E2RAM中重调E2RAM 0B8H 把E2RAM中的TH、TL字节写到暂存器TH、TL字节读供电方式0B4H 启动DS18B20发送电源供电方式的信号给主CPUDS18B20的测温原理DS18B20的测温原理是这这样的,器件中低温度系数晶振的振荡频率受温度的影响很小,用于产生固定频率的脉冲信号送给减法计数器1;高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入。

相关文档
最新文档