1、基于单片机的多点温度测试系统摘 要 集成电路的大规模发展对单片机控制 电路的实际运用有着巨大的推动作用。单片机具有体积小、重量轻、价格便宜、低功耗、控制功能强及运算速度快等特点,使其在测控系统、智能仪表、机电一体化产品、智能接口等方面具有较广泛的运用。以单片机为核心,运用温度传感器可完成对温度采集,并进行相应的处理。本系统利用4片温度传感器 DS18B20把所测得的温度发送到 AT89C52单片机上,通过单片机的处理发送到显示单元进行显示。系统运用单片机进行温度上下限设定,对各点温度进行测控报警,运用主从分布式思想,实现温度的远程控制,构成多点温度检测系统。关键词 单片机,温度传感器,多点温度
2、检测ABSTRACTThe practical application of large-scale development of the integrated circuit chip control circuit has a tremendous role in promoting. MCU with a small size, light weight, inexpensive, low-power, control and computing speed, has a wider use in the monitoring and control systems, intellige
3、nt instruments, mechanical and electrical integration products, intelligent interface. With the single chip processor as the core, the application of temperature sensor for temperature acquisition can be completed, and carry on corresponding processing.This system, using four slices of DS18B20, sent
4、 the temperature measured by the temperature sensor DS18B20 to AT89C52 single-chip computer, through the MCU processing, the temperature is sent to the display unit to display. The system uses the MCU to set upper and lower temperature, to measure and control the point temperature and alarm. At the
5、same time, use the main distributed thought to achieve remote control of the temperature, and to constitute a multi-point temperature detection system.Key Words: MCU, Slice, Multi-point temperature detection目 录1.绪论 .11.1 课题背景 .11.2 国内外发展现状 .11.3 本设计的内容及任务 .21.3.1 设计内容 .21.3.2 设计任务 .22.系统总体设计 .32.1 系
6、统概述 .32.2 系统工作原理 .32.3 系统器件的选择 .42.3.1 单片机的选择 .42.3.2 温度传感器的选择 .52.3.3 显示器的选择 .83.系统的硬件设计 .103.1 单片机最小系统的设计 .113.1.1 时钟电路的设计 .113.1.2 复位电路的设计 .113.2 温度采集模块的设计 .123.3 LCD 显示电路 .133.4 键盘电路 .143.5 声光报警电路 .154.系统的软件设计 .164.1 工作方案简介 .164.2 主程序流程图 .164.3 温度读取转换模块 .174.4LCD 液晶显示模块 .194.5 按键处理模块 .204.6 声光报警
7、模块 .215.系统的软件仿真 .226.总结 .23参考文献 .24答 谢 .25附 录 1 系统硬件原理图 .26附 录 2 程序设计 .2611.绪论1.1 课题背景随着现代科技的发展,温度成为了各行各业最普遍而重要的测量和控制参数。温度的测量技术与和所处的环境密切相关,随着时代的进步,科技的发展,各行各业各行各业对温度的测试系统的要求也在不断提高以达到设备环境、生产流程的安全要求。集成电路的大规模发展对单片机控制电路的实际运用有着巨大的推动作用。单片机具有体积小、重量轻、价格便宜、低功耗、控制功能强及运算速度快等特点,使其在测控系统、智能仪表、机电一体化产品、智能接口等方面具有较广泛的
8、运用。以单片机为核心,运用温度传感器可完成对温度采集,并进行相应的处理。所以基于单片机的多点温度测试系统被广泛用于工农业的控制过程中,既提高了产品的功能和质量,体统的抗干扰能力得到大幅提升,又降低了成本,同时也简化了设计,对提高控制效率,节约资源起到了重要作用。1.2 国内外发展现状 近年来,在温度的测控领域,多种新型的测量技术已经取得了重大突破,新一代温度测量元件正在不断出现和完善化,从晶体管测温元件到智能集成电路测温元件、核磁共振温度测量器、激光以及微波测温等等。这种现象充分地表明了温度测量技术的发展已经进入到了一种新的时代,人们会随着身处的不同环境来选择不同的温度测控方式。2总的来说温度
9、的测量发展可分为:继续对传统的温度测量元件的不断完善;加强新原理、新材料、新加工工艺的开发;向智能化、集成化、适用化方向发展等。而基于单片机检测温度的传感元件也不断更新,其中最有代表性的属 DS18B20 温度传感器。DS18B20 是美国 MAXIM 半导体器件公司的全子公司 Dallas 生产的一种但数据总线数字输出型全集成式智能温度传感器,其优点是集测温敏感元件及其 A/D 转换、运算处理、逻辑控制、ROM 和 RAM 单元、 I/O 端口等电路模块全部集成在一块极小的半导体芯片上,简化了电路设计,与传统的温度传感器相比,新型的智能温度传感器具有微型化、低功耗、高性能、抗干扰能力强、易于
10、与微处理器接口等优点。基于单片机的智能温度检测技术具有广阔应用前景和巨大经济价值。1.3 本设计的内容及任务1.3.1 设计内容要求利用单片机、传感器及其他所需器件设计一个多点温度测试系统,可以同时对多个点进行温度的检测和显示。1.3.2 设计任务分为硬件设计和软件设计两方面任务。硬件设计方面,选择控制器,进行硬件电路的设计,包括检测电路、提示电路、显示电路、外围辅助电路等;软件方面,利用 C 语言或者汇编语言编写程序,实现各功能测试。具体要求能够做出实物,实现基本功能。32.系统总体设计2.1 系统概述单片机系统的设计,关键是系统内信号传输的问题。因为单片机不能直接接受模拟量信号,所在在温度
11、测量的环节必须对温度信号的性质进行确认,若采用以模拟量信号的基础的温度传感器作为温度采集端,则要考虑温度模拟量与数字量之间的转换,而直接用数字温度传感器作为温度的采集端,不仅可以简化电路设计,而且可以提高系统的稳定性。在多点测温系统中,传统用模拟信号进过各种变换得到最终温度的方式正面临各类问题的挑战,而采用数字温度芯片 DS18B20 测量温度,其输出的信号是全数字化的,便于单片机处理及控制,省去了传统的测温方法的很多外围电路,使得测温系统体积较小,成本较低,且一个单片机芯片可连接多个温度传感器,实现多点温度的检测。系统由数字温度计 DS1820和微控制器 AT89C52 构成的温度测量装置,
12、通过液晶显示器进行温度显示,并通过按键进行报警上下限设置,当温度超过设定范围时,声光报警系统会进行报警提示。2.2 系统工作原理本系统利用 4 个温度传感器 DS18B20 把所测的温度发送到AT89C52,通过单片机的处理控制显示单元进行显示,并通过按键系统进行温度上下限设定,对各点温度进行声光测控报警。系统运用主从分布式思想,实现温度的远程控制, 构成多点温度检测系统。系统的总体设计框图如图 2-1 所示4图 2-1 系统总体设计框图2.3 系统器件的选择一个单片机工作系统中芯片的性能,对单片机系统工作的稳定性显得尤为重要,在选择芯片时,既要考虑系统的成本,同时也要考虑所选芯片的实用性,使
13、整个系统的性价比最高。2.3.1 单片机的选择单片机的全称是单片微型计算机,又称 MCU,是将计算机的基本部分微型化,使之集成在一块芯片上的微机,片内含有 CPU、ROM、RAM、并行 I/O 接口、定时/计数器、A/D、D/A、中断控制、系统时钟及系统总线等3。随着微电子设计技术及计算机技术的不断发展,单片机产品和技术日新月异。目前,生产单片机的厂商有很多比较著名的有Intel、 Philips、Microchip、Motorola、Atmel 等半导体企业。Intel 公司生产的 8051 芯片,其结构合理,技术也比较成熟,此外还有一些厂家生产与 MCS-51 系列相兼容的芯片,例如 At
14、mel 公司生产的Atmel89 系列单片机(简称 89 系列单片机) ,就是基于 Intel 公司的 MCS-551 系列而研制的,这是一种内部含 Flash 存储器的特殊单片机。目前 89 系列单片机取代了传统的 MCS-51 系列单片机,成为了人们使用的主流单片机之一,虑到本系统是多路温度检测,显示及控制线路较多,所以选择性价比相对较高的 AT89C52 单片机。 AT89C52 引脚图如图 2-2 所示。图 2-2 AT89C52 引脚图2.3.2 温度传感器的选择目前市场上温度传感器的种类繁多,以普通传感器建立检测系统时,首先要建立传感器输出信号与被测物理量之间关系的数学模型,并在此
15、基础上,设计出传感器接口电路,对传感器的输出信号进行 A/D 转换和补偿。而智能温度传感器具有模拟量信号到数字量值的 A/D 转换,并且能够在程序控制下,设置 A/D 的精度,具有自己的指令系统,并且带有数据存储功能。综上所述,选用智能温度传感器 DS18B20 不仅可以降低电路设计的难6度,同时还可以提高所测温度的准确度,故可以选用四个数字温度传感器DS18B20 组成温度的采集模块。DS18B20 是美国 MAXIM 半导体公司的全资子公司 Dallas 生产的一种单数据总线数字输出型全集成式智能温度传感器。这种传感器既可以单只独立使用,易于与外部微处理器系统连接,进行交换数据;又可以多只
16、联网使用,组成多点信息采集网络或综合信息处理系统,是一种典型的单芯片型智能传感器。其引脚图如图 2-3 所示。DALLASDS18B201 2 3GNDDQ VDD图 2-3 DS18B20 引脚图DS18B20 有两种供电方式:一是使用外接电源供电,它是最普通的供电方式,二是使用其内部的寄生电源供电,寄生电源方式是指 DS18B20 可以通过数据线为自身供电,即通过内部电容存储数据总线上电信号的能量来产生电能,为传感器工作供电。DS18B20 的工作步骤可分为三步:第一步 初始化 DS18B20,发送“初始化脉冲”信号。第二部 执行 DS18B20 的“ROM 操作命令” ,并在其后跟随需要
17、交换的数据。第三部 执行 DS18B20 的“功能操作命令” ,并在其后跟随需要交换的数据 5。7一般情况下,每次使用 DS18B20 时,都必须按照上述这三步的操作顺序访问 DS18B20 器件 ,不能缺少其中任何一个步骤,也不能变更这三个步骤的执行顺序。否则,DS18B20 不能做出正常响应。DS18B20 指令系统如表 2-1 所示。表 2-1 DS18B20 指令系统指令 约定代码 功能读 ROM 33H 读 DS18B20ROM 中的编码( 64 位地址)符合 ROM 55H 匹配 ROM 命令用于选中指定的 DS18B20 器件,主机发送匹配 ROM 命令(后面跟随指定器件的 64
18、 位ROM 序列号) ,可以再单只或多只器件在线的情况下,准确定位指定序列号的 DS18B20 器件。搜索 ROM 0F0H 主机可以通过发送和执行“搜索 ROM 命令” ,来识别这些单总线器件的序列号,确定在线的 DS18B20器件的数量和类型。跳过 ROM 0CCH 忽略 64 位 ROM 地址,直接向 DS18B20 发温度转换温度,适用单片机工作。告警搜索命令 0ECH 执行后,只有温度超过设定值上限或下限时单片机作出反应。温度转换 44H 命令 DS18B20 启动对温度温度传感器所测得温度数值进行 A/D 转换,转换后的数字温度数据保存在便笺式暂存器中的温度寄存器中。读寄存器 0BEH 读内部 RAM 中 9 字节的内容。写寄存器 4EH 用于使主机向 DS18B20 片内暂存器写入 3 个字节的数据,写入过程必须从低字节向高字节顺序进行。复制寄存器 48H 将内部 RAM 的第 3,4 字节的内容复制到 EPRAM中。复制 EPRAM 0B8H 将 EPRAM 中内容恢复到 RAM 的第 3,4 字节。读供电方式 0B4H 此命令用来使主机知晓 DS18B20 当前使用的电源供电方式,寄生供电时 DS18B20 发送“0” ,外接电源供电 DS18B20 发送“1” 。DS18B20 主要功能参数如下: