QQ登录

只需一步,快速开始

WINCC编译C语言动作,说全局变量空间超限,代码超限。

[ 复制链接 ]
WINCC编译C语言动作,说全局变量空间超限,代码超限。

一个按钮动作时,分别给几百个PLC外部变量赋值。

在编译保存时,提示错误:

global variable space is restricted to 64k

之后我删除了一半,又显示"代码空间限制在...",大意说代码行数过多。

我的问题是:

1、遇到这种一个按钮按下要给很多很多变量赋值的情况,应该怎么处理?


----------这个按钮按下触发这种语句:

if(i==1)

{

......

10行代码

}

.........

........

if(i==700)

{

......

10行代码

}

.所以总共写了有7000行。

因为对wincc配方和结构变量等不熟悉,而且时间紧,所以都是一个个赋值的,造成了这样的代码过长的情况。

一般用什么办法解决?



----------如果变量名和赋值有规律可考虑用循环,这要看你实际内容了


---------用项目函数啊。

一个不够,就用几个项目函数。

按钮动作中,分别调用就是了。




-----------定义一个带参数的模块,然后在动作中调用。这样只要700行。


--------谢谢您们的解答~~~

我去找下项目函数和模块的教程。


---------建立了一个项目函数MOVE,将后面3个变量值mov到前面3个变量里。思路是将外部变量名称直接传给函数,由函数处理变量的move,但是脚本里却出现编译错误,这是哪儿错了?


-----用raw变量, 一个顶50个


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索