毕业设计(论文)基于单片机的RS485总线采样节点设计与实现

上传人:仙*** 文档编号:33408444 上传时间:2021-10-17 格式:DOC 页数:36 大小:715.53KB
收藏 版权申诉 举报 下载
毕业设计(论文)基于单片机的RS485总线采样节点设计与实现_第1页
第1页 / 共36页
毕业设计(论文)基于单片机的RS485总线采样节点设计与实现_第2页
第2页 / 共36页
毕业设计(论文)基于单片机的RS485总线采样节点设计与实现_第3页
第3页 / 共36页
资源描述:

《毕业设计(论文)基于单片机的RS485总线采样节点设计与实现》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于单片机的RS485总线采样节点设计与实现(36页珍藏版)》请在装配图网上搜索。

1、-论文题目论文题目 基于单片机的 RS485 总线采样节点设计与实现姓姓 名名 周群丰周群丰学学 院院 东北大学东软信息学院东北大学东软信息学院专专 业业 电子信息工程(嵌入式系统工程方向)电子信息工程(嵌入式系统工程方向)指导教师指导教师 闫慧琦闫慧琦讲师讲师备备 注注2011 年年 5 月月-毕业设计(论文)任务书毕业设计(论文)任务书毕业设计(论文)题目:毕业设计(论文)题目:基于单片机的 RS485 总线采样节点设计与实现设计(论文)的基本内容:设计(论文)的基本内容: 本设计是基于单片机采集温度采样值,再通过 RS485 总线传送到基于 ARM 的那个 RS485 节点上,从而实现采

2、集温度并通过 RS485 传送。毕业设计(论文)专题部分:毕业设计(论文)专题部分:题目:题目:设计或论文专题的基本内容:设计或论文专题的基本内容:学生接受毕业设计(论文)题目日期学生接受毕业设计(论文)题目日期第第 1 周周指导教师签字:指导教师签字:-2010 年年 11 月月 29 日日基于单片机的 RS485 总线采样节点设计与实现摘要本论文介绍了基于 RS485 串行总线标准的温度采集系统的硬件和软件设计。温度数据的采集由以 AT89S52 单片机为核心的系统完成,采集的数据经 RS485 串行总线上传给 ARM 微处理器进行存储和处理。系统的软件包括单片机程序和计算机程序,分别应用

3、 C 语言编写。相应的硬件和软件抗干扰措施保证了系统的稳定性和可靠性。本文介绍了一种基于 RS-485 的单片机与 ARM 之间文件传输的实现方案。给出了 RS-485驱动程序的设计方法 ,详细阐述了自定义通信协和实现程序。在传统模式下的温度测量采用热电偶或热敏电阻,其输出是模拟信号,必须转换成数字信号,然后与单片机进行传输。因此,它是相当复杂而且成本高。近年来,美国生产的 DS18B20,作为一种新的单总线数字温度传感器被广泛使用。在前台实时温度数据采集和转换,通过传感器 DS18B20 的数字式分为单片机发送给 LED 显示模块。此外,接收温度数据通过 RS - 485 接口传送到后端的

4、ARM 中显示。关键词:关键词:AT98S52, RS485,温度采集,串行通信东北大学东软信息学院毕业设计(论文) Abstract-Design and realization of the RS485 node sampling based on MCUAbstract The hardware and software design of the temperature acquisition system based on RS485 serial communication criterion is introduced. The acquisition of temperatur

5、e data is finished by the system taking AT89S52 MCU as core. Collected data can be sent up to ARM through RS485 serial bus, stored and processed in it. The software of this system includes MCU and ARM pro-grams, programmed with C language. Some corresponding software. And hardware anti -disturbance

6、measures assure this systems stability and reliability. The implement of the file transfer between MCU and ARM based on RS-485 are introduced in this paper. The design method of the RS-485 driver is given. The user- defined communication protocol and the program are discussed in detail.Under the tra

7、ditional model of the traditional temperature measurement using thermocouples or thermistor, the output is an analog signal, must be converted into a digital signal and then transmitted with the microcontroller. Therefore, it is quite complicated and costly. In recent years, U.S. production of DS18B

8、20, as a new single-bus digital temperature sensors are widely used. Real-time temperature data collection in the foreground and conversion, through the sensor into digital DS18B20 send microcontroller LED display modules.In addition, the temperature data received through the RS - 485 Interface tran

9、sfer to the rear of the ARM in the display. Key words: AT89S52,RS-485,Temperature Acquisition, Serial Communication东北大学东软信息学院毕业设计(论文) 目录- 1 -目录任务书I摘要IIABSTRACTIII第 1 章绪论11.1国内外现状11.2应用范围1第 2 章关键技术介绍22.1关键性开发技术的介绍22.1.1RS-485 总线介绍22.1.2MAX485 芯片原理32.1.3DS18B20 温度传感器原理3第 3 章系统分析43.1构架概述43.1.1系统构架43.1.

10、2数据采集模块构架43.2系统开发环境53.3系统任务的可行性分析5第 4 章系统设计74.1设计指导思想和原则74.1.1指导思想74.1.2硬件设计原则74.2系统概述7东北大学东软信息学院毕业设计(论文) 目录- 2 -4.3系统的功能结构设计74.3.1DS18B20 接口电路74.3.2LED 数码管的电路设计84.3.3MAX485 串行接口电路设计94.3.4RS232 串口通信电路94.3.5主控制模块电路设计104.3.6电源监测电路114.4DS18B20 硬件设计114.5RS485 串口通信模块设计15第 5 章系统实现175.1主程序流程175.2RS-485 串口通

11、信主要程序175.3DS18B20 模块程序设计195.3.1DS18B20 的工作过程195.3.2DS18B20 温度传感器主要程序20第 6 章系统测试246.1测试方案及测试用例246.1.1电源监测246.1.2LED 检测246.1.3通过 RS485 连接 ARM 共同检测24第 7 章结论25附录26参考文献28致谢29东北大学东软信息学院毕业设计(论文) 第 1 章 绪论- 1 -第第 1 章章绪绪论论本篇论文介绍将通过一个单片机系统作为温度采集的一个节点,单片机系统内通过温度传感器 DS18B20 采集温度,并将温度数据显示到 LED 数码管,同时将采集来的数据通过 RS-

12、485 总线传送到 ARM 级进行显示。用美国 DALLAS 公司生产的 DS18B20 温度传感器采集温度和 A/D 转换合为一体,然后输出的数字量,硬件设计电路时结构不复杂,与单片机接口很少需要其他的元件。广泛运用在距离远、节点分布多的地方,可以广泛的应用。因为当今数字技术的发展和计算机的应用非常广泛,很多生产技术和工艺都需要计算机的控制。广泛使用的 RS-485 是因为他的传输距离非常远。并且通过 RS485 总线构成的分部数据采集与设备设计简单,同时具有成本低,系统不复杂,具有能够远距离通讯等特点。1.1国内外现状国内外现状当今世界 RS-485 串口被广泛运用于生活生产中。随着 80

13、 年代初单片机技术的成熟而发展起来的,现在世界仪表市场基本被智能仪表所垄断。究其原因就是企业信息化的需要,企业在仪表选型时其中的一个必要条件就是要具有联网通信接口。1.2应用范围应用范围仪器仪表:医疗器械、色谱仪、智能仪器、示波器。工业:过程控制、工业机器人、电机控制、数字控制。民用:高级电视游戏机、电子玩具、录像机、激光盘驱动。导航与控制:导弹控制、鱼雷制导控制、智能武器装置、航天导航系统。东北大学东软信息学院毕业设计(论文) 第 2 章 关键技术介绍- 2 -第第 2 章章关键技术介绍关键技术介绍2.1关键性开发技术的介绍关键性开发技术的介绍2.1.1RS-485 总线介绍总线介绍RS-4

14、85 就是电气接口规范,属于 7 层开放系统互连(Open SysyemInterconnection,OSI) 模型物理层的协议标准。他只需要在平衡驱动器和接收器的电气特性,不需要连接插件、输电线路和通信协议。他支持半双工或全双工模式,网络拓扑结构通常用终端匹配的总线型,不支持环形或星形网络。由于 RS - 485 接口是 RS 422 基础发展而来的, RS 485 总线采用平衡传输的方式,需要接到传输线路终端电阻等。RS - 485 接口可与四线线使用时,同时可以实现真正意义的两线多点双向通信。而四线连接时,只能实现多点通信,这只能有一个主设备和多个从设备上。无论二线四线总线连接可以收到

15、多达 32 个设备。的 RS - 485 共模之间-7 至+12 V 输出电压的 RS - 485 接收器最小输入阻抗为 12k 的 RS - 485 约 1219m 的最大传输速率为10Mb/s 最大传输平衡双绞线的传输速率是成反比的,在 100KB/s 速率以下的长度,它可能使用的固定最长长度的电缆长度。只有在很短的距离,获得最高的传输速率。100m 长的双绞线一般最高只能是 1Mb / s 的传输速率。RS - 485 需要两个终端电阻,电阻值要求等于传输电缆的特性阻抗。在一定时间没有终端电阻时,传输距离,一般在 300m 以下的无阻力,终止电阻端接在传输总线的两端。的 RS-485 通

16、常用于平衡传输和差分接收方式实现通信。使用两种常用的双绞线传输线路,所以一般的模式具有很强的抗干扰能力。接收灵敏度非常高,可检测电压可低为 200mV,有些芯片已经能够探测到的电压低至 50mV 的(如 MAX485 等) 。在同一时间,最大传输速率,最大传输距离也大大提高。RS-485 特点:1. RS-485 电气特性:逻辑“1”两条线之间的电压差为+(2-6)V 表示,逻辑“0”两条线之间的电压差为 -(2-6)V 表示。接口比 RS-232 的信号水平降低,就不容易损坏接口电路芯片,水平和 TTL 电平电路兼容,可方便地连接;2. .RS-485 最大数据传输速率是 10Mbps;3.

17、 RS-485 接口是由平衡差分接收器和驱动程序组合,抗干扰能力增强,即良好的噪声抑制性。4. RS-485 的接口标准,最大传输距离为 4000 米,实际上可以高达 3000 米另外他东北大学东软信息学院毕业设计(论文) 第 2 章 关键技术介绍- 3 -RS-232 接口总线只允许连接一个收发器,就是单站能力。在 RS -485 接口总线可以连接多达 128 个收发器。具有多站能力,这样用户可以利用单一的 RS -485 网络接口的优势,易于安装设备。2.1.2MAX485 芯片原理芯片原理采用单一+5 V 电源供应工作,额定 300A 电流,半双工通信。它完成了 TTL 电平的 RS -

18、 485 功能转换。MAX485 芯片和引脚结构非常简单,包含一个内置驱动器和接收器。RO 端和 DI 端,分别是接收器和驱动器的输入输出,仅与单片机可以连接到RXD 和 TXD;RE 为 0 时,启用了接收和发送端,当 DE 逻辑 0 时,该设备是接收状态,当 DE 为逻辑 1,设备正在发送的状态,因为在半双工状态 MAX485 的工作,所以只使用一个脚微控制器来控制这两个引脚,A 端跟 B 端分别接收和发送的差分输出端,当 B 端比 A 端高,代表发送的数据为 1;当 A 低于 B 端水平,代表发送的数据为 0。在单片机的接线非常简单。MAX485 只有一个信号控制就可以接收和发送。而在

19、A 和 B之间的加上匹配电阻,通常可以是 100 电阻。2.1.3DS18B20 温度传感器原理温度传感器原理以前的模拟信号远距离温度测量系统中,必须很好解决引线误差补偿技术、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。另外一般监控现场的电磁环境都比较严重,每个干扰信号都非常强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。因此,在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题的最有效方案,新型数字温度传感器 DS18B20 具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果。东

20、北大学东软信息学院毕业设计(论文) 第 3 章 系统分析- 4 -第第 3 章章系统分析系统分析3.1构架概述构架概述3.1.1系统构架系统构架温度采集及显示系统如图 3.1 所示,整个系统由数据采集(采集温度)模块、RS-485 通信、基于 ARM 显示模块和基于 ARM 温度报警模块所构成。采用 RS-485 通信方式,通过 RS-485 总线能提高通信距离,提高可靠性,抗干扰性强。本文重点研究的是以数据采集模块为核心的,通过 RS-485 总线传输的设计。温度采集模块温度ARM显示模块RS-485传输图 3.1 系统的功能构架数据采集模块由单片机系统和 RS-485 传输设备组成,数据采

21、集模传输是通过 RS-485 传输设备来完成信息的发送与接收,最终用数据采集模块将数据采集后,通过 RS-485 传输设备发送出去,然后 ARM 的 RS-485 传输设备负责接收,最终在 ARM 的显示屏上显示出来,达到我们对数据的读取的目的。本设计采用的是宇泰科技生产的RS-485 传输设备。3.1.2核心模块构架核心模块构架根据需求调研结果确定本系统主要包括以下功能模块,传感器模块、单片机模块、LED 数码管模块、串口 RS-485 模块,如图 3.2 所示。微控制器 AT89S52,利用MAX813L 进行电源的检测,温度采集部分使用的是温度传感器 DS18B20,这种传感器是独特的是

22、单口接线方式传输技术,在与单片机连接时只需要一条口线即可实现单片机与 DS18B20 的双向通讯,不需要其他任何的器件。传输通信利用 RS-485 传输设备,RS485 总线为多机通信的在实际生活中有着十分重要的地位,他的其在传输速率、通信速率、传输距离、多机连接等方面都有着非常大的改善。使用 MAX7219 驱动 8位 LED 数码管显示,经济高效。 东北大学东软信息学院毕业设计(论文) 第 3 章 系统分析- 5 -温度采集模块单片机模块LED显示模块RS-485传输模块ARM显示模块核心控制图 3.2 核心模块构架图3.2系统开发环境系统开发环境 硬件配置:硬盘:120GB 内存:2GB

23、操作系统:WindowsXP开发工具:Microsoft Visual Studio 2008 Altium Designer 6.9 Keil C513.3系统任务的可行性分析系统任务的可行性分析由于 RS-485 总线运用了差分电平传输数据,所以传输的距离比 RS-232 长许多,最长可以达到 3000 m,所以很适合在工业上得到应用。不过与 CAN 总线等更为优秀的工业总线对比,RS-485 的修改的能力还有一定差距,因此在软件设计的部分还行进步的注意,尽量避免错误的发生否则会很难实现预期目标。另外,假如系统的数据比较多需要很大的运算量,需要对其作立即反应的应用场所不适合用 RS-485

24、 总线进行传输。尽管 RS-485 总线存在一些小毛病,不过因为它的价格相对便宜、线路设计简单、易操作,只要处理好各个细小漏洞,在某些工程应用中还是可以得到广泛的应用。由 DS18B20 温度传感器和单片机 AT89S52 组成的温度实时检测装备,可以直接传输温度的数字信号。因此这样系统的结构相对容易,体积很小,方便移动。使用单片机控制,软件编程的自由得当,所以本次设计采用 DS18B20 传感器测量温度,输出信号的全部数字化。节省了一起的测温时的需要很多外围设备,电路方便单片机控制及处理。DS18B20 的特点在于采用了单总线的数据传输。1一致性本次项目设计将会与所做项目的实现各项功能要求相

25、一致。2合理性东北大学东软信息学院毕业设计(论文) 第 3 章 系统分析- 6 -本项目设计所提出的设计方法和标准将是合理的、恰当的。3可追踪性对项目设计所提出的各项要求将可以得到它的清晰的源流。东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 7 -第第 4 章章系统设计系统设计4.1设计指导思想和原则设计指导思想和原则4.1.1指导思想指导思想(1)坚持统一规划、科学管理、服务应用的指导方针;(2)充分利用现有工作基础和成果,进行改进、提升和整合,避免重复建设。4.1.2硬件设计原则硬件设计原则(1)标准化和规范化原则(2)安全性原则(3)完备性原则4.2系统概述系统概述AT8

26、9S52 单片机是本次设计的主要部分,获得温度的参数继而转化为十进制和与之相应的 ASCII 值然后在显示在数码管的温度值,同时通过 RS-485 总线传到 ARM微处理器进行下一步应用。他的工作过程是先初始化各个器件达到合适环境进行工作,然后初始化 DS18B20 跟数码管,然后读取检测的温度数据,同时把采集数据进行传送到数码管上进行显示。并且通过 RS485 总线传送。4.3系统的功能结构设计系统的功能结构设计4.3.1DS18B20 接口电路接口电路图 4.1 DS18B20 接口电路DS18B20 的是本次设计的温度检测部分,它使用独特的单口传输模式,只需要一个端口线可 DS18B20

27、 的双向通信,而不需要用其他设备,所有的传感器和转换电路都东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 8 -是如集成电路就一个 3 极管,外部电源电压范围 3.05.5V 的范围,从-55到+125温度范围内可编程温度传感器 DS18B20,它可以模拟温度传感器和信号处理电路的通讯手段与单片机来完成数据收集和处理。其最大的特点是单总线数据传输模式中,I/O来完成相同的数据。电源 DS18B20 的 2 种方式为:外部电源和寄生电源模式。当寄生供电模式,VDD 和 GND 接地,它需要一个远程温度探头,而且空间小。但寄生方法需要一个强大的上拉电源电路,软件控制变得非常复杂,其性

28、能这种芯片也有所下降。因为作业前 DS18B20 的电流已经为 1 mA 达到,所以 4.7K 上拉电阻不能单独提供电源工作的时候,许多 DS18B20 的只有一个 I/O 线,同时对温度的转换,这个问题就显得非常的严重。在这种设计的考虑只是一个单点温度测量,因此采用外部电源供电。4.3.2LED 数码管的电路设计数码管的电路设计图 4.2 MAX7219 驱动数码管电路图 4.2 为 MAX7219 芯片驱动数码管电路是一种集成化的串行输入/输出共阴极显示的驱动器,它连接微处理器与 8 位数字的 7 段数字 LED 显示。东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 9 -图

29、 4.3 8 个 7 段数码显示管图 4.3 为 8 个数码管显示电路,其利用 MAX7219 驱动数码管显示,为数码管链接电路,利用 8 个三极管提供显示的驱动电流。4.3.3MAX485 串行接口电路设计串行接口电路设计 图 4.4 MAX485 电路设计图 4.4 为芯片 MAX485 电路设计,MAX485 的驱动器不受任何限制,最大时可以达到 2.5Mbps 的传输速度。这种收发器在驱动器 是禁用的满载或者空载的形式下,需要的电源电流是 120A 到 500A 内。所有元件都是工作在 5V 单电源下。MAX485 实用于 RS-485 与 RS-422 通信等低功耗的收发器上。驱动器

30、起到短路电流限制的作用,而且可以通过关断电路 让他驱动器一直输出高阻抗 的状态。接收器输入具有对 失去保护特性,当输入 开路时,以确保逻辑高电平 的输出。具备很好的抗干扰的能力。东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 10 -4.3.4RS232 串口通信电路串口通信电路图 4.5 RS232 串口通信电路图 4.5 为串行通信电路,RS - 232 接口与 PC 机作为串行接口使用最广泛应用的通信应用,RS - 232 串行数据标准协议 020000bit/ s 的范围之间的数据通信,传输速率和现在的 DTE 数据终端设备已经成为计算机和数据通信设备 DCE 接口标准。

31、相关数据:控制信号:信号接通状态,比有效电平大于+3 V。断开状态时,信号无效的要小于 3V,在实际应用中应保证在(315)V,逻辑“1”的电平低于-3V,逻辑“0”的电平高于+3V。4.3.5主控制模块电路设计主控制模块电路设计图 4.6 主控制电路图 4.6 为 AT89S52 单片机一种拥有 40 引脚的双列直插式芯片,AT89S52 单片机东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 11 -微控制器,四个 8 位 I / O 端口(为 P0,P1,P2 和 P3)的,每个 I / O 线可以作为一个单独的输入或输出使用,是整个电路的核心部分。他的的主控制电路如图 4.

32、6 所示,RST 终端是单片机复位输入端,接上电容,电阻和开关后,可形成上电复位电路。他XTAL1 XTAL2 端的结束,也可用来连接带微调外部晶振跟电容,然后是他在单片机内部振荡器反相放大器是输入,外部晶振器连接的另一端 XTAL2 上,在这是芯片里振荡器反相放大器的输出。4.3.6看门狗定时电路看门狗定时电路图 4.7 电源检测电路图 4.7 为本次设计的电源检测电路,电源监测采用的是 MAX813L,他是专门用来实现电源电压监测的芯片,它不仅可以对+5V 电源电压进行检测,还能对别的电源电压(如 12V)进行实现检测,另外它他内部还带有看门狗定时电路,适用于单片机的系统。在这个系统中,在

33、周期 1.6 秒内单片机为 MAX813L 一直提供喂狗信号,每当信号中断,芯片自动产生复位信号,使单片机复位。4.4DS18B20 硬件设计硬件设计一DS18B20 温度传感器的特性:(1) 可编程的分辨率为 9 至 12 四个位,相应的温度分别为的 0.5,0.25,0.125和 0.0625,能够实现高精度温度测量;(2)独特的单线接口,即能通过其它 I/O 口线与微机接口,也可以通过串行口线,无需变换别的电路,直接输出被测温度值;(3)DS18B20 不需要备份电源,既可用外部电源供电,也可采用数据线供电;(4)温度值会直接输出数字温度的信号,可以运用一个线串行传给单片机,并且也可传送

34、 CRC 校验码,具有非常好的抗干扰的能力同时找出错误;东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 12 -(5)测量范围是-55+125之间,固有测温分辨率为 0.5;(6)DS18B20 温度传感器能够实现多个组网,多个 DS18B20 可以共通挂在唯一的总线上,以实现本地区的多点温度;(7)DS18B20 在设计中不需要别围元件,全部的传感元件跟转换电路都集成到在于一只三极管的集成电路中;(8) DS18B20 的负特点:电源极性反向,该芯片将不会因为过热而报废,但不能继续工作。(9)警告温度搜索的指令可以依靠识别寻址温度在修订的极限之外的器件;(10)适用的电压范围非

35、常大,电压范围在 3.05.5V;(11)应用范围包括消费类的产品、工业系统中温度计或任何热敏系统。二.DS18B20 温度传感器的内部结构他的内部结构如图 4.8 所示。它是用一个 64 位光刻温度传感器、一个 ROM、非挥发性温度警报触发器 TL 和 TH、跟配置寄存器一起组成的。图 4.8 DS18B20 内部结构图引脚说明:DS18B20 的 3 引脚封装,如图 4.9 所示。其中,GND 为电源接地用的;DQ为数字信号输入/输出端;VDD 到一个外接电源输入。图 4.9 DS18B20 封装东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 13 -三DS18B20 控制接

36、口介绍1温度传感器DS18B20 通上电以后,处于空闲的状态,要启动模板和温度检测,处理器准备向他输出 Convert T44h 命令,转换后返回到空闲状态 DS18B20 的温度数据为 16 位补码的形式存储到温度寄存器中,如表 4,1 所示。表 4.1 温度寄存器的格式264 位光刻 ROM在出品前,光刻 ROM 中的 64 位的序列码就已经被光刻好的,可以把他可以当做这个 DS18B20 的地址序列码。ROM 中 64 位序列码的排列分别是:前面的 8 个是产品样品的标记,然后下来的 48 位是 DS18B20 自己的序列号,最后面的 8 个数是之前 56位的循环的验证码。光刻 ROM

37、是为了使每个 DS18B20 都不一样,正因为这样所以一个总线上才可以挂多个 DS18B20 温度传感器。表 4.2 中符号位表面温度是负值或是正值,负值时 S=1,正值时 S=2,表 4.2 举例了数据输出数据与对应温度。就以 14 位转化为例:12 位符号扩展的读数 0.0625/LSB 的表达情况,其中 S 为符号位补码形式。如果输出数值是 125转化 07DOH,-0.5 的数字输出是 0191H,FF6FH 是-25.0625的数字输出,在-55为 FC9OH 数字输出。如下表所示表 4.2 DS18B20 中的传感器的温度的测量值东北大学东软信息学院毕业设计(论文) 第 4 章 系

38、统设计- 14 -3配置寄存器配置寄存器是 R1 跟 R0 组成。这个字节的意义如表 4.3 所示,是低五位的都是1,而 TM 是测试模式位,用于设置在测试模式或工作模式 DS18B20 的。在 DS18B20生产的时候这位被默认设置成 0,不可以用别的办法更改这个设置。R=1 和 R=0 用来设置分辨率。表 4.3 配置寄存器结构表 4.4 温度分辨率设置表4非挥发的温度报警触发器 TH 和 TL当完成 DS18B20 的温度变化,它将会把测得的温度值和 TL,TH(TL 和 TH 的最低和最高温度检查)作比较。如果 TTH,那么系统将会允许的报警标志位的值,同时警告搜索主机传输命令作出反应

39、。所以,你可以使用多个 DS18B20 的在同一时间同时检测报警温度的探索与搜索。如果温度超过这个极限温度点,报警主机可以使用搜索命令被确认的报警装置。高低温报警触发器 TL 和 TH,配置寄存器是一个字东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 15 -节的 EEPROM 的组合,只要记忆功能命令连接到的 TL,TH,或配置寄存器的写入。5高速暂存存储器高速缓冲存储器它是用 9 个字节组成的,功能分配如表 4.5 所示。1,2 字节,包括开始测量温度的数字信息,字节是 3,4,5TH 和 TL,配置寄存器的临时任务,在每一个上电复位将重置所有;前 6 个字节不使用,整个逻辑

40、 1 的表现,剩余的字节数是 7、8 分别是技术剩余值跟每度得计数值,前 9 个字节用来读取应所有 8 个字节的 CERC 代码,以便使用它以确保通信是正确的性。表 4.5 DS18B20 暂存寄存器分布DS18B20 的通信协议,单片机的 DS18B20 温度传感器的转换,将通过三个步骤完成,首先是要读写之前必须进行复位操作后对 DS18B20 的成功发送一个复位指令,最后送到 RAM 的命令,只有这样的温度传感器才能做出提前的操作。复位应该主 CPU将数据线下拉到 500s,之后释放当传感器收到信号后等到 1660s 左右时,立即发出一个 60240s 的快速的低脉冲信号,单片机收到此信号

41、后表示复位成功。下表为 ROM 指令表。表 4.6 ROM 指令表东北大学东软信息学院毕业设计(论文) 第 4 章 系统设计- 16 -4.5RS485 串口通信模块设计串口通信模块设计单片机与 ARM 平台通过 RS-485 串行通信,采用 RS-485 最大的好处是它可以一对多点总线互相连接的功能 ,它可以连接一台主机和多台终端同步进行通信,由于它是半双工的工作模式,同时只能有一方进行发送,一方负责接收,并且 RS-485 串口所采用差动电平接收的方法用于提高抗干扰的能力 ,比较适合在稍恶劣的环境下正常工作,因为在一样的电缆中受到的干扰都是差不多一样的,所以采用差动方法就可以有效的抵消一大

42、部分的干扰。由于 RS - 485 串行端口是半双工的工作模式,因此每当用户当处理和发送一起使用物理信道的时候。在任意时刻只能将数据发送到一台机器。因此,必须在收到应答机的 RS - 485 串行端口发送和接收信号,而且在其他机器时发出指令是才能答复。半双工的传输时间的接受和传输有着非常严格的要求。如果时间不匹配,那么就会有一点于总线冲突,让整个系统变得无法使用 ,停止正常的工作。如果想要让总线上的设备的正常工作。那么,一定需要以下几点。(1) 上发送独立的传输控制信号的时序控制信号的各种单片机连接时序要求是完全分开的。发送和接收信号时为了确保信息的完整性和正确,以避免总线上的信号碰撞,总线使

43、用权必须分配,以避免竞争,连接到总线的单机,并发送控制信号完全隔离时间。总之,发送和接收控制信号应该足够宽,以确保数据的完整性得到一帧数据,任何两个独立机器的发送信号是完全分开的,以避免总线争端。(2) 电路复位时,主机必须处于接收的状态 DE 和 RE 端相连为低电平的时候 ,从机应该处于接收的状态 ,在接受上电复位的时候 ,因为硬件电路稳定需要一点时间 ,而且单片机的各个端口复位后应该处于高电平的状态 ,因此就会使总线上每个分机都处于发送状态 ,再加上电时各个电路的不稳定 ,就可能向总线发送信号。所以说,假如用一条线作发送和接收的控制信号,就要把口线反向的后接到 MAX485东北大学东软信

44、息学院毕业设计(论文) 第 4 章 系统设计- 17 -的控制端 ,这样就可以使上电时 MAX485 始终处于接收状态。 (3)在 RS-485 半双工通信工程中,因 MAX485 的发送和接收都是用同一个器件完成的,而且发送和接收使用的是同一个物理连路,要对控制信号进行切换。控制信号什么时候是高电平,什么时候是低电平 ,一般以单片机的 TI 信号作为参考。在发送时检测是否建立 TI,如果 TI 为高电平时关闭发送的功能变为接收功能;在接收时检测是否建立 RI,当 RI 为高电平之后,接收结束,之后可以转为发送。东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 18 -第第 5 章

45、章系统实现系统实现5.1主程序流程主程序流程流程如图 5.1 所示,开始工作,首先系统初始化各个模块,当系统接收到检测信号,从传感器接收数据,处理数据后输出数据,将数据从 LED 数码管上显示,并同时将数据发动到 RS-485 串行接口,由 RS-485 串口最后发送到上位机。开始RS485通信DS18B20初始化数据采集LED显示RS485通信退出NYYN图 5.1 系统流程图5.2RS-485 串口通信主要程序串口通信主要程序RS-485 通信节点的程序大致可归类为六个重要部分,他们分别是预定义部分、初始部分、设备状态检测部分、主程序部分、帧接收部分和发送部分。预定义的部分主要是用来定义通

46、信中使用握手信号,它用于保存本节点的设备号和设备信息的缓冲区东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 19 -的变量。主程序部分可以接收命令帧,同时根据命令的内容发出相应的回应。而设备状态检测部分要放在程序初始化后,如果件发生故障时,再做出相应的反应。开始设置各项参数等待接受温度命令是否接到温度数据温度数据数据传送是否接到温度数据NY终止YN图 5.2 串口部分流程图为缩减不必要的篇幅,在这只给出主程序部分一些代码。/* RS485 通信主程序的流程*/while(1) /主循环if(recv_cmd(&type)=0) /发生错误或帧地址与本机/地址不符时,丢弃当前帧然后

47、返回东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 20 -continue;switch(type) case _ACTIVE_:/主机问从机是否接受send_data(_OK_, 0,dbuf);/发送应答信息 break;case _GETDATA_:len = strlen(dbuf);send_data(_STATUS_, len,dbuf);/发送状态信息break;default:break;/命令的类型错误,丢弃当前帧然后返回5.3DS18B20 模块程序设计模块程序设计5.3.1DS18B20 的工作过程的工作过程单片机 DS18B20 温度传感器在温度转换过程

48、中需要三个过程,第一,初始化,然后是 ROM 操作命令的,最后是存储器操作命令、一.初始化总线上的所有操作都必须先初始化,第一个提出了复位信号,然后从机器的线路信号发送,并通知主机 DS18B20 总线,然后让他等待接受其指令。二. ROM 操作命令在这个毕业设计中我们跳过 ROM 序列号检测命令。skip ROM 命令,就是跳过 ROM 操作的命令,是因为只有一个测温芯时以节约时间;但是要是多个从机的时候不能这样用了,这会使总线上的数据造成冲突。所以在就有一个温度传感器的情况下,在每次输入指令之前都可以使用这个命令来节约运算时间。三存储器操作命令首先,写(4EH)命令,使用此命令写入数据存储

49、第 2 至 4 个字节,从第 2 个字节(TH)运行的。复位信号发出前,完成这三个字节。然后读出(BEH) ,使用这个命令读出寄存器内的第一个字节的内容,一直完成第九个字节时,如果有需要注册的一些内容,那样的话主机可以在适当的发送时间复位命令结束该进程。其次是复制(48H) ,使用这个命令来注册的内存温度 2 至 4 个字节传感器设计 EEROM,当主机东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 21 -发出命令后实施温度转换,如果在进程转储则结果为 0 如果转储结束,结果是 1。最后,启动转换(44H)和温度传感器接收此命令立即启动温度转换的实施,没有其他的其他数据。这时

50、DS18B20 的空闲状态。如果温度转换运行时,主机将接收读取总线 0,转换完毕接收到的是 1。5.3.2DS18B20 温度传感器主要程序温度传感器主要程序DS18B20 使用的关键是首先清楚总线的读写的时序。DS18B20 是单总线的双向通讯,他的外接电路非常简单,可是在软件编程上,就非常严格按照他的要求时序进行读写的操作。具体的操作如下:对温度传感器操作时,首先要把他复位。让 DQ 线拉低 480 到 960s 之间,再将数据线拉高 15 到 60s 之间,再把 DS18B20 发出的 60到 240s 的低电平信号作为应答的信号,这时单片机才能对它进行别的的操作。图 5.3 DS18B

51、20 初始化时序bit DS18B20_Reset(void)unsigned char x=1;DQ = 1; /DQ 先置高DS18B20_delay(15); /稍延时DQ = 0; /发送复位脉冲DS18B20_delay(500); /延时480usDQ = 1; /拉高数据线DS18B20_delay(70);/等待 1560usx=DQ; /x=0 初始化成功 x=1 失败DS18B20_delay(15);return x;东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 22 -在温度传感器中,写操作是指把数据线要从高电平拉到低电平,产生写起始的信号。从 DQ 线

52、的下降沿起开始计时,在 15s 到 60s 之间这段时间里对数据线进行检测,假如数据线为高电平时就写 1,若为低电平时就写 0,如果完成了一个就写周期。然后再开始另一个写周期前,必须在 1s 以上的高电平恢复期。每个写周期必须需要60s 以上的持续期。图 5.4 DS18B20 写时序void DS18B20_Write(unsigned char command)unsigned char i;for(i=8;i0;i-)DQ=0;if(command & 0 x01)=0)DS18B20_delay(10);DQ=1;DS18B20_delay(20); else DQ=1; DS18B2

53、0_delay(20);command=_cror_(command,1); 东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 23 -在温度传感器中,读操作是指主机将数据线从高电平拉至低电平 1s 以上时,使数据线升为高电平,从而产生读起始的信号。从主机将数据线从高电平拉至低电平起 15s 到 60s 之间,主机读取数据。每个读周期最短的持续期为 60s。周期之间必须有1s 以上的高电平恢复期。 图 5.5 DS18B20 读时序unsigned char DS18B20_Read(void)unsigned char i;unsigned char temp;temp=0;fo

54、r(i=8;i0;i-) temp=_cror_(temp,1);DQ=0;_nop_();_nop_();DQ=1;_nop_();_nop_();if(DQ=1) temp=temp | 0 x80; 东北大学东软信息学院毕业设计(论文) 第 5 章 系统实现- 24 - else temp=temp | 0 x00; DS18B20_delay(8); return(temp);东北大学东软信息学院毕业设计(论文) 第 6 章 系统测试- 25 -第第 6 章章系统测试系统测试软件测试是一项十分复杂多样化的工作。它在软件的整个生存期中占据重要的位置,对软件可靠性保证具有极其重要的意义。下

55、面将结合本系统软件开发并配合仿真器对系统进行了如下测试。6.1测试方案及测试用例测试方案及测试用例6.1.1电源监测电源监测方案:将电源通电,在系统中单片机在 1.6s 周期内为芯片提供正脉冲,芯片输出信号保持高电平,整个系统工作正常。当单片机在超过 1.6s 未向芯片提供脉冲信号时,芯片内部电路触发复位信号,使单片机复位,从初始状态开始工作。6.1.2LED 检测检测方案:MAX7219 是一款串行共阴极数码管动态显示驱动芯片,仅使用 3 线串行接口传送数据,可直接与单片机接口,可以方便的修改内部参数以实现多位 LED 显示。内部含硬件动态扫描显示控制电路,每片芯片可同时驱动 8 位共阴极

56、LED。在代码中可对芯片进行初始化后直接向 MAX7219 写入数据,观察 8 个 LED 的工作情况,写入数据与 LED 输出显示的数据一致,则表明电路没有问题。6.1.3通过通过 RS485 连接连接 ARM 共同检测共同检测方案:当系统的每个模块测试是否都能正常工作时,此时可以进行系统的共同检测。用温度传感器采集温度在 LED 显示同时将采集的温度通过 RS-485 传送到基于ARM 的显示屏进行比对。如果都能正常工作,表明整个系统的功能可以完全实现。如果有部分模块的功能不能实现,可以重复上述的调试步骤查明原因,此时的原因基本上可以判断为是代码的问题,需仔细检查代码。东北大学东软信息学院

57、毕业设计(论文) 第 7 章 结论- 26 -第第 7 章章结结论论本系统采用 RS485 标准实现串行通信,把采集的数据上传给 ARM,系统结构简单,抗干扰性能好。上位机软件利用 ARM 进行开发,扩展方便灵活。经测试可知,系统工作稳定可靠。在毕业设计选材,都是按照各个要求的,从单片机、传感器等都自己去电子城里通精心挑选最好的产品,在满足毕业设计需求的前提下,尽可能的去选择造价较低的元件,最大限度地节约了本次设计的成本。特别是使用了 DS18B20 温度传感器,它把采集温度与 A/D 转换积于一身,很大程度上降低了设计电路的复杂性,使整个电路设计变得简洁。通过本次设计使我更能直观的了解单片机

58、及 RS-485 串口通信的实用价值,从而大大增加学习兴趣,在今后的工作中有个非常重要的意义。东北大学东软信息学院毕业设计(论文) 附件- 27 -附附录录附图 1 电路原理图东北大学东软信息学院毕业设计(论文) 附件- 28 -附图 2 PCB 图东北大学东软信息学院毕业设计(论文) 参考文献- 29 -参考文献参考文献1 周建春. 基于单片机和 PC 串口通信的温度采集系统设计D, 苏州:苏州大学,2010.1 2 李全利. 迟荣强编著. 单片机原理及接口技术M, 北京: 高等教育出版社,2004.1 3 唐俊翟等. 单片机原理与应用M, 北京: 冶金工业出版社,2003.9 4 霍孟友等

59、. 单片机原理与应用学习概要及题解M, 北京: 机械工业出版社,2005.3 5 许泳龙等. 单片机原理及应用M, 北京: 机械工业出版社,2005.1 6 马忠梅等. 单片机的 C 语言应用程序设计M, 北京: 北京航空航天大学出版社, 2003 修订版 7 华成英, 童诗白. 模拟电子技术基础M, 北京: 高等教育出版社, 20078 毛德平, 凌有铸. 一种基于 RS485 总线的温度、湿度测控系统J, 现代电子技术, 2007.01:56.9 张曾科. 计算机网络与通信M, 北京: 机械工业出版社,200710 辛萌萌. RS-485 通信接口芯片的 IC 设计与实现D, 大连: 大连

60、理工大学,200711 左全生. 电路分析教程M, 北京: 电子工业出版社, 2006.512 陈曾汉. 工业 PC 及测控系统M, 北京: 机械工业出版社, 200413 吴国经等. 单片机应用技术M, 中国电力出版社, 2004.114 杨勇虎, 樊晓勇,闫海珍. 数据结构理论与实践M, 东北大学出版社, 2007.315 张华. 计算机通信基础M. 北京: 机械工业出版社, 2008.1116 阎石. 数字电子技术基础(第五版)M, 北京: 高等教育出版社, 2006.517 幸云辉, 杨旭东. 计算机组成原理实用教程M, 清华大学出版社, 2004.118 吕艳, 电机车半自动控制系统

61、D, 大连: 大连理工大学, 2007.19 John Goldie. Ten Ways to Bulletproff RS-485 interfacesZ.National Semiconductor, AN 1057,1996.20 王明亮. 智能网络医用理疗仪控制器的设计与实现D. .重庆: 重庆大学, 2008.东北大学东软信息学院毕业设计(论文) 致谢- 30 -致致谢谢本次毕业论文能顺利的完成,首先衷心的感谢我的讲师闫慧琦老师,无论是在本次毕业设计的选题、论文的体系结构、论文的发表都给予了我巨大的帮助。同时也要感谢同学们对我的帮助。本次论文的顺利完成是学校提供了学习的舒适环境和许多有价值资料。半年时间里,不仅仅是完成毕业设计更重要的是学到了奋发向上的精神,这种精神是我今后人生前进道路上的一种力量。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!