找回密码
 注册

QQ登录

只需一步,快速开始

搜索

STM32F407 MODBUS RTU源程序 注释详细 适合学习参考

[复制链接]
路漫漫 发表于 2020-5-14 18:51:12 | 显示全部楼层 |阅读模式
MODBUS RTU,是现在工控行业非常重要的一个现场应用协议。相信做工控现场的师兄都知道。我也因需要,做了个从站,方便大家使用。
经自己3个星期的努力,终于把MODBUS RTU在STM32F407控制器上成功实现了,每句话都加注了详细的说明。
STM32F407 MODBUS RTU源程序.zip (3.11 MB, 售价: 3 E币)
有需要的小伙伴可以选用
部分内容截图如下
主机配置如下
1 modbus poll主机不断给从机1发送03读寄存器命令:
Tx:066-01 03 00 00 00 0A C5 CD
187.001.jpg
Modbus RTU 03码解析
187.002.jpg
MODBUS应答 187.003.jpg
187.004.jpg




示例-03码.主机Modbus poll软件命令如下
主站发出/命令:读地址006B(十进制107)开始的0003(3)个寄存器地址。
从站返回/应答:03码,返回06(十进制6)个字节寄存器,022B(555),0000(0),0064(100)
187.005.jpg
STM32F407从机回答如下
Tx:066-01 03 00 00 00 0A C5 CD
命令解析:读1号(01)从站寄存器(03),从00(00 00)开始,共10(00 0A)个寄存器。
Rx:067-01 03 14 05 4B 03 EA 08 FF 20 0C 05 4B 03 EA 08 FF 2D 00 2D 00 2D 00 EC 08
应答解析:01:地址;03:功能码;14:字节数量10个(2进制14=10进制20)
05 4B :2进制054B=10进制1355;  03 EA :1002;  08 FF:2303;  20 0C:8204; 05 4B:1355;
03 EA :1002;  08 FF :2303;  2D 00:115200; 2D 00 :115200;2D 00:115200;
EC 08 :校验码-5112
源程序如下
187.006.jpg

Tx:068-01 03 00 00 00 0A C5 CD
Rx:069-01 03 14 05 4B 03 EA 08 FF 20 0C 05 4B 03 EA 08 FF 2D 00 2D 00 2D 00 EC 08
Tx:070-01 03 00 00 00 0A C5 CD
Rx:071-01 03 14 05 4B 03 EA 08 FF 20 0C 05 4B 03 EA 08 FF 2D 00 2D 00 2D 00 EC 08
Tx:072-01 03 00 00 00 0A C5 CD
Rx:073-01 03 14 05 4B 03 EA 08 FF 20 0C 05 4B 03 EA 08 FF 2D 00 2D 00 2D 00 EC 08
187.007.jpg
187.008.jpg 187.009.jpg 187.010.jpg 187.011.jpg 187.012.jpg
187.013.jpg
1.png 2.png 3.png 4.png 5.png 6.png 7.png 8.png 9.png 187.014.jpg 187.015.jpg

standin000 发表于 2024-2-4 09:27:21 | 显示全部楼层
谢谢楼主分享!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|ELEOK |网站地图

GMT+8, 2024-12-22 00:00

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表