EEPROM 数据写入指令库及其使用
EEPROM(v1.0)指令库用于将连续 V 存储区中的数据(例如:VB200 至 VB205)写入 EEPROM,使其永久保持。
注意:此指令库/程序的作者和拥有者对于该软件的功能性和兼容性不负任何责任。使用该plc编程软件的风险完全由用户自行承担。由于它是免费的,所以不提供任何担保,错误纠正和热线支持,用户不必为此联系西门子技术支持与服务部门。
参考:CPU的数据保持功能
参考:使用超级电容和电池卡进行数据保持-plc系统块数据保持设置
要使用 EEPROM 指令库,须遵循下列步骤:
-
取得 EEPROM 指令库文件,并添加到西门子编程软件 STEP 7-Micro/WIN 中;
-
按照要求编写用户plc程序调用 EEPROM 指令库。
添加 EEPROM 指令库
EEPROM 指令库
点击上面的链接下载 EEPROM 指令库到本地计算机硬盘,建议保存在 Micro/WIN 安装目录的 Lib 文件夹中。以下是一个完整路径的例子:
C:\Program Files\Siemens\STEP 7-Micro/WIN V4.0\Lib
然后将指令库库手动添加到 Micro/WIN 软件中。
参见添加指令库。
成功添加指令库后,用户可以在STEP7 Micro/win的指令树中找到‘EEPROM(V1.0)'
EEPROM 指令库
EEPROM 指令库编程
1、直接寻址方式存储
图2.EEPROOM_Direct
输入/输出
|
数据类型
|
注释
|
EN
|
BOOL
|
必须持续为1(高电平)
|
Start
|
BOOL
|
触发位,0->1上升沿变化激活”StoreToEprom”库指令
|
V_Start
|
INT
|
被保持数据的起始偏移地址 (例如:200=VB200)
|
Length
|
INT
|
被存储数据的长度(以字节为单位)
|
Memory
|
INT
|
”StoreToEprom”库指令需要的临时存储区(Word)
|
Busy
|
BOOL
|
”StoreToEprom”库指令在保存数据的过程中,值为1
|
Done
|
BOOL
|
”StoreToEprom”库指令数据保存完成后,值为1
|
表1.EEPROM_Direct 参数
2、间接寻址方式存储
图3.EEPROM_Indirect
输入/输出
|
数据类型
|
注释
|
EN
|
BOOL
|
必须持续为1(高电平)
|
Start
|
BOOL
|
触发位,0->1上升沿变化激活”StoreToEprom”库指令
|
V_Start
|
INT
|
该存储区中存储着被保持数据的起始偏移地址
例如:LD Q0.0
MOVD &VB200, MD20
此时MD20中存储着VB200的地址
|
Length
|
INT
|
被存储数据的长度(以字节为单位)
|
Memory
|
INT
|
”StoreToEprom”库指令需要的临时存储区(Word)
|
Busy
|
BOOL
|
”StoreToEprom”库指令在保存数据的过程中,值为1
|
Done
|
BOOL
|
”StoreToEprom”库指令数据保存完成后,值为1
|
表2.EEPROOM_Indirect参数
注意:
-
此库指令每个 s7-200PLC CPU 循环周期向 EEPROM 备份一个字节数据,因此备份多个数据往往需要多个西门子plc s7-200 cpu循环周期,必须保证该时间段内使能端(EN )持续为‘1’。建议用户用 SM0.0 调用库指令。
-
如果用户需要永久存储的是实数或双字整数,必须保证保存过程中数据保持不变。
-
EEPROOM 被刷写次数的典型值为 100,000 次,因此用户不得以较高的频率向 EEPROM 中备份数据。
-
只有 STEP7 Micro/Win V3.2+SP4 和 V4.0 版本才支持使用该西门子PLC指令库
|