把之前写好的导入进去,发现参数不能断电保持,然后就想办法,正好遇到论坛维护。看了下百度,试了下
然后模拟了下,写入的参数能重启模拟器后保持,没定义的参数不能断电保持。下一步我就实际测试,发现断电之后还是不能保持,(产品型号是TPC7062TD(KT))我就觉得是不是先把0写进去了,换了个顺序还是不行啊
后来听说可以在启动策略里面加“!FileIniReadValue(,strSection,strItem,objResult)”,然后()里的东西不知道怎么定义,直接写数据通不过语法检查。没办法,就用PLC断电保持做了。那问题来了,
mcgs断电保持该怎么做?
多个数据能一次全部写进INIT里吗? 这条语句是弄错了地方还是怎么的?!SaveDataInit( )
再次感谢各位给的帮助
!SaveSingleDataInit(Name)
函数意义:本操作把数据对象的当前值设置为初始值,防止突然断电而无法保存,以便MCGS嵌入版下次启动时这些数据对象能自动恢复其值
返 回 值:数值型
返回值 = 0,调用正常
返回值 <> 0,调用不正常
参 数:Name,数据对象名
实 例:!SaveSingleDataInit(温度)
!FlushDataInitValueToDisk() '执行成功,把温度的当前值设置成初始值,下次启动时温度的值为上次退出时的值
注意事项:此函数必须与!FlushDataInitValueToDisk()一起使用,否则保存初值失败
用!FileIniReadValue 和 !FileIniWriteValue 或!FileIniWriteNoFlush(个人推荐使用)来做也可以,最后要配上!FileIniFlush一起使用。这些函数用法在帮助里都有详细说明和例子,看看就会明白。
数据要一个一个保存,执行一条保存一个数据,数据多就先依次保存到内存,最后一次性刷盘。因为通常需要断电保存的数据也不会太多,而且一般只需在启动时读取,也没有多麻烦,做过有个工程需要断电保存的数据有几百个,写几百条脚本函数上去也挺简单的,大部分都是复制粘贴的,不必多虑。
此外,数据断电保存功能一定要在真的触摸屏上测试,模拟运行环境是完全不同的,没有硬件支持,测试通过也没什么意义,和实际的不是一回事。