基于单片机的数据采集模块设计.doc_第1页
基于单片机的数据采集模块设计.doc_第2页
基于单片机的数据采集模块设计.doc_第3页
基于单片机的数据采集模块设计.doc_第4页
基于单片机的数据采集模块设计.doc_第5页
免费预览已结束,剩余34页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 本科毕业论文(设计)本科毕业论文(设计) 论文题目:基基于于单单片片机机的的数数据据采采集集模模块块设设计计 姓名: 学号: 班级: 年级: 专业: 系部: 指导教师: 完成时间: 武汉工业学院工商学院毕业论文(设计)专用稿纸 作者声明作者声明 本毕业论文(设计)是在导师的指导下由本人独立撰写完成 的,没有剽窃、抄袭、造假等违反道德、学术规范和其他侵权行 为。对本论文(设计)的研究做出重要贡献的个人和集体,均已 在文中以明确方式标明。因本毕业论文(设计)引起的法律结果 完全由本人承担。 特此声明。 作者专业: 作者学号: 作者签名: 年年 月月 日日 武汉工业学院工商学院毕业论文(设计)专用稿纸 2 基基于于单单片片机机的的数数据据采采集集模模块块设设计计 Microcontroller-based Data Acquisition Module 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 1 - 摘摘 要要 随着国民经济的发展,人们需要对各种加热炉、热处理炉、反应炉和锅炉 中温度进行监测和控制。采用单片机来对他们控制不仅具有控制方便,简单和 灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的 提高产品的质量和数量。 单片机作为微型计算机的一个分支具有功能强大、抗干扰能力强、可靠性 高、灵活性好、开发容易等优点,使得基于单片机为核心的数据采集系统在许 多领域得到了广泛的应用。当前以微机为核心的可编程数据采集与处理技术作 为数据采集的技术得到了迅速的发展,并且在适于通用微机(如 IBM PC 系列)使 用的板卡级数据采集产品也已大量出现,组成一个数据采集系统简单到只需要 一块数据采集卡,把它插在微机的扩展槽内,并辅以应用软件,就能实现数据 采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响,并随着 单片机的性能的逐步提高,其应用范围也必将越来越宽广。 本课题设计的数据采集系统是基于单片机 AT89C52 为控制核心的数据采集 系统,采用新型数字传感器、利用了总线技术、可以与上位机通信等特点。实 验证明,采用 AT89C52 开发的系统性能可靠、成本较低、软件设计灵活简单、 硬件接口功能丰富,具有扩展性好、通用性强等优点,能实现对多路温度模拟通 道信号的数据采集与处理,并将采集的数据送到 LCD 显示器显示等功能。 关键词关键词:单片机;传感器;LCD;数据采集系统 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 2 - Abstract With the development of national economy, people need all the furnace, heat treatment furnaces, reactors and boilers to monitor and control temperature, using single chip to control not only have control of their convenience, simplicity, and flexibility advantages of a large, substantial increase in temperature but also charged with the technical indicators, which can greatly improve the quality and quantity. Single chip micro-computer as a branch of a powerful, anti-interference ability, high reliability, good flexibility and easy in development, makes the MCU core based data acquisition system in many areas has been widely used. Current to the core of the programmable computer data acquisition and processing techniques as data acquisition technology has been rapid development. and in suitable microcomputer (such as the IBM PC series) used in board-level data acquisition products have also appeared in large numbers.The formation of a simple data acquisition system to only one data acquisition card, it inserted the expansion tank in the computer, and supported by application software, can achieve data acquisition functions, but this will not have the core based on single chip data acquisition system impact, and with the gradual improvement of the performance of SCM, its use will become increasingly broad scope. This topic designs data acquisition system is based on monolithic integrated circuit AT89S52 is the control core data acquisition system, used the new digital sensor, to use the bussing technique, to be possible with characteristics and so on superior machine correspondence. The experiment proved that uses at89C52 development the system performance to be reliable, the cost is low, the software design nimbly simple, the hardware interface function to be rich, has the extension to be good, versatility strong and so on merits, can realize to the multi-channel temperature analog channel signal data acquisition and processing, and will gather the data delivers functions and so on LCD monitor demonstration. Keywords: MCU; LCD; data acquisition system 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 1 - 目目 录录 引引 论论.1 1 方案论证方案论证.2 1.1 传感器部分.2 1.2 单片机的选择.3 2 硬件电路设计硬件电路设计.4 2.1 主要芯片及器件.4 2.2 AT89C52 型单片机的功能特点.4 2.3 DS18B20 型温度传感器与单片机的连接设计.7 2.4 1602 型 LCD 模块及其使用说明.15 2.5 与 PC 机通信电路.19 3 软件设计软件设计.22 3.1 单片机主控制流程图.22 3.2 DS18B20 温度测量程序设计流程图.23 3.3 液晶显示流程设计图.24 3.4 单片机串口发送流程设计.25 主要参考文献主要参考文献.28 附附 录录.29 附录 1.29 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 1 - 引引 论论 在工、农业生产和日常生活中,对温度的测量及控制占据着极其重要地位。 首先让我们了解一下多点温度检测系统在各个方面的应用领域:消防电气的非 破坏性温度检测,电力、电讯设备之过热故障预知检测,空调系统的温度检测, 各类运输工具之组件的过热检测,保全与监视系统之应用,医疗与健诊的温度 测试,化工、机械等设备温度过热检测。温度检测系统应用十分广阔。 利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网 络,系统的抗干扰性好、设计灵活、方便,而且适合于在恶劣的环境下进行现 场温度测量。单片机通过匹配 DS18B20 序列号的方式锁定位于传感器网络中不 同区位的传感器,然后读取该传感器的温度数据,再将获取的温度数据加以处 理送给液晶显示系统,液晶显示器显示出该区位的温度示数,同时单片机也将 获取到的数据通过串口送到上位机进行数据的分析和存储。本系统可以应用在 大型工业及民用常温多点监测场合。如粮食仓储系统、楼宇自动化系统、温控 制程生产线之温度影像检测、医疗与健诊的温度测试、空调系统的温度检测、 石化、机械等领域。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 2 - 1 方案论证方案论证 1.1 传感器部分传感器部分 温度检测系统有着共同的特点:测量点多、环境复杂、布线分散、现场离 监控室远等。若采用一般温度传感器采集温度信号,则需要设计信号调理电路、 A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送 到计算机去处理。这样,由于各种因素会造成检测系统较大的偏差;又因为检 测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的 稳定性和可靠性下降。多点温度检测系统的设计关键在于两部分系统中,采用 单片温度传感器,比如 AD590,LM35 等。但这些芯片输出的都是模拟信号,必须 经过 A/D 转换后才能送给单片机,这样就使得测温装置的结构较复杂。另外, 这种测温装置的一根线上只能挂一个传感器,在进行多点温度测量时占用单片机 较多的 I/O 口资源,不利于系统的扩展。而且实现这种测量方案时,也要用到 复杂的算法,一定程度上也增加了软件实现的难度。温度传感器应用范围广泛、 使用数量庞大,也高居各类传感器之首。 采用热敏电阻,可满足 40 摄氏度至 90 摄氏度测量范围,但热敏电阻精度、 重复性、可靠性较差,对于检测 1 摄氏度的信号是不适用的,而且在温度测量 系统中需要增加 AD 转换电路。所以,本次设计不采用这个方案。 在多点测温系统中,传统的测温方法是将模拟信号远距离采样进行 AD 转 换,而为了获得较高的测温精度,就必须采用措施解决由长线传输,多点测量 切换及放大电路零点漂移等造成的误差补偿问题。采用数字温度芯片 DS18B20 测量温度,输出信号全数字化。便于单片机处理及控制,省去传统的测温方法 的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此 元件线形较好。在 0100 摄氏度时,最大线形偏差小于 1 摄氏度。DS18B20 的最大特点之一采用了单总线的数据传输,由数字温度计 DS1820 和微控制器 AT89C52 构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连 接。这样,测温系统的结构就比较简单,体积也不大,且由于 AT89C52 可以带多个 DSB1820,因此可以非常容易实现多点测量.轻松的组建传感器网络。 综上所述采用温度芯片 DS18B20 测量温度,可以体现系统芯片化这个趋势。 部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且, 集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。所以集成芯 片的使用将成为电路发展的一种趋势。本方案应用这一温度芯片,也是顺应这 一趋势。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 3 - 1.2 单片机的选择单片机的选择 在选择单片机方面,现在市面上用的比较多的几种单片机之中我选用的是 AT89C52 型单片机,AT89C52 单片机价格低廉,输入输出口丰富,无需再另外 扩展,简化了外围电路。256B 内部 RAM,8KB 内部 ROM,程序存储空间大, 防止由于字模过多而造成存储空间不够。另外由于前期开发需要多次的写入、 擦除,而 89C52 可以完成 1000 次写/擦,故满足要求。且由于 AT89C52 可以带 多个 DSB1820,因此可以非常容易实现多点测量,轻松的组建传感器网络。从而 使得整个测温系统结构简单体积恰当。 单片机与传感器的连接问题上由于可以由单片机和每个传感器单独相连也 可以通过总线让单片机和多个传感器相连,为了使整个系统更加简单,耗材更 少,也为了使系统的线路更加清晰明了就选择了通过总线让单片机与传感器相 连的方式。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 4 - 2 硬件电路设计硬件电路设计 2.1 主要芯片及器件主要芯片及器件 本系统的硬件以单片机为控制核心,还有传感器、时钟芯片、液晶显示电 路三部分。如图 2.1。 2.2 AT89C52 型单片机的功能特点型单片机的功能特点 由ATMEL公司生产的AT89C52是一种低功耗、高性能CMOS8位微控制器, 具有8K在系统可编程Flash存储器。使用Atmel 公司高密度非易失性存储器技术 制造,与工业80C51产品指令和引脚完全兼容。在单芯片上,拥有灵巧的8位 CPU 和在线系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高 灵活、有效的解决方案。 AT89C52具有以下标准功能:8k字节Flash,256字节RAM,32位I/O口线, 看门狗定时器,2个数据指针,三个16 位定时器/计数器,一个6向量2级中断结 构,全双工串行口,片内晶振及时钟电路。空闲模式下,CPU停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被 保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。 而且,它还具有一个看门狗(WDT)定时/计数器,如果程序没有正常工作,就 会强制整个系统复位,还可以在程序陷入死循环的时候,让单片机复位而不用 整个系统断电,从而保护你的硬件电路。 P1.0 89S52 18B2018B20 18B2018B20 LCD 数据线 控制线 A 区 B 区 C 区 D 区 上位机 图图 2.1 系统方案原理图系统方案原理图 单 总 线 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 5 - AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个 外中断口,2个16位可编程定时计数器,2个全双工串行通信口,片上Flash允许程 序存储器在系统可编程,亦适于常规编程器。其将通用的微处理器和Flash存储 器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。见图 2.2。 图图 2 .2 AT89C52 引脚图引脚图 (1)单片机 AT89C52 的主要性能参数: 与 MCS-51 单片机产品兼容 8K 字节在系统可编 Flash 1000 次擦写周期,掉电标识 全静态操作:0Hz33Hz 三级加密程序存储器 32 个可编程 I/O 口线 三个 16 位定时器/计数器,看门狗定时器 八个中断源,双数据指针 全双工 UART 串行通道 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 6 - 低功耗空闲和掉电模式,掉电后中断可唤醒 (2)片机管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门流。 P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收 输出4TTL门电流。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输 出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输 入。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。P3 口也可作为 AT89S52 的一些特殊功能口,见表 2.1 所示: 表表 2.1 P3 各口线的第二功能表各口线的第二功能表 管脚备选功能 P3.0RXD(串行输入口) P3.1TXD(串行输出口) P3.2 (外部中断0)0INT P3.3 (外部中断1)1INT P3.4T0(记时器0外部输入) P3.5T1(记时器1外部输入) P3.6 (外部数据存储器写选通)WR P3.7 (外部数据存储器读选通)RD P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地 址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用 作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存 储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。 此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被 略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 :外部程序存储器的选通信号。在由外部程序存储器取指期间,每PSEN 个机器周期两次有效。但在访问外部数据存储器时,这两次有效的PSEN 信号将不出现。PSEN 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 7 - :当保持低电平时,在此期间外部程序存储器(0000H-Vpp/EAEA FFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为EA RESET;当端保持高电平时,此间内部程序存储器。在FLASH编程期间,EA 此引脚也用于施加12V编程电源()。Vpp XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。 2.3 DS18B20 型温度传感器与单片机的连接设计型温度传感器与单片机的连接设计 (1)DS18B20 传感器的特性 在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿 问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能 够达到较高的测量精度。另外一般监控现场的电磁环境都非常恶劣,各种干扰 信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。因此, 在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题 的最有效方案,新型数字温度传感器 DS18B20 具有体积更小、精度更高、适用 电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效 果。 美国 Dallas 半导体公司的数字化温度传感器 DS18B20 是世界上第一片支持 “一线总线”接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技 术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。一线总线 独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引 入全新概念。现在,新一代的 DS18B20 体积更小、更经济、更灵活。使你可以 充分发挥“一线总线”的优点。目前 DS18B20 批量采购价格仅 10 元左右。 (2)传感器与单片机的两种连接方式 在传感器与单片机的连接方式的选择上一般有两种选择方案,如图 2.3 所 示此方案设计中每一个 DS18B20 传感器占用一个 I/O 口,因而在编写程序时需 要针对每一个传感器进行初始化,发送温度转换命令等等增加了软件设计的繁 琐性,而且在进行温度的循环检测时,每检测一个点的温度时都要进行一次温 度转换(DA18B20 完成温度转换一次大约需要 0.5 秒时间),这样就会大大影 响整个系统数据采集和传输的实时性,而且也极大的浪费了单片机 I/O 口资源。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 8 - 单片机 传感器 4 传感器 1 传感器 2 传感器 3 图图 2.3 连接方式连接方式 1 而另外一种方案中,该方案设计中多个传感器通过单线多点的方式连接起 来构成一个传感器网络,并通过一根总线与单片机的 I/O 连接起来。见图 2.4 当 单片机向总线发送初始化命令,温度转化命令时,网络中所有的传感器都可以 接收到命令并作出响应,与方案一相比这种方案大大的加快了系统的实时响应 速度。 单片 机 传感 器 1 传感 器 2 传感 器 3 总线 图图 2.4 连接方式连接方式 2 但此设计方案需要事先获取到传感器网络中每一个传感器的 64 位序列号, 在设计程序时需要在程序段中建立序列号列表,将每一个传感器的序列号与其 位置对应起来。当我们需要获取某一点的温度数据时,我们用查表的方式找到 该点传感器的序列号,然后通过匹配序列号命令锁定该传感器。 该系统中单片机通过匹配序列号的方式,锁定传感器网络中的某一个传感 器,然后通过采取串口通信协议从数据总线上获取该点的温度数据,单片机将 获得的温度数据加以处理送给液晶显示系统并显示出该点的温度示数,同时单 片机也将温度数据通过串口送到上位机进行分析和存储。我们常用 PC 机作为 上位机,单片机做下位机,单片机完成数据的采集与过程控制,PC 机完成数据 的显示、管理、以及控制模型的优化等。PC 系列微机可利用异步通信适配器实 现串行通信。异步通信适配器的核心是通用异步接收发生器 UART,配以电平转 换电路和控制逻辑电路,其端口地址范围为 3F8H3FFH 或 2F8H2FFH。异 步通信适配器可以与 Modem 进行配合来实现远距离通信。 当某一点的温度超过该区设定的温度上限时,报警电路将启动告诉管理员 该处温度超标。所以我们选取此方案。 (1)DS18B20 单总线数字化温度传感器 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 9 - DS18B20 支持单总线接口,测量温度范围为-55C+125C,在-10+85 C 范围内,精度为0.5C。现场温度直接以单总线的数字方式传输,大大提高 了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或 过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持 3V5.5V 的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体 积更小。 (2)DS18B20 的主要特性: 适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数据 线供电。 独特的单线接口方式,DS18B20 在与微处理器连接时仅需要一条线即可 实现微处理器与 DS18B20 的双向通讯。 DS18B20 支持多点组网功能,多个 DS18B20 可以并联在唯一的三线上, 实现组网多点测温。 DS18B20 在使用中不需要任何外围元件,全部传感元件及转换电路集成 在形如一只三极管的集成电路内。 温范围55125,在-10+85时精度为0.5。 可编程的分辨率为 912 位,对应的可分辨温度分别为 0.5、0.25、 0.125和 0.0625,可实现高精度测温。 在 9 位分辨率时最多在 93.75ms 内把温度转换为数字,12 位分辨率时最 多在 750ms 内把温度值转换为数字,速度更快。 测量结果直接输出数字温度信号,以“一线总线”串行传送给 CPU,同 时可传送 CRC 校验码,具有极强的抗干扰纠错能力。 负压特性:电源极性接反时,芯片不会因发热而烧毁,但不能正常工作。 (3)DS18B20 的外形和内部结构见图 2.5: 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 10 - 电源 探测 64位ROM 和单线端口 存储器和控制逻辑 存储 器 8位CRC 产生器 温度传感器 上限触发TH 下限触发TL 图图 2.5 DS18B20 内部结构图内部结构图 DS18B20 内部结构主要由四部分组成:64 位光刻 ROM、温度传感器、非 挥发的温度报警触发器 TH 和 TL、配置寄存器。DS18B20 内部结构如图所示 DS18B20 的外形及管脚排列见图 2.6 所示。 DS18B20 123 PR-35 封装封装 GNDI/OUDD SOSI 封装封装 I/O GND NC NC Vcc NC NC NC 1 2 3 4 8 7 6 5 DS18B20 图图 2.6 DS18B20 引脚图引脚图 (4)DS18B20 引脚定义: DQ 为数字信号输入/输出端; GND 为电源地; VDD 为外接供电电源输入端(在寄生电源接线方式时接地)。 (5)DS18B20 工作原理: DS18B20 的读写时序和测温原理与 DS1822 相同,只是得到的温度值的位 数, 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 11 - 斜坡累加器 比较 预置 温度寄存器 计数器 计数器 高温度系数振 荡器 低温度系数振 荡器 预置 =0 =0 LSB置位/清0 uP DS1820 其他单线器件 增加 停止 图图2.7 DS18B20测温原理框图测温原理框图 因分辨率不同而不同,且温度转换时的延时时间由 2s 减为 750ms。DS18B20 测 温原理见图 2.7 所示。图中低温度系数晶振的振荡频率受温度影响很小,用于 产生固定频率的脉冲信号送给计数器 1。高温度系数晶振随温度变化其振荡率 明显改变,所产生的信号作为计数器 2 的脉冲输入。计数器 1 和温度寄存器被 预置在55所对应的一个基数值。计数器 1 对低温度系数晶振产生的脉冲信 号进行减法计数,当计数器 1 的预置值减到 0 时,温度寄存器的值将加 1,计 数器 1 的预置将重新被装入,计数器 1 重新开始对低温度系数晶振产生的脉冲 信号进行计数,如此循环直到计数器 2 计数到 0 时,停止温度寄存器值的累加, 此时温度寄存器中的数值即为所测温度。图 6 中的斜率累加器用于补偿和修正 测温过程中的非线性,其输出用于修正计数器 1 的预置值。 (6)DS18B20 有 4 个主要的数据部件: 光刻 ROM 中的 64 位序列号是出厂前被光刻好的,它可以看作是该 DS18B20 的地址序列码。64 位光刻 ROM 的排列是:开始 8 位(28H)是产品 类型标号,接着的 48 位是该 DS18B20 自身的序列号,最后 8 位是前面 56 位的 循环冗余校验码(CRC=X8+X5+X4+1)。光刻 ROM 的作用是使每一个 DS18B20 都各不相同,这样就可以实现一根总线上挂接多个 DS18B20 的目的。 DS18B20 中的温度传感器可完成对温度的测量,以 12 位转化为例:用 16 位符号扩展的二进制补码读数形式提供,以 0.0625/LSB 形式表达,其中 S 为符号位。 如表 2.2 所示,这是 12 位转化后得到的 12 位数据,存储在 18B20 的两个 8 比特的 RAM 中,二进制中的前面 5 位是符号位,如果测得的温度大于 0,这 Comment L1: 你很多图的表格没有 框,请重新编辑 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 12 - 5 位为 0,只要将测到的数值乘于 0.0625 即可得到实际温度;如果温度小于 0, 这 5 位为 1,测到的数值需要取反加 1 再乘于 0.0625 即可得到实际温度。 表表 2.2 DS18B20 温度值格式表温度值格式表 Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0 LS Byte 3 2 2 2 1 2 0 2 1 2 2 2 3 2 4 2 Bit15Bit14Bit13Bit12Bit11Bit10Bit9Bit8 MS ByteSSSSS 6 2 5 2 4 2 例如+125的数字输出为 07D0H,+25.0625的数字输出为 0191H,- 25.0625的数字输出为 FF6FH,-55的数字输出为 FC90H。如表 2.3 所示。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 13 - 表表 2.3 DS18B20 温度数据表温度数据表 温度 C数据输出(二进制)数据输出(十六进制) 12500000000 1111101000FA +2500000000 001100100032 +1/200000000 000000000001 000000000 000000000000 -1/211111111 11111111FFFF -2511111111 11001110FFCF -12511111111 10010010FF92 DS18B20 温度传感器的存储器 DS18B20 温度传感器的内部存储器包括一个高速暂存 RAM 和一个非易失 性的可电擦除的 EEPRAM,后者存放高温度和低温度触发器 TH、TL 和结构寄 存器。 配置寄存器 该字节各位的意义见表 2.4 所示。 表表 2.4 配置寄存器结构配置寄存器结构 TMR1R011111 低五位一直都是“1”,TM 是测试模式位,用于设置 DS18B20 在工作模 式还是在测试模式。在 DS18B20 出厂时该位被设置为 0,用户不要去改动。R1 和 R0 用来设置分辨率,见表 2.5 所示(DS18B20 出厂时被设置为 12 位)。 表表 2.5 温度分辨率设置表温度分辨率设置表 R1R0分辨率温度最大转换时间 009 位93.75ms 0110 位187.5ms 1011 位375ms 1112 位750ms (7)高速暂存存储器 高速暂存存储器由 9 个字节组成,其分配如见 2.6 所示。当温度转换命令 发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第 0 和第 1 个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在 后,数据格式如表所示。对应的温度计算:当符号位 S=0 时,直接将二进制位 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 14 - 转换为十进制;当 S=1 时,先将补码变为原码,再计算十进制值。表 2.6 是对 应的一部分温度值。第九个字节是冗余检验字节。 表表 2.6 DS18B20 暂存寄存器分布暂存寄存器分布 寄存器内容字节地址寄存器内容字节地址 温度值低位(LSByte)0保留5 温度值位(MSByte)1保留6 高温限值(TH)2保留7 低温限值(TL)3CRC 校验值8 配置寄存器4 根据 DS18B20 的通讯协议,主机(单片机)控制 DS18B20 完成温度转换 必须经过三个步骤:每一次读写之前都要对 DS18B20 进行复位操作,复位成功 后发送一条 ROM 指令,最后发送 RAM 指令,这样才能对 DS18B20 进行预定 的操作。复位要求主 CPU 将数据线下拉 500 微秒,然后释放,当 DS18B20 收 到信号后等待 1660 微秒左右,后发出 60240 微秒的存在低脉冲,主 CPU 收到此信号表示复位成功。其 ROM 指令表见表 2.7 所示。 表表 2.7 ROM 指令表指令表 指令约定代码功能 读 ROM33H读 DS1820ROM 中的编码(即 64 位地址) 符合 ROM55H 发出此命令之后,接着发出 64 位 ROM 编码,访问单总线 上与该编码相对应的 DS1820 使之作出响应,为下一步对该 DS1820 的读写作准备。 搜索 ROM0F0H 用于确定挂接在同一总线上 DS1820 的个数和识别 64 位 ROM 地址。为操作各器件作好准备。 跳过 ROM0CCH 忽略 64 位 ROM 地址,直接向 DS1820 发温度变换命令。 适用于单片工作。 告警搜索命 令 0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。 其 RAM 指令表见表 2.8 所示。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 15 - 表表 2.8 RAM 指令表指令表 指令约定代码功 能 温度变换44H 启动 DS18B20 进行温度转换,12 位转换时最长为 750ms(9 位为 93.75ms)。结果存入内部 9 字节 RAM 中。 读暂存器0BEH读内部 RAM 中 9 字节的内容 写暂存器4EH 发出向内部 RAM 的 3、4 字节写上、下限温度数据命令,紧跟该 命令之后,是传送两字节的数据。 复制暂存器48H将 RAM 中第 3、4 字节的内容复制到 EEPROM 中。 重调 EEPROM将 EEPROM 中内容恢复到 RAM 中的第 3、4 字节。 读供电方式0B4H 读 DS18B20 的供电模式。寄生供电时 DS18B20 发送“0”,外接电 源供电 DS18B20 发送“1”。 (8)DS18B20 的功能 当 DSI8B20 接收到温度转换命令后,开始启动转换。转换完成后的温度值 就以 16 位带符号扩展的二进制补码形式存储在高速暂存存储器的 0,1 字节。 单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式以 0.0625LSB 形式表示。温度值格式如图 4 所示,其中“S”为标志位,对应 的温度计算:当符号位 S=0 时,直接将二进制位转换为十进制;当 S=1 时,先 将补码变换为原码,再计算十进制值。DSI8B20 完成温度转换后,就把测得的 温度值与 TH 做比较,若 TTH 或 TTL,则将该器件内的告警标志置位,并 对主机发出的告警搜索命令做出响应。具体算法分析,会在后文中提到。 (9)DSl820 工作过程中的协议: 初始化ROM 操作命令存储器操作命令处理数据 初始化:单总线上的所有处理均从初始化开始 ROM 操作命令:总线主机检测到 DSl820 的存在便可以发出 ROM 操作命 令之一这些命令见表 2.9。 表表 2.9 ROM 操作命令操作命令 指令代码 Read ROM(读 ROM)33H Match ROM(匹配 ROM)55H Skip ROM(跳过 ROM)CCH Search ROM(搜索 ROM)F0H Alarm search(告警搜索)ECH 处理数据如表 2.10 所示。 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 16 - 表表 2.10 存储器操作命令存储器操作命令 指令代码 Write Scratchpad(写暂存存储器)4EH Read Scratchpad(读暂存存储器)BEH Copy Scratchpad(复制暂存存储器)48H Convert Temperature(温度变换)44H Recall EPROM(重新调出)B8H Read Power supply(读电源)B4H (10)DS18B20 温度处理模块与 AT89C52 电路连接图,如图 2.8 所示。 图图 2.8 温度模块与温度模块与 AT89C52 的连接图的连接图 2.4 1602 型型 LCD 模块及其使用说明模块及其使用说明 (1)接口信号说明 编号符号编号符号 1VSS电源地9D2Data I/O 2VDD电源正极10D3Data I/O 3VL液晶显示偏压11D4Data I/O 4RS数据/命令选择端12D5Data I/O 5R/W读/写选择端13D6Data I/O 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 17 - 6E使能信号14D7Data I/O 7D0Data I/O15BLA背光源正极 8D1Data I/O16BLK背光源负极 (2)控制器接口说明(HD4478 及兼容芯片) 基本操作时序 输入输出 读状态RS=L,RW=H,E=HD0D7=状态字 写指令RS=L,RW=L,D0D7=指令,E=无 读数据RS=H,RW=H,E=HD0D7=数据 写数据RS=H,RW=L,D0D7=数据,E=无 状态字说明 STA7STA6STA5STA4STA3STA2STA1STA0 D7D6D5D4D3D2D1D0 STA6-0当前数据地址指针的数值 STA7读写操作使能1:禁止 0:允许 RAM 地址映射图 控制器内部带 808 位(80 个字节)的 RAM 缓冲区,对应关系见图 2.9 所 示 LCD 16 字 X 2 行 010002030405060708090A0B0C0D0E0F10 27 404142434445464748494A4B4C4D4E4F50 67 图图 2.9 RAM 地址映射地址映射 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 18 - (3)初始化设置 显示模式设置 指令码功能 00111000设置 162 显示,57 点阵,8 位数据接口 显示开/关及光标设置 指令码功能 00001DCB D=1 开显示;D=0 关显示 C=1 显示光标;C=0 不显示光标 B=1 光标闪烁;B=0 光标不显示 000001NS N=1 当读或写一个字符后地址指针加一, 且光标加一 N=0 当读或写一个字符后地址指针减一, 且光标减一 S=1 当写一字符,整屏显示左移 (N=1) 或右移(N=0) ,以得到光标不移动而屏 幕移动的效果 S=0 当写一个字符,整屏显示不移动 (4)数据控制 控制器内部设有一个数据地址指针,用户通过它们来访问内部的全部 80 字 节 RAM。 数据指针设置 指令码功能 80H+地址码(0-27H,40H- 67H) 设置数据地址指针 其他设置 指令码功能 01H 显示清屏:1数据指针清零 2所有显示清零 02H显示回车:1数据指针清零 (5)初始化过程(复位过程) 延时 15ms 写指令 38H(不检测忙信号) 延时 5ms 写指令 38H(不检测忙信号) 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 19 - 延时 5ms 写指令 38H(不检测忙信号) (以后每次写指令、读/写数据之前均需检测忙信号) 写指令 38H:显示模式设置 写指令 08H:显示关闭 写指令 01H:显示清屏 写指令 06H:显示光标移动设置 写指令 0CH:显示开及光标设置 (6)单片机与液晶模块的连接见图 2.10。 图图 2.10 单片机与液晶模块连接单片机与液晶模块连接 P0-07 P2.5 P2.6 P2.7 89S52 DB07 E RW RS LCD 模块 (7)显示部分 本设计的显示部分由液晶显示器LCD1602来完成。其显示部分引脚接口如 图2.11所示。 图图2.11 显示电路原理图显示电路原理图 武汉工业学院工商学院毕业论文(设计)专用稿纸 - 20 - 2.5 与与 PC 机通信电路机通信电路 AT89C52 有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地 进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是 RS232 电平的,而单片机的串口是 TTL 电平的,两者之间必须有一个电平转换电路, 设计 RS232 接口的目的主要是满足综合保护器串口通信要求和综合保护器的程 序下载。通过将串行接口

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论