技术论坛

200SMART高低字交换

作者 主题
游民

经验值: 66
发帖数: 8
精华帖: 0
主题:【求助】200SMART高低字交换
推荐帖


只看楼主 楼主 2021-06-15 22:17:39

求助各位师傅200smart怎么进行高低字交换呢


 
以下网友喜欢您的帖子:

  
重要声明:

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1700737&b_id=64&s_id=0&num=17

奇侠

经验值: 8523
发帖数: 885
精华帖: 8
回复:200SMART高低字交换
推荐帖


只看楼主 1楼 2021-06-16 02:25:29
两个MOVE把高低位字分别传送到另一个双字的低高位字。
个体职业者。
以下网友喜欢您的帖子:

  
至圣

经验值: 67551
发帖数: 14784
精华帖: 100
回复:200SMART高低字交换
推荐帖


只看楼主 2楼 2021-06-16 06:59:23

两个人要调换位置,你肯定知道怎么调。高低字节交换你是差哪里不明白?或许可能你是不知道一个字包含两个字节。你把这两个字节换个位就可以了。同理,一个双字又包含两个字……


 
以下网友喜欢您的帖子:

  
至圣

经验值: 24907
发帖数: 4536
精华帖: 10
回复:200SMART高低字交换
推荐帖


只看楼主 3楼 2021-06-16 08:10:07

用SWAP指令。


别人在休息的时候,我往前走。
以下网友喜欢您的帖子:

  
侠士

经验值: 1751
发帖数: 379
精华帖: 0
回复:200SMART高低字交换
推荐帖


只看楼主 4楼 2021-06-16 09:12:40

交换字节的话用SWAP指令,交换字的话用MOVE


路漫漫其修远
以下网友喜欢您的帖子:

  
至圣

经验值: 17408
发帖数: 6225
精华帖: 18
回复:200SMART高低字交换
推荐帖


只看楼主 5楼 2021-06-16 11:19:11

用SWAP,多个字的高低字节对调很麻烦,要一个一个写。


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 4392
发帖数: 669
精华帖: 0
回复:200SMART高低字交换


只看楼主 6楼 2021-11-24 06:08:39

仔细看下200smsrt系统手册吧


 
以下网友喜欢您的帖子:

  
侠士

经验值: 1419
发帖数: 100
精华帖: 0
回复:200SMART高低字交换
推荐帖


只看楼主 7楼 2021-11-24 08:30:14

 SWAP指令。直接使用此指令就能将高低字节交换。


不断学习,不断进步
以下网友喜欢您的帖子:

  
侠圣

经验值: 3727
发帖数: 149
精华帖: 0
回复:200SMART高低字交换


只看楼主 8楼 2021-11-24 08:34:12

看讨论多学习


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 3103
发帖数: 440
精华帖: 0
回复:200SMART高低字交换


只看楼主 9楼 2021-11-24 08:55:17

很不错,我也学习学习


云淡风轻
以下网友喜欢您的帖子:

  
游士

经验值: 223
发帖数: 17
精华帖: 0
回复:200SMART高低字交换


只看楼主 10楼 2021-11-24 09:30:06

swap。。。。


哈喽各位
以下网友喜欢您的帖子:

  
至圣

经验值: 17196
发帖数: 2948
精华帖: 6
回复:200SMART高低字交换


只看楼主 11楼 2021-11-24 11:35:50

 高低字交换一般使用于与第三方通讯的数据处理,其它地方很少会用到。

早先,200不支持MODBUS通信协议,与第三方通讯一般只能采用自由口通讯,而自由口通讯一般是以字节为单位,就不存在高低字交换问题,一般只需要排列好字节的顺序就可以,使用MOV_B指令最多,也不会使用到SWAP指令。

后来200支持MODBUS通信协议,smart一开始就支持,而MODBUS通信协议是以字节单位。西门子MODBUS库已经处理了字的字节地址顺序问题,用户就不必再做字节交换。

但对应双字数据,用户必须做高低字交换处理。在这种使用库的情况下,不能使用SWAP指令来处理双字数据,一般使用MOV_W


 
以下网友喜欢您的帖子:

  
至圣

经验值: 17196
发帖数: 2948
精华帖: 6
回复:200SMART高低字交换


只看楼主 12楼 2021-11-24 12:14:37

 如果你能打开由MODBUS库生成的若干个子程序,你会查找到它使用了很多SAWP指令来处理字的两个字节地址顺序。这样,如果我们再使用SWAP来处理双字的两个字地址顺序那就会产生错误,必须使用MOV_W指令才对。


 
以下网友喜欢您的帖子:

  
侠圣

经验值: 3545
发帖数: 402
精华帖: 9
回复:200SMART高低字交换


只看楼主 13楼 2021-11-24 14:45:10

用三条MOV_W指令吧


有啥别有病,没啥别没钱
以下网友喜欢您的帖子:

  
侠士

经验值: 1479
发帖数: 160
精华帖: 0
回复:200SMART高低字交换


只看楼主 14楼 2021-11-26 08:27:10

MOV比较直接点


 
以下网友喜欢您的帖子:

  
至圣

经验值: 14230
发帖数: 3256
精华帖: 1
回复:200SMART高低字交换


只看楼主 15楼 2021-11-26 20:07:33

MOV_W交换


就是一个字——坚持!!!
以下网友喜欢您的帖子:

  
侠圣

经验值: 4392
发帖数: 669
精华帖: 0
回复:200SMART高低字交换


只看楼主 16楼 2021-11-27 04:55:00

跟着学习一下。系统手册要仔细看看,真的比什么书都好使。


 
以下网友喜欢您的帖子:

  
侠客

经验值: 827
发帖数: 70
精华帖: 0
回复:200SMART高低字交换


只看楼主 17楼 2021-11-27 17:21:41

MOV吧,最直接


 
以下网友喜欢您的帖子:

  
  • 上一页
  • 1
  • 下一页
收起
200SMART高低字交换
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。