C#ModBus Tcp
2024-10-19 23:43:00
C#ModBus Tcp 报文解析
上一篇博客已经完成 C#ModBus Tcp Master的实现
本篇主要对不同的功能码所发出的报文进行解析(包括请求报文及响应报文)
读操作
功能码 0x01 读一组线圈 读取站号为1 从地址12开始的10个线圈
测试结果
上一篇博客已经总结了读操作报文格式,就按照格式划分
报文解析:
注意:报文中线圈起始地址 00000 对应设备中 10001 地址,其他顺延
功能码0x02 报文格式与功能码0x01一致,只是第八字节的功能码变为02 其他完全一致,不再重复解析
功能码0x03 读一组保持寄存器 读取站号为1 从地址12开始的10个值
报文解析:
功能码0x04 报文格式与功能码0x03一致,只是第八字节的功能码变为04 其他完全一致,也不再重复解析
写操作
操作码:0x05 写单个线圈 将站号为1 地址为21的线圈置为On
注意:在报文中 指定线圈通断标志 FF00 置线圈为ON 0000置线圈为OFF
报文解析:
功能码0x0F 写一组线圈 将站号1 起始地址21 的连续五个线圈置为 通,断,断,通,通
测试结果:
报文解析:
功能码 0x06 写单个保持寄存器 将6666写入从站1 地址为21 的保持寄存器中
测试结果
报文解析:
功能码0x10 写一组保持寄存器 例如 将12 23 34 45 56 67 78 分别写入从站1 起始地址为21的7个连续的保持寄存器中
测试结果
报文解析:
到此为止,我们常用的几个ModBus功能码报文都解析完毕了 有错误之处 希望大家不吝赐教,感谢(抱拳~)
最新文章
- 矩阵快速幂 HDU 4565 So Easy!(简单?才怪!)
- WPF textblock加入超链接
- sqlalchemy mark-deleted 和 python 多继承下的方法解析顺序 MRO
- git命令使用记录
- css/js(工作中遇到的问题)-3
- SQLServer大数据优化方法若干
- 在CentOS上搭建PHP服务器环境
- [水煮 ASP.NET Web API2 方法论](3-5)路由约束
- jmeter笔记5
- DBNull
- C# DataTable 转换成JSON数据
- 【模板小程序】循环方阵构造(仿《剑指offer》循环矩阵打印)
- Qt 如何使用 QImage 设置指定的颜色为透明色?
- Python基础__字符串拼接、格式化输出与复制
- 提取PPT文件中的Vba ProjectStg Compressed Atom。Extract PPT VBA Compress Stream
- Luogu5245 【模板】多项式快速幂(多项式exp)
- 用U盘制作并安装WIN10 64位原版系统的详细教程(该方法应该适用于任何一版的原版操作系统)
- Spark SQL读写方法
- Spring MVC 编程流程步骤
- java项目打成jar包使用
热门文章
- C# ado.net 使用task和await(四)
- BZOJ 2458: [BeiJing2011]最小三角形 (分治)
- python--openCV--图像处理
- nginx之location模式
- Java的消息机制
- Git 提交代码和更新代码
- HDU 1024 Max Sum Plus Plus ——(M段区间的最大和)
- HDU 2176 取(m堆)石子游戏 —— (Nim博弈)
- Light Switching(SPOJ LITE)—— 线段树成段更新异或值
- HTML5调用本地摄像头画面,拍照,上传服务器