西门子S7-200 CPU内EEPROM写入的几种情况
西门子S7-200 CPU内EEPROM写入的几种情况
EEPROM的写入分为三种情况:
1、MB0—MB13的设置,只需在系统块—断电数据保持中设置。
默认情况下,系统块设置如下图蓝框中所示,即MB14—MB31,这些区域没有对应的EEPROM区域,无须考虑EEPROM写入次数限制。
图1
MB0—MB13如果在系统块中设置成掉电保持区域,如图1红框中所示,并将系统块下载到CPU之后,则这14个字节的数据在掉电的瞬间会将数值写入EEPROM中,如果掉电时间超过超级电容和电池的保持时间之后,再上电时,CPU会将EEPROM中存储的数据数值写回到RAM中对应的存储区,实现**保持数据的目的。
注意:实现该功能一定要将修改过的系统块下载到CPU中。
2、下载数据块时,将定义的数据下载到EEPROM中。
数据块中定义的数据,如图3,当下载数据块的时候,会将定义的数据下载到EEPROM中,这样,当掉电时间超过超级电容和电池的保持时间之后,再上电时,CPU会将EEPROM中存储的数据块中定义的数据数值写回到RAM中对应的存储区,实现**保持数据的目的。也就是恢复成数据的初始设置值。
注意:实现该功能一定要将定义好数据的数据块下载到CPU中。
图2
3、使用SMB31和SMW32控制字来实现将V区的数据存到EEPROM中
特殊存储器字节31(SMB31)命令S7-200将V存储区中的某个值复制到**存储器的V存储区,置位SM31.7提供了初始化存储操作的命令。特殊存储器字32(SMW32)中存储所要复制数据的地址。如图3为S7-200系统手册内关于SMB31和SMW32的使用说明。
图3
采用下列步骤来保存或写入V存储区中的一个特定数值:
1. 将要保存的V存储器的地址装载到SMW32中。
2. 将数据长度装载入SM31.0和SM31.1。具体含义如图3所示。
3. 将SM31.7置为1。
图4
注意:如果在数据块中定义了某地址的数据,而又使用这种办法存储同样地址的数据,则当CPU内超级电容或电池没电时,CPU再上电时将采用SMB31和SMW32存储的数据。