技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > 关于WINCC C 脚本 和 VB脚本一些问题

关于WINCC C 脚本 和 VB脚本一些问题

刘玉蓉 发布于2014-08-21 17:56 4 0 标签:

刚接触WINCC,对与脚本的语法不是很熟悉,就想问一下全局变量和局部变量数据传送的问题。
有一个整形的变量:tag
对于C脚本:
#define tag "tag"
int temp;
temp=GetTagsword(tag); //这是把全局变量的值传送给局部变量;
if (temp>0)
{
temp=temp+1;
}
SetTagsword(tag,temp) //这是把局部变量的值传给全局变量,但是编译时提示警告;

如上一段C脚本可运行,但编译时有警告,不知道正确的传送格式应该是这样的,这种tag=temp或"tag"=temp格式不行啊。如果上述例子改为VB脚本的话,传送格式应该是怎样的,全局怎么传给局部,局部又怎么回给全局变量。

问题补充:
分号不算拉,要是少了编译过不了,这里忘了,警告的提示是说
SetTagsword(tag,temp),警告时英文这里用了temp,这用数字就没有了,但是要不这样传送那要怎么传送啊?

佳答案

后一条语句少了个分号,根据编译的警告就能知道错在哪里。
VB脚本更简单

Dim temp
temp = HMIRuntime.Tags("tag").Read
If  temp > 0 Then
    temp = temp + 1
End if
HMIRuntime.Tags("tag").Write temp


______________________________________________________________________

看了下函数SetTagSWord的参数value要求类型为short int,把temp定义为short int就没有警告了

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签