教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 高等教育 >

STM32单片机的MODBUS通讯器毕业论文 - 图文(7)

来源:网络收集 时间:2026-05-05
导读: 基于单片机的MODBUS通讯器设计 器,提供1uA关断模式,有效降低功效并延迟便携式产品的电池使用寿命。关断模式下,接收器保持有效状态,对外部设备进行监测,仅消耗1uA电源电流,MAX3232的引脚、封装和功能分别与工

基于单片机的MODBUS通讯器设计

器,提供1uA关断模式,有效降低功效并延迟便携式产品的电池使用寿命。关断模式下,接收器保持有效状态,对外部设备进行监测,仅消耗1uA电源电流,MAX3232的引脚、封装和功能分别与工业标准MAX242和MAX232兼容。即使工作在高数据速率下,MAX3232仍然能保持RS-232标准要求的正负5.0V最小发送器输出电压。

只要输入电压在3.0V至5.5V范围以内,即可提供+5.5V(倍压电源)和—5.5V(反相电压)输出电压,电压工作在非连续模式,一旦输出电压低于5.5V,将开启电压;输出电压超过5.5V,即可关闭电荷泵,每个电压需要一个电容器和一个储能电容,产生V+和V-的电压。

MAX3232在最差工作条件下能够保证120kbps的数据速率。通常情况下,能够工作于235kbps数据速率。

图3.8 串口通讯电路

3.7 从机主控模块

从机主控采用STC12C5A60S2,最小系统电路图如图3.9所示。 STC12C5A60S2单片机性能特点:

1、工作频率0~40M相当于普通8051的0~80M。

2、FLASH程序储存4K-64K,RAM数据储存512B-1280B。 3、内部集成EEPROM 2K-16K及看门狗和专用复位电路。 4、带A/D功能,超小封装。

5、2-4路PWM, 8-10位高速A/D转换。

6、有ISP和IAP功能,强抗干扰和降低EMI性能。

14

3.9 温度检测模块

3.8 LED灯显示模块

单片机根据亮度值修改LED亮度。

度高,附加功能强,使得DS18B20更受欢迎。

的DS18B20温度传感器当仁不让。超小的体积,超低的硬件开消,抗干扰能力强,精

LED亮度,每一路亮度值都可通过从机按键设置值,也可在主机触摸屏上设置每一路亮

传感器的种类众多,在应用与高精度、高可靠性的场合时DALLAS(达拉斯)公司生产

度值,也可以直接控制每一路LED亮灭,通过MODBUS命令下置到从机单片机,从机

图3.9 从机主控模块最小系统

基于单片机的MODBUS通讯器设计

LED灯模块采用8个0805封装的LED显示,LED模块电路图如图3.10所示。

图3.10 LED灯显示模块

温度的测量使用了DS18B20温度传感器。温度检测模块电路如图3.11所示。温度

利用STC单片机8个I/O端口分别控制8路LED,每一路都用100级PWM来调节

15

基于单片机的MODBUS通讯器设计

DS18B20的主要特征: 全数字温度转换及输出。 先进的单总线数据通信。

最高12位分辨率,精度可达土0.5摄氏度。 位分辨率时的最大工作周期为750毫秒。 可选择寄生工作方式。

检测温度范围为–55°C ~+125°C (–67°F ~+257°F) 内置EEPROM,限温报警功能。

位光刻ROM,内置产品序列号,方便多机挂接。 多样封装形式,适应不同硬件系统。

只需要一条口线通信 多点能力,简化了分布式温度传感应用 无需外部元件 可用数据总线供电,电压范围为3.0 V至5.5 V,无需备用电源,测量温度范围为-55 ° C至+125 ℃。华氏相当于是-67 ° F到257华氏度,-10 ° C至+85 ° C范围内精度为±0.5 ° C。

CPU与DS18B20只有一跟数据线连接。为读写以及温度转换可以从数据线本身获得能量,不需要外接电源。 因为每一个DS18B20的包含一个独特的序号,多个DS18B20可以同时存在于一条总线。这使得温度传感器放置在许多不同的地方。它的用途很多,包括空调环境控制,感测建筑物内温设备或机器,并进行过程监测和控制。

图3.11 温度检测模块

16

基于单片机的MODBUS通讯器设计

第4章 软件设计 4.1串口通信模块

串行通信是实现单片机与PC 及通信的一种基本方式。在本系统中使用的是一个主机三个从机,一片MAX3232做主机通讯接口,另外三个作为从机通讯接口,RS232总线直接使用RS232电平通讯。

在串行通信的实现中,本系统采用了串口通信工作方式一,波特率115200 的方案。在串行通信过程中必然涉及寄存器以及定时器的配置。

TMOD(定时器寄存器)

GATE C/T* M1 M0 GATE C/T* M1 M0 T1 方式字段T0 方式字段

TMOD |= 0X20 即定时器T1 工作在方式2(自动重装的8 位定时器)。 SCON(串行口控制寄存器) SM0 SM1 SM2 REN TB8 RB8 TI RI

SCON = 0X50 即串行口工作方式一(8 位UART,波特率可变)。

由于单片机需要对数据帧进行处理,而处理数据帧所需要的时间相对比较长,为了提高单片机的效率,在串行通信时,应该采用中断方式接受数据帧。一般而言,中断函数应该尽可能的简单。所以中断函数只负责接受数据帧,而对于接收数据帧的处理则放在主函数里。

4.2数据帧处理模块

数据帧处理是整个系统的核心部分,在现场总线技术中有着至关重要的作用。必须了解Modbus的各个功能对应的帧格式,理解其含义和本质,然后才能找到对应信息去对其相应的处理。

根据ModBus 协议,其RTU模式数据帧格式如下: 1 2 3 4 5 6 7 8 从机地MODBUS起始寄起始寄寄存器寄存器CRC低CRC 高址 命令 存器高存器低数高字数低字字节 字节 字节 节 17

字节 节 基于单片机的MODBUS通讯器设计

硬件采用RS232,主从式半双工通讯,主机呼叫从机地址,从机应答方式通讯。 数据帧10位,1个起始位,8个数据位,1个停止位,无校验。

在数据帧处理过程中,首先判断数据帧是否完整,然后判断是不是发给本从机。对完整数据帧进行CRC校验,CRC校验正确的帧执行下面的处理步骤,否则丢弃该帧,并通知上位机重发数据。帧处理的前提除了CRC校验正确,还需要确保地址位正确。在前提条件满足的情况下才能提取功能位和数据位。根据功能位确保要执行的功能。并执行相关功能。在具体功能中提取实现功能所需的数据位。图4.1为数据帧处理流程图

开始N是否接收完?YN地址是否匹配?YNCRC是否校验正确?Y数据处理向上位机返回数据结束图 4.1 数据帧处理流程图

上位机对发回来的帧进行处理,判断是否正确后执行对应的处理。

18

…… 此处隐藏:899字,全部文档内容请下载后查看。喜欢就下载吧 ……
STM32单片机的MODBUS通讯器毕业论文 - 图文(7).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/616166.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)