(1)、
    MODBUS 分为 0X ,1X,3X,4X 四种寄存器。

0X--->离散输出 (可读可写)      对应PLC为:DO
   1X--->离散输入(只读)           对应PLC为:DI
   3X--->输入寄存器16位(只读)     对应PLC为:AI
   4X--->保持寄存器16位(可读可写) 对应PLC为:AO

同时根据上述规约,还可以扩展0X和4X,其中OX不仅可以对应DO,同时还可以对应上位机发送的“按钮”
                                          4X不仅可以对应AO,同时还可以对应上位机的“设置参数”

(2)、为什么MODBUS寄存器地址从40000开始而不从0开始,有什么特别的说法吗,还是仅仅是大家都习惯这样用

(A)、寄存器地址从40001开始的
                是因为它属于4X寄存器,同时0X寄存器是从00001开始的,1X寄存器是从10001开始的,其余雷同。
         (B)、实际上40001在你的程序中对应缓冲区的第0个地址单元,
                假如:你的程序定义一段缓冲区BUFFER(20)要和上位机的40001-40020交换数据,则

40001 ----> BUFFER(0)
                                40002 ----> BUFFER(1)
                                40003 ----> BUFFER(2)
                                40004 ----> BUFFER(3)
                               ........................
                                40020 ----> BUFFER(19)

MODBUS寄存器从40000开始而不从0开始,有什么特别的说法吗,还是仅仅是大家都习惯相关推荐

  1. modbus寄存器、功能码、报文结构解析

    目录 一 Modbus寄存器种类说明 1.线圈状态 2.离散输入状态 3.保持寄存器 4.输入寄存器 二 Modbus功能码简述 1.位操作指令 2.字节操作指令 三 Modbus报文 1.读取线圈状 ...

  2. Modbus协议的数据模型和地址模型,Modbus寄存器40001,30001是什么意思?

    在使用Modbus协议的时候,经常会遇到诸如40001.30001,10001之类的地址,这些数字代表什么含义呢?这其实是Modbus协议的数据模型和地址模型. Modbus协议的数据模型 数据模型是 ...

  3. 为什么 HashMap 加载因子一定是0.75?而不是0.8,0.6?

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 有很多东西之前在学的时候没怎么注意,笔者也是在重温HashMap的 ...

  4. 51单片机外部中断实验 设置中断优先级寄存器,当有外部中断0请求中断时,中断程序执行发光二极管程序,在此过程中,外部中断1也有中断请求,外部中断0的中断程序将被中断去执行外部中断1的中断程序(数码管

    设置中断优先级寄存器,当有外部中断0请求中断时,中断程序执行发光二极管程序,在此过程中,外部中断1也有中断请求,外部中断0的中断程序将被中断去执行外部中断1的中断程序(数码管加1显示程序). #inc ...

  5. AS3的Number类型变量不指定初始值,则其初始值为NaN,而不是0.0

    AS3的Number类型变量不指定初始值,则其初始值为NaN,而不是0.0

  6. 转载和积累系列 - 为什么 HashMap 加载因子是0.75?而不是0.8,0.6?

    目录 为什么HashMap需要加载因子? 解决冲突有什么方法? 1. 开放定址法 2. 再哈希法 3. 建立一个公共溢出区 4. 链地址法(拉链法) 为什么HashMap加载因子一定是0.75?而不是 ...

  7. ORA-01841 :(完整)年份必须介于-4713和+9999之间,而不是0 Kaki的博客

    ORA-01841 :(完整)年份必须介于-4713和+9999之间,而不是0 Kaki的博客 我遇到这个问题的原因是因为数据中有空格,导致tochar('','')无法正常解析.请检查是否是数据问题 ...

  8. Modbus寄存器分类及地址分配

    Modbus协议中一个重要的概念是寄存器,所有的数据均存放于寄存器中.最初Modbus协议借鉴了PLC中寄存器的含义,但是随着Modbus协议的广泛应用,寄存器的概念进一步泛化,不再是指具体的物理寄存 ...

  9. Java黑皮书课后题第8章:***8.35(最大块)给定一个元素为0或者1的方阵,编写程序,找到一个元素都为1的最大的子方阵。程序提示用户输入矩阵的行数。然后显示最大的子方阵的第一个元素、行数

    ***8.35(最大块)给定一个元素为0或者1的方阵,编写程序,找到一个元素都为1的最大的子方阵.程序提示用户输入矩阵的行数.然后显示最大的子方阵的第一个元素.行数 题目 题目描述与运行示例 破题 代 ...

  10. Java黑皮书课后题第8章:*8.23(游戏:找到翻转的单元格)假定给定一个填满0和1的6*6矩阵,所有的行和列都有偶数个1。让用户翻转一个单元,编写一个程序找到哪个单元格被翻转了

    *8.23(游戏:找到翻转的单元格)假定给定一个填满0和1的6*6矩阵,所有的行和列都有偶数个1.让用户翻转一个单元,编写一个程序找到哪个单元格被翻转了 题目 题目描述与运行示例 破题 代码 题目 题 ...

最新文章

  1. sqlmap绕过d盾_WEBSHELL免杀绕过WAF思路amp;方法(一)
  2. 48. Rotate Image
  3. python中for循环和while循环的区别_Python中for循环和while循环有什么区别?
  4. python的django_django能用来做什么
  5. Pycharm 专业版 导入系统pip安装的包
  6. python os函数_python os模块主要函数
  7. 32位mips运算器logisim_很多网友问32位低功耗MCU设计
  8. 设计模式(七): 通过转接头来观察适配器模式(Adapter Pattern)
  9. python 加速方法_24种方法加速你的Python
  10. 一些常用的JavaScript的Bookmarket
  11. 计算机组成原理知识点总结白中英,计算机组成原理知识点总结.pdf
  12. 微软官方Windows2003原版下载
  13. 计算机属性资源管理器已停止工作,Win7资源管理器老是停止工作怎么办?资源管理器已停止工作解决方法...
  14. springboot毕设项目热贡文化艺术展示与定制s5g19(java+VUE+Mybatis+Maven+Mysql)
  15. P2504 [HAOI2006]聪明的猴子
  16. Global and Local Enhancement Networks for Paired and Unpaired Image Enhancement
  17. VMware虚拟网络编辑器,没有桥接模式或本地计算机不显示网络适配器
  18. 微软证实Windows 10周年更新会重置某些PC设置 请静候补丁
  19. 怎么解决win10以太网无有效ip
  20. 我分析了上万个微信红包数据,得到了这些发现(附数据集)

热门文章

  1. nvidia windows linux,NVIDIA首发OpenGL 3.1驱动 全面支持Windows/Linux
  2. 【BUgStation】RStudio rsession.ese无法找到入口通过更新R解决
  3. Easy_CHM生成CHM时出现的目录和索引中文乱码脚本错误
  4. 删库跑路大神的一生,真狠人!
  5. ubuntu下的chm阅读器
  6. 码农的奋斗之路 富爸爸穷爸爸系列--提高你的财商 读后感
  7. 2021裁判文书网抓取
  8. 用php实现基本功能,php实现文件管理与基础功能操作的方法
  9. 批量生成条形码并写入到excel文件
  10. this关键字的作用