回复:如何把DB块中几百个Int 数据批量的转换到另外一个DB中,使之成为Real数据

艾星落尘

  • 帖子

    996
  • 精华

    1
  • 被关注

    179

论坛等级:至圣

注册时间:2010-02-26

白金 白金 如何晋级?

发布于 2018-01-19 21:16:30

3楼

如上所说的,用指针和循环的程序能够实现你的目的,写一个程序给你借鉴下,几百个数据转化,有点多啊,不知道是否可行,程序如下:定义DB1的数据为INT型的,10个,DB2的数据为REAL型的10个,都是从第0个字节开始的,

      OPN   DB     1                    //int的DB块

      OPN   DI     2                    //REAL的DB块

      LAR1  P#0.0                       //初始化地址寄存器1,从第一个字节开始

      LAR2  P#0.0                       //初始化地址寄存器2,从第一个字节开始

      L     10

C001: T     #TEMP1                      //中间变量,是循环程序的结构

      L     DBW [AR1,P#0.0]             //寄存器间接寻址,读取INT数据

      ITD                               //INT转成DINT

      DTR                               //DINT转成REAL

      L     DID [AR2,P#0.0]             //存放到目标地址的DB块里

      +AR1  P#2.0                       //地址寄存器自加两个字节

      +AR2  P#4.0                       //地址寄存器自加四个字节

      L     #TEMP1

      LOOP  C001                        //执行循环程序


一个人在战斗
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10587条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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