恭喜,你发布的帖子
发布于 2023-10-12 08:55:28
9楼
你的说法靠谱。借问一下,他说明书里面为什么要乘以65535,而不是65536?这个说明书靠谱吗?
您说的对!应该是乘以25536。
如:16#20000(其中2是高字的值,0000是低字的值)=25536*2(高字)+0(低字)=10#131072=2#0000 0010 0000 0000
其实,无论是十六进制数、十进制整数,存储方法与二进制数是一致的。即:均以二进制数的方式保存,不同进制,而相等的数,保存时与二进制数一致。或者说:保存时采用的编码方法相同,并且是二进制编码。
因此,我遇到的几次SMART200 RTU通讯读取的十六进制数(二字节),均当作十进制整数,对其进行标定,结果正确。
楼主的也直接可以当作四字节整数,进行转换。
请填写推广理由:
分享
只看
楼主