力控数组指针的实现
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
:《再问如何把一个变量的采样值保存到一个数组中呢》本论题共有134人阅读,有4人回复。
我设计了一个循环,每隔一定时间把变量值赋给一个中间变量,但是发现这个数组的每个元素都是一样的值,不知是怎么回事?该如何解决呢?
tmp为间接变量
WHILE(t<=15) DO
t=t+1;
tmp[t]=uc.PV;
Delay(100);
ENDWHILE
yz
以下是对《再问如何把一个变量的采样值保存到一个数组中呢》的回复:111
sunwaywell
VarRedir(DbVar,"t" + IntToStr(i, 10) + ".pv");
DbVar = i;
NEXT
这个循环结束后,可以看到t1 - t15都赋值完成了。
关于循环中用到的函数VarRedir,说明如下(详见力控联机帮助):
VarRedir
数据库变量重定向。
语法
VarRedir(var, NewTagPar)
说明
用于将数据库变量或间接变量重定向,对于数据库变量改变变量的数据库参数名称,使其指向其他数据库参数;而对于间接变量则改变其变量指向,使其指向名字为
NewTagPar的变量,该变量在DRAW中一定要存在。
通常可用于历史报表,趋势中变量动态替换。
参数
var: 重定向变量,该变量必须为数据库变量或间接变量。
NewTagPar:字符串类型,新数据库参数或变量名称名称。
示例
VarRedir(dbvar1, "a1.pv");//dbvar1将指向数据库参数a1.pv
VarRedir(dbvar1, "a2.pv");//dbvar1将指向数据库参数a2.pv
dbvar1为已定义的数据库变量。
VarRedir(var, "var1");
var为间接变量,var1为要转向的变量名称。
sunwaywell
.
.
tmp[15] = t15.pv;
第三步:就是yz的代码部分了WHILE(t<=15) DO
t=t+1;
tmp[t]=uc.PV; ENDWHILE
cowboy
cowboy
cowboy
confige 114
cowboy 114
窦哥
窦哥OK1