回复:关于modbus地址

Zaxife

  • 帖子

    2450
  • 精华

    31
  • 被关注

    78

论坛等级:至圣

注册时间:2008-07-24

普通 普通 如何晋级?

发布于 2011-07-10 05:31:58

1楼

HoldStart:通讯保持寄存器在内存中的起始地址。
如果HoldStart=&VB0,那么0x 03 00 00 00 01 CR CR 读取的就是VW0的值;
如果HoldStart=&VB4000,那么0x 03 00 00 00 01 CR CR 读取的就是VW4000的值;

1 如果HoldStart=&VB0,那么HoldStart,HoldStart+2就是VW0,VW2。
2 实在不懂你第二点想说的什么。modbus协议中,有01、05、15是对位进行操作的功能码。V0.0你只能在上位机软件里面对一个保持寄存器中的值进行与操作。比如保持寄存器中的值是0x23H,与0x01与操作(23H AND 01H),结果就是1;如果保持寄存器中的值是0x22H,与0x01与操作(22H AND 01H),结果就是0。所以,要取V寄存器中的哪一位,就用保持寄存器的值与二进制对应的权值进行与操作就取得该位的值。取V0.1就与0x02,取V0.7就与0x80。
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33274条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。