登录
首页 PLC论坛 西门子SIEMENS
回帖 发帖
正文

主题:modbus通讯

点击:896 回复:11

附件:
[本地下载]
小数部分十六进制数24E1转成十进制等于9441后为什么要除以65536?谢谢!
14-02-19 19:10
   因为小数部分是用2字节(16位二进制数)来表示的(形式上是整数,9441,为10进制),16位二进制表示的最大值为65536(10进制),9441/65536就是折后的小数部分(65536相当于小数部分的满量程).
   解释得好费劲啊.
14-02-19 20:03
谢谢你师傅,根据协议00 00 14 00 这四个字节怎样计算呢?
14-02-19 20:18

引用 jrs987 在 2014/2/19 20:18:35 发言【内容省略】

这个要求没看懂.是要化成10进制数吗?1310720.   1*16^5+4*16^=1310720
14-02-19 20:54
协议是前三个字节是整数部分怎样计算?后一个字节是小数部分怎样计算呢?四个字节是计算温度的。小数部分是不是还除以65536呢?
14-02-19 21:05

引用 jrs987 在 2014/2/19 21:05:11 发言【内容省略】

   小数部分是一个字节,除以256即可.
   整数部分:0*16^5+0*16^4+0*16^3+0*16^2+1*16^1+4*16^0=16+4=20,十进制
14-02-19 22:25
你好师傅,小数部分为什么要除以256? 256是怎么算来的?  初学PLC见笑了。
14-02-20 13:05

引用 jrs987 在 2014/2/20 13:05:00 发言【内容省略】

一字节(8位二进制)表示的最大值为256(10进制),2*8=256
14-02-20 13:08
八位二进制最大的数应是 255 啊,为什么是 256 ?
14-02-20 13:35
楼主,这个流量计有关小数除65536或是除256  与MODBUS协议无关,这个是流量计厂家自己规定的小数计算规则。
至于除什么数值,规律是这样
两个字节的小数,则除的是 10000H 转换为十进制正好是65536
一个字节的小数,则除的是 100H 转换为十进制正好是256
一个字节是两个4BIT的十六进制字符!
14-02-20 14:13

上一页下一页

工控新闻

更多新闻资讯