回复:批量WORD转REAL SCL/STL 程序

已锁定

askab

  • 帖子

    401
  • 精华

    5
  • 被关注

    34

论坛等级:侠圣

注册时间:2005-07-24

黄金 黄金 如何晋级?

发布于 2021-05-17 21:14:52

3楼

DB_Source_NO : Int;  DB_Source_Address : Int;  DB_Target_NO : Int;   DB_Target_Address : Int;

在你定义了DB块号 和DB起始地址,则说明你首先已经定义且生成好了DB块,

那是否可以简单一些。

DB_Source_data :array[1..NO] OF  Int;  //定义WORD 型数据 为 NO 为个数 

DB_Target_data :array[1..NO] OF  REAL;  //定义REAL 型数据 为 NO 为个数 

FOR i:= 1 TO NO BY 1 DO

DB_Target_data[i]:=  INT_TO_REAL(WORD_TO_INT(DB_Source_data[i]));

END_FOR; 

可以用UDT 自定义DB_Source_data和DB_Target。

然后调用SFC20 即可。

你觉得是否书写和理解更清晰一下。

一般最好不要用

WORD_TO_BLOCK_DB(INT_TO_WORD(#DB_Target_NO)).DD(#DB_Target_Address + #i * 4);

这种格式,容易出错,不是编译过去就是一定是正确运行的。

个人建议。

大家同行,you ok ? me !
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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