问题描述:某客户HMI在快速切换时出现死机现象,无法切换页面;
解决思路:1、使用数据显示元件将切换基本窗口地址数据显示出来,在快速切换时发现数据无法清零。
2、为了防止出现无法切换情况在宏指令一直执行时,先将切换地址数据清理。
3、具体的宏指令命令如下:
short a=0
SetData(a, "Local HMI", LW, 2, 1)
DELAY(500)
GetData(LogoIndex, "Local HMI", RW, 5, 1)
if LogoIndex == 4 then
page = 102 //LOGo dryer e hopper
else
page = 107
end if
SetData(Page, "Local HMI", LW, 2, 1)
在宏指令中增加delay函数,放慢宏指令的执行那个速度,因为如果不加延时宏指令则会执行速度太快,导致page变量在0-102或0-107瞬间变化,从而 无法切换画面。 |