回复:七十二变的孙悟空──VARIANT

pkh2006

西门子1847工业学习平台

  • 帖子

    872
  • 精华

    11
  • 被关注

    131

论坛等级:奇侠

注册时间:2013-08-25

普通 普通 如何晋级?

发布于 2016-12-13 10:38:46

9楼

展开查看
以下是引用Zane在2016-12-13 10:15:36的发言 >8楼

呵呵,题意的内涵就是不能使用UDT

以下是引用pkh2006在2016-12-13 09:31:22的发言 >7楼:当然是我最推崇的序...

引用7楼详细内容:

当然是我最推崇的序列化和反序列化


不过如果输入只是DB块号,那要求建的DB是需要以UDT建立,然后DB_ANY_TO_VARIANT,然后序列化,再反序列化

以下是引用Zane在2016-12-12 19:02:23的发言 >4楼:@Letham @Autom...

引用4楼详细内容:

@Letham @Automann 


出个题:


若干个全局数据块,要求根据数据块的块号将对应的数据块的内容拷贝到指定的全局数据块A。


数据块A与其他数据块的结构不一定相同,只是数据长度相同


要求:1200/1500通用指令实现

我说了,如果输入要求是DB块号,就得要UDT的DB块


如果不要求DB块号,那要求若干个全局数据块和指定DB,都是非优化的,然后都写成P#... BYTE ...,然后用反序列化传送或者MOVE_BLK_VARIANT


如果若干个全局数据块又是优化的,有不是UDT或者STRUCT,那无法实现。(也不能说无法实现,但是太麻烦,有一个变量,用一次序列化。)


但问题是既然这么去做,还不如把这个块放入UDT或者STRUCT会更简单,还不用出现非优化块,因为2.0的序列化和反序列化已经不要求是非优化的BYTE数组了

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10828条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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