SDO修改参数的命令字是怎么定义的

  1. 首先我们确定e的值:因为我们正常的SDO通讯都是使用的加速传送(最多传输4字节数据),所以e = 1
  2. 然后我们确定s的值:如果我们不指定数据长度,则s=0,否则s=1
  3. 然后我们确定n的值:根据e和s的值,如果我们不指定数据长度,则n无意义,n=0,那么命令字就等于00100010b,即0x22
    如果指定数据长度,则s=1,这时候n有效,n表示数据部分无意义数据的字节数,注意是无意义的字节数。
    如果我们只使用1个字节,则无意义字节数为3 (BYTE6-8)。n=11b,那么命令字就等于00101111,即0x2F(这里要注意SDO的数据格式,八个字节依次是:命令字(BYTE1),索引(BYTE2-3),子索引(BYTE4),数据(BYTE5-8))
    同理,如果我们使用两个字节,则无意义字节数为2,(BYTE7-8),n=10b。那么命令字就等于00101011,即0x2B。
    三个字节的0x27和四个字节的0x23,想必你一定能算出来吧。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值