minofan
级别: 探索解密
精华主题: 0
发帖数量: 32 个
工控威望: 142 点
下载积分: 725 分
在线时间: 21(小时)
注册时间: 2017-08-19
最后登录: 2020-12-08
查看minofan的 主题 / 回贴
楼主  发表于: 2018-04-25 11:14


如图,
D200(D201) =  H 701B0303

有什么指令或者办法将这个D200(D201)的值拆分成:

D1 = H 70000000
D3 = H     1B0000
D5 = H          0300
D7 = H              03

或者有没有办法直接将D200 (D201) 拆成:

D1 = 70
D3 = 1B
D5 = 3
D7 = 3

红包求助
tingfenghu
级别: 工控侠客

精华主题: 0
发帖数量: 2845 个
工控威望: 3617 点
下载积分: 3517 分
在线时间: 3803(小时)
注册时间: 2007-11-04
最后登录: 2024-11-22
查看tingfenghu的 主题 / 回贴
1楼  发表于: 2018-04-25 12:13
用单片机因为资源有限,很多是不能位操作,一般采用逻辑运算进行位操作。
需要保留与1进行运算,不需要保留的位与0运算,然后移位。
FNC26 AND

1,将D1,D2值为HFF
DAND D200  D1   D10  ,D10,D11值为H03

2,将D3,D4值为HFF00
DAND D200  D3   D12  ,D12,D13值为H0300
然后将D12,D13,右移4位,

其它同样用法
[ 此帖被tingfenghu在2018-04-25 12:20重新编辑 ]
本帖最近评分记录:
  • 下载积分:+1(ddybfl) 热心助人!
  • 二手PLC,触摸屏,伺服驱动,各类气动设备
    http://shop58129605.taobao.com/
    tingfenghu
    级别: 工控侠客

    精华主题: 0
    发帖数量: 2845 个
    工控威望: 3617 点
    下载积分: 3517 分
    在线时间: 3803(小时)
    注册时间: 2007-11-04
    最后登录: 2024-11-22
    查看tingfenghu的 主题 / 回贴
    2楼  发表于: 2018-04-25 13:10
    引用
    引用第2楼twingo49于2018-04-25 12:47发表的  :
    如果你是用FX3U,請試試看WTOB跟DIS這兩個指令

    DIS可以,原来3U新增这么多指令,
    之前CRC也是自己写,现在3U也可以直接输出。
    二手PLC,触摸屏,伺服驱动,各类气动设备
    http://shop58129605.taobao.com/