ModBus功能码速记
一、0x01~0x04:
这四个功能码都是“读”操作,可分两组记忆,0x01和0x02是一组(bool类型),0x03和0x04是一组(寄存器类型);两组属性差不多如下:
1.都是单数是读取可读可写的数据(coil或者holding),双数只能读取只读数据(input);
2.请求的帧格式类似;
功能码占一个字节,起始地址占两个字节,数量占两个字节。
0x01:

0x02:

0x03:

0x04:

3.响应的帧格式类似;
0x01:

0x02:

0x03:

0x04:

二、0x05、0x06;
这两个个寄存器一起记忆,有如下共同点:
1.都是写单个(coil或者register);
2.请求与响应是一样的;
注意不同点:
1.写单个coil的时候,值只能是0x0000(OFF)和0xFF00(ON);
三、0x0F、0x10;
这两个一起记忆,如下共同点:
1.都是写多个(coil或者register)
注意:
1.写coil的时候,与写单个不同,写单个coil用0xFF00和0x0000代表ON和OFF,而在写多个的时候是用bit位的“1”代笔ON,bit位的“0”代表OFF;
另外写多个线圈的请求与响应略复杂。
四、0x14、0x15;
读写文件记录
五、0x16屏蔽写寄存器;
xx
六、0x17读/写多个寄存器
xx
七、0x2B读设备识别码;
xx
ModBus功能码速记的更多相关文章
- ModBus通信协议的【功能码】
Modbus的功能码 ModBus 功能码与数据类型对应表: RTU 方式读取整数据的例子: 解析一下:主机发送指令,访问从站地址为1,使用功能码03(读保持寄存器),起始地址高8位.低8位 ...
- MODBUS协议整理——功能码简述
1.Modbus简介——来自维基百科 Modbus是一种串行通信协议,是Modicon于1979年,为使用可编程逻辑控制器(PLC)而发表的.Modbus是工业领域通信协议的业界标准,并且现在是工业电 ...
- 多平台下Modbus通信协议库的设计(一)
1.背景 1.1.范围 MODBUS 是 OSI 模型第 7 层上的应用层报文传输协议, 它在连接至不同类型总线或网络的设备之间提供客户机/服务器通信. 自从 1979 年出现工业串行链路的事实标准以 ...
- Modbus协议
总体上来说,发送命令格式如下:模块号(1字节)功能码 起始地址(2字节) 数据(X字节) CRC(2位) 模块号(1字节)功能码(要读取的寄存器,读 01,设置05,Coil Status/Inp ...
- 推荐一本书:清华出版的《Modbus软件开发实战指南》
前言: 最近在研究Modbus开发,如果只是简单的了解了一些modbus基础知识,但是不够系统和全面. 其实,modbus虽然比较简单,但是如果不注意有很多坑,特别是寄存器的位数,大小端处理,浮点数, ...
- Modbus软件开发实战指南 之 开发自己的Modbus Poll工具 - 1
在开发Modbus程序的过程中,也可以发现经常需要使用诸如Modbus Poll和Modbus Slave等辅助调试工具, 用于验证MODBUS通讯消息是否正确.但是,Modbus Poll和Modb ...
- Modbus通讯数据格式:
RTU&&TCP单个写入 RTU&&TCP多个写入 RTU&&TCP数据读取 ASCII码数据格式 Modbus功能码: 功能码 名称 作用 1 读取线 ...
- 工控安全入门之Modbus(转载)
工控安全这个领域比较封闭,公开的资料很少.我在读<Hacking Exposed Industrial Control Systems>,一本16年的书,选了的部分章节进行翻译,以其抛砖引 ...
- Python的网络编程[6] -> Modbus 协议 -> Modbus 的基本理论与 Python 实现
Modbus协议 / Modbus Protocol 目录 Modbus 协议简介 Modbus RTU协议 Modbus TCP协议与 Python 实现 Modbus 功能码 Modbus TCP ...
随机推荐
- 初识Java——循环语句
循环语句就是在一定条件下反复执行某一个操作.具体有三种方法实现: 1while循环语句 while语句也称作条件判断语句,它的循环方式为利用一个条件来控制是否要反复执行.语法如下: while(条件语 ...
- MDF,了解一下
1.MDF定义 MDF,全称(Measurement Data Format),即测量数据格式,是ASAM(自动化及测量系统标准协会)定义的.MDF的网页https://www.asam.net/st ...
- How To Install and Use Redis
https://www.digitalocean.com/community/tutorials/how-to-install-and-use-Redis About Redis redis, dev ...
- Mac下面解决PYTHONPATH配置的方法
问题起因:MacPort安装的Python包在/opt目录里面,和系统安装的python包不在一起,由于Mac下面编译安装无止境的找不到问题,虽然MacPort解决了这个问题,但是它安装的东西,得自己 ...
- Selenium调用webdriver.chrome()出错
问题描述: 今天因为在学习要使用selenium这个python库,我下载好了selenium,并且也Import成功了,但是在我使用webdirver.chorme()时,却提示PATH路径中没有c ...
- SpringCloud实战-Eureka
熟悉微服务架构或Dubbo框架的都知道,微服务中最核心.最基础的组件就是注册中心了.下面利用Spring Cloud Eureka实现服务注册中心.并注册一个简单的服务提供者. 首先先创建一个spir ...
- numpy用法归纳
1.生成数组 import numpy as np 把python列表转换为数组 >>> np.array([1, 2, 3]) array([1, 2, 3]) 把python的r ...
- 微软project文件mpp解析
最近在做一个项目管理的项目,主要是将用户在project文件中写的一些东西,读出来,并将其写入到数据库中. 也是借鉴了好多大佬的思想和代码,感觉自己需要整理一遍,所以,接下来就是表演的时候了. 第一步 ...
- Unity3D学习(八):《Unity Shader入门精要》——透明效果
前言 在实时渲染中要实现透明效果,通常会在渲染模型时控制它的透明通道. Unity中通常使用两种方法来实现透明 :(1)透明度测试(AlphaTest)(2)透明度混合(AlphaBlend).前者往 ...
- 【转】数据库事务ACID以及事务隔离
本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别. 如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity) 原子性是指 ...