您现在所在的是:

亚控WellinTech

回帖:11个,阅读:10259 [上一页] [1] [2] [下一页]
50
唱响青春之歌
文章数:78
年度积分:50
历史总积分:50
注册时间:2019/1/9
发站内信
发表于:2019/2/16 14:48:52
#0楼
组态王如何读取一个寄存器中的四组数据,如果用swapf寄存器,如果是0x0002寄存器,请问怎么设置
19254
pqsh 版主
文章数:7424
年度积分:1084
历史总积分:19254
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2019/2/16 16:24:37
#1楼
请问你问的是组态王的modbus协议吗?还是别的?
是读取寄存器以后的排序问题吗?
+20
50
唱响青春之歌
文章数:78
年度积分:50
历史总积分:50
注册时间:2019/1/9
发站内信
发表于:2019/2/18 17:04:15
#2楼
modbus协议,一个寄存器有四个数据,怎么读这个寄存器
19254
pqsh 版主
文章数:7424
年度积分:1084
历史总积分:19254
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2019/2/22 21:09:51
#3楼
那就单独读取就行,比如读取40001,40002等等,用short.还是你非要一次读取long再强行分开?
50
唱响青春之歌
文章数:78
年度积分:50
历史总积分:50
注册时间:2019/1/9
发站内信
发表于:2019/2/26 10:17:07
#4楼
40002这个寄存器如果有 四个数据怎么读
50
唱响青春之歌
文章数:78
年度积分:50
历史总积分:50
注册时间:2019/1/9
发站内信
发表于:2019/2/26 10:36:44
#5楼
单独读取不了吧?   共用一个寄存器
19254
pqsh 版主
文章数:7424
年度积分:1084
历史总积分:19254
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2019/2/26 16:31:55
#6楼
是这样的,如果你定义一个数据点假设叫a,io整形,地址40002,数据类型用的是short的话,它就是一个16位的,只占一个寄存器40002,有2个字节(一个字16位,等于2个8位的字节).
是long这些类型的话,那么它就是32位的,包括了40002和40003.总共32位有4个8个位的字节,4个字节的排列由swap决定.
你可以一次读取long,那就是2个寄存器,然后想办法拆出来(编程或者运算?).
最好还是设置为short(ushort),一个一个读,不用拆了.
你现在说4个数,应该是4个字节,要用程序或者运算拆出来.
拆低8位,直接与就是 &255.拆高8位,右移8位再与或者除以256再与.(>>8)&255或/256.
高低位位置取决于swap.
-------------------------------------
请引用或@,以最快看到你的问题,便于及时回复.
50
唱响青春之歌
文章数:78
年度积分:50
历史总积分:50
注册时间:2019/1/9
发站内信
发表于:2019/2/27 9:35:24
#7楼
好的 不过一个数等于两个字节,,你说的挺好,就是如果40003的话,,怎么用swap,寄存器已经选用40003,还怎么选到swap
19254
pqsh 版主
文章数:7424
年度积分:1084
历史总积分:19254
注册时间:2006/8/22
发站内信
2018论坛解答高手
发表于:2019/2/27 10:22:30
#8楼
不是选到swap,是写值到swap决定字节的排序.
swap你只要刚开始写一次就行.
给你举个浮点的说明一下(这个是swapf决定).
浮点用32位就是2个字4个字节组成.有的设备高字在前有的低字在前.
比如浮点数:3.14计算机转换存储是32位C3F5 4840,ieee大多数是4048 F5C3.反序了.
这时候你通讯定义数据点地址40002,类型浮点,那它就占用了40002和40003,也许40002=4048,40003=F5C3,也许40002内容=C3F5,40003内容=4840.组态王用swapf来调整对应各种情况的设备.
[此贴子已经被作者于2019/2/27 10:26:21编辑过]
50
唱响青春之歌
文章数:78
年度积分:50
历史总积分:50
注册时间:2019/1/9
发站内信
发表于:2019/2/27 16:20:20
#9楼
是通过写命令swap写入单片机,然后再读取单片机的寄存器,返回的数据是按照swap的排序?

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003