1、单片机原理及应用课程设计1信息工程学院单片机原理与外围电路课程论文题目:基于单片机的数字温度计设计 姓名: 金鑫 学号: 50112113 班级: 计算机 15-3 单片机原理及应用课程设计2摘要:随着时代的进步和发展,单片机技术已经普及到我们生活、工作、科研、各个领域,已经成为一种比较成熟的技术, 本 文主要介绍了一个基于 89S51 单片机的测温系统,详细描述了利用数字温度传感器 DS18B20 开发测温系统的过程,重点对传感器在单片机下的硬件连接,软件编程以及各模块系统流程进行了详尽分析,对各部分的电路也一一进行了介绍,该系统可以方便的实现实现温度采集和显示,并可根据需要任意设定上下限报
2、警温度,它使用起来相当方便,具有精度高、量程宽、灵敏度高、体积小、功耗低等优点,适合于我们日常生活和工、农业生产中的温度测量,也可以当作温度处理模块嵌入其它系统中,作为其他主系统的辅助扩展。DS18B20 与 AT89C51 结合实现最简温度检测系统,该系统结构简单,抗干扰能力强,适合于恶劣环境下进行现场温度测量,有广泛的应用前景。 关键词:单片机;温度检测;AT89S51;DS18B20;ABSTRACT: Along with the progress and development of the ages, single slice the machine technique has a
3、lready make widely available the life is to us,work,research,each realm, have already become the technique of a kind of comparison maturity. This paper mainly describes a temperature measurement system based on 89S51 singlechip, detailedly describing the development process use digital temperature s
4、ensor, the paper introduces the hardware connectivity and software programming of the DS18B20 based on the single-chip, and give the software flow chart of each module,as well as introduced each circuit of the system.System can easily to collect and display the temperature, it can also arbitrary set
5、 alarm temperature according to the actual need, It is used convenience, it has high precision,wide range ,high sensitivity, small size,and low power dissipation, The device is especially applied to measure temperature in peoples daily lives ,industrial and agricultural production,and also easily as
6、 a temperature processing module embed in the other system, turn into as a complementary expansion. Key word : Singlechip temperature measurement;AT89S51; DS18B20 单片机原理及应用课程设计3目录1 绪论 .41.1 设计背景 .41.2 国内外现状 .41.3 课题的设计目的 .51.4 课题的主要工作 .52 系统方案设计 .62.1 方案选择 .62.1 系统的总体设计方案 .63 硬件设计 .83.1 STC89C52RC 芯片
7、功能简介 .83.1.1 STC89C52RC 芯片简介 .83.1.2 引脚功能 .83.2 DS18B20 芯片简介 .123.2.1 芯片简介 .123.2.2 DS18B20 的外形和内部结构 .133.2.3 DS18B20 的工作时序 .153.2.4 DS18B20 与单片机的典型接口设计 .173.2.5 DS18B20 的各个 ROM 命令 .173.3 MAX232 简介 .193.4 RS232 接口简介 .203.4.1 RS232 接口的电平转换 .213.4.2 RS232 总线接口标准 .213.5 系统总体电路图 .234 系统软件设计 .234.1 各模块的程
8、序设计 .234.1.1 主程序流程图 .234.1.2 读出温度子程序 .254.1.3 温度转换命令子程序 .254.1.4 计算温度子程序 .264.1.5 显示数据刷新子程序 .274.1.6 报警子程序 .274.1.7 按键扫描处理子程序 .284.2 Protues 仿真 .285 结论 .30参考文献 .32附录 .33附录 1 元器件清单 .33附录 2 全部程序清单 .34附录 3 系统总设计图 .43附录 4 PCB 仿真线路及 3D 图 .44单片机原理及应用课程设计41 绪论1.1 设计背景随着新技术的不断开发与应用,近年来单片机发展十分迅速,一个以微机应用为主的新技
9、术革命浪潮正在蓬勃兴起,单片机的应用已经渗透到电力、冶金、化工、建材、机械、食品、石油等各个行业。传统的温度采集方法不仅费时费力,而且精度差,单片机的出现使得温度的采集和数据处理问题能够得到很好的解决。温度是工业对象中的一个重要的被控参数。然而所采用的测温元件和测量方法也不相同;产品的工艺不同,控制温度的精度也不相同。因此对数据采集的精度和采用的控制方法也不相同。传统的控制方式以不能满足高精度,高速度的控制要求,如温度控制表温度接触器,其主要缺点是温度波动范围大。由于他主要通过控制接触器的通断时间比例来达到改变加热功率的目的,受仪表本身误差和交流接触器的寿命限制,通断频率很低。近几年来快速发展
10、了多种先进的温度控制方式,如:PID 控制,模糊控制,神经网络及遗传算法控制等。这些控制技术大大的提高了控制精度,不但使控制变得简便,而且使产品的质量更好,降低了产品的成本,提高了生产效率。本设计使用单片机作为核心进行控制。单片机具有集成度高,通用性好,功能强,特别是体积小,重量轻,耗能低,可靠性高,抗干扰能力强和使用方便等独特优点,在数字、智能化方面有广泛的用途。1.2 国内外现状温度计在国内各行各业的应用虽然已经十分广泛,但从国内生产的温度计来讲,总体发展水平仍然不高,同日本、美国、德国等先进国家相比,仍然有着较大的差距。温度计测温技术的关键在于温度传感器。目前,国际上新型温度传感器正从模
11、拟式向数字式、由集成化向智能化、网络化的方向发展,同时具有抑制串模干扰能力强、分辨力高、线性度好、成本低等优点。随着我国四个现代化和经济发展,我国在科技和生产各领域都取得了飞速的发展和进步,发展以温度传感器为载体的温度测量技术具有重大意义。传感器属于信息技术的前沿尖端产品,尤其是温度传感器被广泛用于工农业生产、科学研究和生活等领域,数量高居各种传感器之首。温单片机原理及应用课程设计5度传感器的发展大致经历了以下三个阶段:传统的分立式温度传感器(含敏感元件);模拟集成温度传感器/控制器;数字温度传感器。温度传感器的发展现状:温度传感器使用范围广,数量多,居各种传感器之首,其发展大致经历了以下 3
12、 个阶段: 传统的分立式温度传感器(含敏感元件)热电偶传感器,主要是能够进行非电量和电量之间转换。 模拟集成温度传感器/控制器。集成传感器是采用硅半导体集成工艺制成的,因此亦称硅传感器或单片集成温度传感器。 智能温度传感器。它是微电子技术、计算机技术和自动测试技术(ATE_)的结晶。智能温度传感器内部包含温度传感器、A/D 传感器、信号处理器、存储器(或寄存器)和接口电路。从国内外来看工业生产控制中用数字温度计可清晰显示温度来防止元气件失效或损坏等不必要的非人为损失,对做好车间机器维修与保养起很重要的作用。温度是一般工业领域最容易碰到的检测参数,如环境温度的检测,工业工艺温度参数的检测,设备的
13、温度保护检测等,而市场上专用的、通用的各类温控仪产品也比较丰富。国内外的温度检测仪器的发展水平主要体现在仪器的智能化水平、测量的文的范围、测量的精度以及仪器的功耗等技术指标上,目前国内的温度测量,在精度上很少有高于 0.1的。近年来温度计正处在传统型向新型温度计转型的发展阶段,新型温度计的特点是微型化、数字化、智能化、多功能化、系统化,他不仅促进了传统产业的改造。而且可导致建立新型工业,是 21 世纪新的经济增长的。1.3 课题的设计目的1. 巩固、加深和扩大单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力。2. 培养针对课题需要,选择和查阅有关手册、图表及文献资料的自学能力,
14、提高组成系统、编程、调试的动手能力。3. 通过对课题设计方案的分析、选择、比较、熟悉单片机用系统开发、研制的过程,软硬件设计的方法、内容及步骤。1.4 课题的主要工作本课题的研究重点是设计一种基于单片机的数字温度计控制系统。能够显示温度的测量值单片机原理及应用课程设计6主要工作如下:1. 温度测试基本范围 0100。2. 精度为 0.5。3. LED 液晶显示。4. 可以设定温度的上下限报警功能。5. 实现报警提示。2 系统方案设计2.1 方案选择方案一:使用热敏电阻之类的器件利用其感温效应,在将随被测温度变化的电压或电流采集过来,进行 A/D 转换后,就可以用单片机进行数据的处理,在显示电路
15、上,就可以将被测温度显示出来,这种设计需要用到 A/D 转换电路。此方案数据处理比较麻烦,且容易产生信号失真。方案二:使用温度传感器,在单片机电路设计中,大多都是使用传感器,所以这是非常容易想到的。所以可以采用一只温度传感器 DS18B20,此传感器,可以很容易直接读取被测温度值,进行转换,就可以满足设计要求。而且此方案电路比较简单,软件设计也比较容易实现。从以上两种方案很容易看出方案二电路比较简单,软件设计容易实现,故实本设计中采用方案二。方案二可以只用一根线实现信号的双向传输,具有接口简单容易扩展等优点,DS18B20 可以直接温度转换为串行数字信号,供单片机进行处理,具有低功耗、商性能、
16、抗干扰能力强等优点。2.1 系统的总体设计方案本设计采用 STC89C52RC 单片机实现。单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制。而且体积小,硬件实现简单,安装方便。既可以单独对多 DS18B20 控制工作,还可以与 PC 机通信。另外 STC89C52RC 在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。单总线数字温度计 DS1820 采用基板专利技术来测量温度 ,温度传感器及各种数字转换电路都集成在一起 ,由总线串行输出测量值(9 位二进制编码) 。测温范围从 - 55 + 125 , 还可以读内部计数器 ,获得较高的分辨率。同时还可
17、以进行上、 下限单片机原理及应用课程设计7温度的设定和报警等。本课题主要研究如何利用 DS18B20 智能温度传感器实时显示温度,并将其与 LED 显示键盘合并使用,制成一个能实时显示温度的数字温度计。本设计将利用 DS18B20 智能温度传感器和单片小系统,设计一个数字温度采集系统。并设计一个人机接口电路:键盘采用独立按键(功能自定义) ,显示器采用共阴极 4 位 LED 显示。系统的总体设计方案框图如图 2.1 所示图 2.1 系统总体设计方案框图图 2.2 系统总体结构框图单片机原理及应用课程设计8按照系统设计功能的要求,系统主要由单片机、温度传感器 DS18B20、LED 数码显示管和
18、 PC 机组成。系统的硬件电路主要由复位电路、测温电路、显示电路、晶振电路和报警电路组成,系统总体结构方框图如图 2.2 所示。3 硬件设计3.1 STC89C52RC 芯片功能简介3.1.1 STC89C52RC 芯片简介STC89C52RC 是一种带 8K 字节闪烁可编程可檫除只读存储器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电、高性能 COMOS8 的微处理器,俗称单片机。该器件采用 ATMEL 搞密度非易失存储器制造技术制造,与工业标准的 MCS-51 指令集和输出管脚相兼容。3.1.2 引脚功能STC89C
19、52RC 芯片的引脚图如图 3.1 所示:图 3.1 STC89C52 引脚图STC89C52RC 的引脚功能如下: 主电源引脚(2 根)单片机原理及应用课程设计9VCC(Pin40):电源输入,接5V 电源GND(Pin20):接地线外接晶振引脚(2 根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端控制引脚(4 根)RST/VPP(Pin9):复位引脚,引脚上出现 2 个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,
20、接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。可编程输入/输出引脚(32 根)STC89C52 单片机有 4 组 8 位的可编程 I/O 口,分别位 P0、P1、P2、P3 口,每个口有 8 位(8 根引脚),共 32 根。PO 口(Pin39Pin32):8 位双向 I/O 口线,名称为 P0.0P0.7P1 口(Pin1Pin8):8 位准双向 I/O 口线,名称为 P1.0P1.7 P2 口(Pin21Pin28):8 位准双向 I/O 口线,名称为 P2.0P2.7 P3 口(Pin10Pin17):8 位准双向 I/O 口线,名称为 P3.0P3.7STC89
21、C52 主要功能如表 3-1 所示。表 3-1 STC89C52 主要功能主要功能特性兼容 MCS51 指令系统 8K 可反复擦写 Flash ROM32 个双向 I/O 口 256x8bit 内部 RAM3 个 16 位可编程定时/计数器中断 时钟频率 0-24MHz2 个串行中断 可编程 UART 串行通道2 个外部中断源 共 6 个中断源2 个读写中断口线 3 级加密位低功耗空闲和掉电模式 软件设置睡眠和唤醒功能1.时钟电路STC89C52 内部有一个用于构成振荡器的高增益反相放大器,引脚 RXD 和 TXD 分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部单片
22、机原理及应用课程设计10方式的时钟电路如图 3.2(a) 所示,在 RXD 和 TXD 引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在 1.212MHz 之间选择,电容值在 530pF 之间选择,电容值的大小可对频率起微调的作用。外部方式的时钟电路如图 3.2(b)所示,RXD 接地,TXD 接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于 12MHz 的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟 P1 和 P2,供单片机使用。RXD 接地,TXD 接外部振荡器。对外部振荡信号无特殊
23、要求,只要求保证脉冲宽度,一般采用频率低于 12MHz 的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟 P1 和 P2,供单片机使用。(a)内部方式时钟电路 (b)外部方式时钟电路图 3.2 时钟电路2.复位及复位电路(1)复位操作复位是单片机的初始化操作。其主要功能是把 PC 初始化为 0000H,使单片机从0000H 单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。除 PC 之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表 3-2 所示。表 3-2 一些寄存器的复位状态寄存器 复位状态 寄存器 复位状态PC 0000H TCON 00HACC 00H TL0 00HPSW 00H TH0 00HSP 07H TL1 00HDPTR 0000H TH1 00H