欢迎回到技成培训网
技成培训网
电工题库宝典
技成电工课堂
PLC练习题
技成PLC课堂
变频器故障查询
技成PLC学吧
伺服驱动故障查询
技成PLC网校
手机扫码下载
黄金会员
权益加码,给自己多一个选择!
白金会员
金钻会员
10年会员服务,10000+精品视频任意学!
搜索
热门课程
当前位置:技成首页 > 文章中心 > 技成百科 > 在UDT中如何建立String数据类型
如图片中STRING[4],其中4是字符串的长度,但是图片中UDT中定义的字符串看不太明白!我要用SFC20块进行传递!所传递的字符串是:211808F070
图片说明: 1,UDT变量 2,通过SFC20块拷贝后的结果图
佳答案
1.从数据类型的意义上说 UDT 并不被 CPU 所识别,而是在离线程序中自定义(组合)的数据类型。 S7 程序的自定义数据类型并不能装载到 S7 CPU 中。UDT 是由递增的编辑器创建并编辑或由源文件的编译而生成。 当在块调用中进行变量传递时是不能将 UDT 作为内存地址区域来传递的。因此推荐将传递的变量指定为字节数据类型并与其数据长度相一致,或者使用 UDT 的符号名来定义 IN, OUT 和 IN_OUT 参数,因为系统将自动生成相对应的地址。 详细实例和说明见:https://support.automation.siemens.com/CN/llisapi.dll?func=cslib.csinfo&objId=22525291&ehbid=24520368&load=treecontent&lang=zh&siteid=cseus&aktprim=0&objaction=csview&extranet=standard&viewreg=CN2.其SRCBLK与DSTBLK的类型是ANY的,是用指针表示的.其中一种表示方法:P#[数据块.]位地址 类型号 重复系数.如:P#M50.0 BYTE 10就是从MB50开始10个字节的长度的数据“211808F070". CALL SFC20 SRCBLK :=P#M 50.0 BYTE 10 RET_VAL:=MW80 DSTBLK :=P#M100.0 BYTE 10
若有收获,就点个赞吧!
微信扫一扫分享
阅读与本文标签相同的文章
上一篇:晶体管/继电器模块
下一篇:CPU选型