基于单片机温度检测_毕业设计论文(编辑修改稿)内容摘要:

第 6 页 共 33 页 3 温度检测系统的硬件设计 单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力 (如算术运算,逻辑运算、数据传送、中断处理 )的微处理器 (CPU),随机存取数据存储器(RAM),只读程序存储器 (ROM),输入输出电路 (I/O 口 ),可能还包括定时计数器,串行通信口 (SCI),显示驱动电路 (LCD 或 LED 驱动电路 ),脉宽调制电路 (PWM),模拟多路转换器及 A/D 转换器等电路集成到一块单块芯片上,构成一个最小 、 而完善的计算机系统。 这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。 AT89C51 单片机 AT89C51 是一个低功耗,高性能 CMOS8 位单片机片内含 4kBytes ISP 的可反复擦写 1000 次的 Flash 只读程序存储器,器件采用 ATMEL 公司的高密度、非易失性存储技术制造,兼容标准 MCS 51 指令系统及 80C51 引脚结构,芯片内集成了通用 8 位中央处理器和 ISP Flash 存储单元。 AT89C51 具有如下特点: 40 个引脚, 4k Bytes Flash 片内程序存储器, 128 bytes 的随机存取数据存储器 (RAM), 32个外部双向输入 /输出 (I/O)口, 5 个中断优先级 2 层中断嵌套中断, 2 个 16 位可编程定时计数器, 2 个全双工串行通信口,片内时钟振荡器。 单片机引脚 单 片机有 4 个 I/0 端口,每个端口都是 8 位双向口,共占 32根引脚。 每个端口都包括一个锁存器 (即专用寄存器 POP3)、一个输入驱动器和输入缓冲器。 通常把 4个端口称为 POP3(见图 3)。 在无片外扩展的存储器的系统中,这 4 个端口的每一位都可以作为双向通用I/0 端口使用。 在具有片外扩展存储器的系统中, P2 口作为高 8 位地址线, PO 口分时作为低 8 位地址线和双向数据总线。 各自特点如下: (1) PO 口为双向 8 位三态 I/0 口,它既可作为通用 I/O 口,又可作为外部扩展时的数据总线及低 8 位地址总线的分时复用口。 作为通用 1/0 口时,输出数据可以得到锁存,不需外接专用锁存器。 输入数据可以得到缓冲,增加了数据输入的可温度检测系统的硬件设计 第 7 页 共 33 页 靠性。 每个引脚可驱动 8 个 TTL 负载。 (2) PI 口为 8 位准双向 1/0 口,内部具有上拉电阻,一般作通用 1/0 口使用,它的每一位都可以分别定义为输入线或输出线,作为输入时,锁存器必须置 1。 每个引脚可驱动 4 个 TTL 负载。 (3) P2 口为 8 位准双向 1/0 口,内部具有上拉电阻,可直接连接外部 1/0 设备。 它与地址总线高 8位复用,可驱动 4 个 TTL 负载。 一般作为外部扩展时的高8 位地址总线使用。 (4) P3 口为 8 位准双向 1/0 口,内部具有上拉电阻,它是双功能复用口,每个引脚可驱动 4 个 TTL 负载。 作为通用 1/0 口时,功能与 P1口相同,常用第二功能。 控制线一共有 6 条 : (1) ALE/PROG :地址锁存允许 /编程线,配合 PO 口引脚的第二功能使用。 在访问片外存储器时, 89C51 CPU 在 引脚上输出片外存储器低 8 位地址的同时在 ALE/PROG 上输出一个高电位脉冲,用于把这个片外存储器低 8 位地址锁存到外部专用地址锁存器,以便空出 引脚线去传送随后而来的片外存储器读写数据。 在不访问片外 存储器时, 89C51 自动在 ALE/PROG 上输出频率为 fosc/6 的脉冲序列。 该脉冲序列可用作外部时钟源或作为定时脉冲源使用。 (2) EA/Vpp:允许访问片外存储器 /编程电源线,可以控制 89C51 使用片内R0M 还是使用片外 R0M。 若 EA=0,则允许使用片内 R0M。 若 EA=1 则允许使用片外ROM. (3) PSEN :片外 ROM 选通线,在执行访问片外 R0M 的指令 M0VC 时, 89C51自动在 PSEN 上产生一个负脉冲,用于为片外 R0M 芯片的选通。 其他情况下 PSEN线均为高电平封锁状态。 (4) RST/VPD:复位 /备用电源线,可以使 89C51 处于复位工作状态。 基于单片机的温度检测设计探讨 第 8 页 共 33 页 图 3 AT 89C51 引脚图 时钟晶振电路和复位电路 时钟电路用于产生时钟信号,时钟信号是 单片机内部各种微操作的时间基准,在此基础上,控制器按照指令的功能产生一系列在时间上有一定次序的信号,控制相关的逻辑电路工作,实现指令的功能。 复位对单片机来说,是程序还没有开始执行,是在做准备工作。 时钟晶振电路和复位电路见图 4。 X T A L 1X T A L 2RE SC13 0 pC23 0 pY1 2 M H ZR11 0 k C31 0 u F 图 4 时钟晶振电路和复位电路 温度检测系统的硬件设计 第 9 页 共 33 页 传感器的基本特性 在监控系统中有各种不同的物理量需要监测和控制,这就要求传感器能感受被测非电量并将其转换成与被测量有一定函数关系的电量。 传感器所测量的非电量是处在不断的变化之中,传感器能否将这些非电量的变化不失真地转换成相应的电量,取 决于传感器的输入一输出特性。 传感器这一基本特性可用静态特性和动态特性来描述。 传感器的静态特性是指当被测量处于稳定状态下,传感器的输入与输出值之间的关系。 传感器静态特性的主要技术指标有 :线性度、灵敏度、迟滞和重复性等。 传感器的动态特性是指传感器测量静态信号时,由于被测量不随时间变化,测量和记录过程不受时间限制。 而实际中大量的被测量是随时间变化的动态信号,传感器的输出不仅需要精确地显示被测量的大小,还要显示被测量随时间变化的规律,即被测量的波形。 传感器能测量动态信号的能力用动态特性表示。 动态特性是指传感器测 量动态信号时,输出对输入的响应特性。 传感器动态特性的性能指标可以通过时域、频域以及试验分析的方法确定,其动态特性参数如 :最大超调量、上升时间、调整时间、频率响应范围、临界频率等。 动态特性好的传感器,其输出量随时间的变化规律将再现输入量随时间的变化规律,即它们具有同一时间函数。 但是,除了理想情况以外,实际传感器的输出信号与输入信号不会具有相同的时间函数,由此引起动态误差。 DS18B20 简介 DS18B20 数字温度传感器概述 美国 DALLAS 公司生产的 DS18B20 数字温度传感器,可以 直接将被测温度转化为串行数字信号供微机处理,通过简单的编程实现 9 位的温度读数。 并且多个 DS18B20 可以并接到多个地址线上与单片机实现通信。 由于每一个 DS18B20出厂时都刻有唯一的一个序列号并存入其 ROM 中,因此 CPU 可用简单的通信协议就可以识别,从而节省大量的引线和逻辑电路。 基于单片机的温度检测设计探讨 第 10 页 共 33 页 与其它温度传感器相比, DS18B20 具有以下特性 : ( 1) 全数字温度转换及输出。 ( 2) 先进的单总线数据通信。 ( 3) 最高 12 位分辨率,精度可达土 176。 C。 ( 4) 12 位分辨率时的最大工作周期为 750 毫秒。 ( 5) 检测温度范围为 –55176。 C ~+125176。 C (–67176。 F ~+257176。 F) ( 6) 内置 EEPROM,限温报警功能。 ( 7) 多样封装形式,适应不同硬件系统。 DS18B20 常用的封装有 TO92 和 8 引脚的 SOIC 封装,如图 5 所示 : 图 5 DS18B20 的封装和引脚 对图 5中 DS18B20 的引脚功能说明如下 : NC:空引脚,不连接外部信号。 VDD:接电源引脚,电源供电 . GND:接地。 DQ:数据的输入和输出引脚。 DQ 引脚的 1/O 为数据输入 /输出端 (即单线总线 ),常态 下呈高电平。 温度检测系统的硬件设计 第 11 页 共 33 页 单线总线技术 单线总线,即 1wire 技术是 DS18B20 的一个特点。 该技术采用单根信号线,既可传输时钟,又能传输数据,而且数据传输是双向的,因而这种单总线技术有线路简单,硬件开销少,成本低廉,便于总线扩展和维护等优点。 单总线适用于单主机系统,能够控制一个或多个从机设备。 主机可以是微控制器,从机可以是单总线器件,它们之间的数据交换只通过一条信号线。 当只有一个从机设备时,系统可按单节点系统操作。 当有多个从设备时,系统则按多节点系统操作。 单总线即只有一根数据线,系统中的数据交换、控 制都由这根线完成。 主机或者从机通过一个漏极开路或三态端口连至该数据线,以允许设备在不发送数据时能够释放总线,而让其他设备使用总线,其内部等效电路如图 6 所示。 单总线通常要求外接一个约为 欧的上拉电阻,这样,当总线闲置时,其状态为高电平。 图 6 DS18B20 内部等效电路图 DS18B20 的使用方法 由于 DS18B20 采用的是 1- Wire 总线协议方式,即在一根数据线实现数据的双向传输,而对 AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总 线的协议时序来完成对 DS18B20 芯片的访问。 由于 DS18B20 是在一根 I/O 线上读数据,因此,对读写的数据位有着严格的时序要求。 DS18B20 有严格的通信协议来保证各位数据传输的正确性和完整性。 该协议定义基于单片机的温度检测设计探讨 第 12 页 共 33 页 了几种信号的时序:初始化时序、读时序、写时序。 所有时序都是将主机作为主 设备,单总线器件作为从设备。 而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。 数据和命令的传输都是低位在先。 DS18B20 的读写时序 对 DS18B20 的使用,多采用单片机实现数据采集。 处理时,将 DS18B20 信号线与单片机一位口线相连,单片机可挂接多片 DS18B20,从而实现多点温度检测系统。 其工作过程为 :主机发出一个脉冲,待” 0”电平大于 480μ s 后,复位 DS18B20,在 DS18B20 所发响应脉冲由主机接收后,主机再发读 ROM 命令代码 33H,然后发一个脉冲 (15μ s),并接着读取 DS18B20 序列号的一位。 另外,由于 DS18B20 单线通信功能是分时完成的,遵循严格的时隙概念,因此,系统对 DS18B20 和各种操作必须按协议 进行,即初始化 DS18B20(发复位脉冲 ) → 发 ROM 功能命令 → 发存储器操作命令 → 处理数据。 DS18B20格的协定来确保数据的完整性。 协议由几种单线上信号类别型组成 :复位脉冲,存在脉冲,写 0,写 1,读 0,和读 l所有这些信号除了存在脉冲之外均由总线主机产生。 开始先对 DS18B20初始化,后继以存在脉冲的复位脉冲表示 DS 18B20已经准备好发送或接收给出正确的 ROM命令和存贮器操作命令的数据。 总线主机发送 TX复位脉冲 (最短为 480μ s的低电平信号 )。 接着总线主机便释放此线并进入接收方式 (Rx)。 单线总线经 过 5k的上拉电阻被拉至高电平状态。 在检测到 1/0引脚上的上升沿之后, DS18B20等待 1560μ s并且接着发送存在脉冲 (60240μ s的低电平信号 )。 DS18B20的测温原理 DS18B20 的内部框图如图 7 所示,它主要包括寄生电源、温度传感器、 64位激光 ROM 单线接口、存放中间数据的高速暂存器、用于存储用户设定的温度上下限值、触发器存储与控制逻辑、 8位循环冗余校验码发生器等 7 部分。 温度检测系统的硬件设计 第 13 页 共 33 页 图 7 DS18B20的内部框图 图 8 DS18B20测温原理图 DS18B20 的测温原 理如图 8 所示。 低温度系数振荡器是一个振荡频率随温度变化很小的振荡器,为计数器 1 提供一频率稳定的计数脉冲。 高温度系数振荡是一个振荡频率对温度很敏感的振荡器,为计数器 2 提供一个频率随温度变化的计数脉冲。 初始时,温度寄存器被预置成 55176。 C ,每当计数器 1 从预置数开始减计数到 0 时,温度寄存器中寄存的温度值就增加 1176。 C ,这个过程重复进行直到计数器2 计数到 0 时便停止。 初始时,计数器 1 预置的是与 55176。 C 像对应的一个预置值。 以后计数器 1 每一个循环的预置数都由斜率累加器提供。 为了补偿振荡器温度特性的非线性性,斜率累加器提 供的预置数也随温度相应变化。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。