回复:求助格雷码转换二进制

西门子PLC学员

  • 帖子

    686
  • 精华

    5
  • 被关注

    7

论坛等级:侠士

注册时间:2005-11-22

黄金 黄金 如何晋级?

发布于 2011-09-20 15:09:40

8楼

好的,给你一个十二位的程序:
L P#50.0
T MD 100
L IW 0 //接格雷编码器
AW W#16#FF0F //对高四位进行屏蔽
T MW [MD 100] //将12位有效数据存入MW50
L 11 //12位数据循环11次
M001: T MW 40
ITD
L MD 100
+D
T MD 104 //左位的地址
L L#1
-D
T MD 108 //右位的地址
X M [MD 104]
X M [MD 108]
= M [MD 108]
L MW 40
LOOP M001
L MW 50
CAW //将ACCU1中的高低字节的数据进行交换
T MW 8
编码器的低位接IB0高位接IB1,MW8为编码输出,因为S7中一个字的存储是数据高位在字的低位,数据低位存在字的高位,所以IW的数据最后要用CAW转一下。在仿真中通过,正常使用。
学如逆水行舟,不进则退
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54620条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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