举个例子说明一下在程序里设置永久保持,假如你在触摸屏上输入一个数值,这个数值的地址为VW20,需要做成掉电保持,如图:
找一个用不到的地址,例如VW1000作为辅助存储器,如果VW20的值不等于VW1000(开始的时候都是0,当给VW20输入一个数值的时候,VW20就会不等于VW1000,此时执行一次掉电保持,20存入SMW32(需要保持的地址),2存入SMB31(需要保持的数据格式),置位SM31.7,到这里就完成了掉电保持(手册上写的很明白),最后再做一步将VW20的值存入VW1000,这样两个寄存器的值就相等了,那么再次执行掉电保持程序的条件是:1、改变VW20的值(重新输入),2、电池耗尽导致VW1000的值清零。也就是每修改一次VW20的值,做一次掉电保持,或者长时间断电再上电后做一次掉电保持,刷EPROM虽然有次数限制,但是上述条件每次只执行一次,应该不影响的。