我举的例子是顺着网星网友的说法的.只说明普通存EEPROM的编程,跟断电存EEPROM没有关系.
断电存EEPROM用不着编程,只需把数据的地址安排在MB0-MB13之中,并在系统块的断电数据保持中设置它们为保存.如果要储存的数据地址不是MB0-MB13,则要小添程序(地址只是随机的):
LDN SM0.1
MOVW VW2, MW0
Network 2
LD SM0.1
MOVW MW0, VW2
你可以找本西门子200的手册看看,这样解决问题更快.
什么重要的数据?用超级电容保存7天左右还不行吗?建议:
1、如果数据为0会导致程序无法运行或报警,可以将初始值写在数据块中。数据块是保存在EEPROM中的,永远不会丢失。这样,当停电时间过长导致数据为0时,再上电时会自动加载数据块的内容。
2、如果确实需要将数据当前值掉电保持较长时间(超过1周),可选购电池盒。
内容的回复:回复内容:
对:handapipi 关于也就是说,只要我的VW2里的数值不超过255就没问题是吧?多谢前辈! 内容的回复:
既然数据不超过255,那就使用字节.例如VW2的数据不超过255,那数据就在VW2的低8位,也就是VB3,VW2的高8位都是0,也就是VB2=0..但是如果VW2是负的,则它的第16位是1.
如果VW的数据不会超过+255,你可以使用
LDN SM0.1
MOVB VB3, MB0
Network 2
LD SM0.1
MOVB MB0, VB3
其它程序照常使用VW2
如果要万无一失,加上
LD SM0.1
MOVB 0, VB2