Ehercat代码解析中文摘录<9>

13 EEPROM处理

为了识别EtherCAT从站并提供参数(例如过程数据、支持的邮箱协议),每个EtherCAT从站都必须有一个SII(从站信息接口)。通常此信息存储在通过I²C连接到ESC的EEPROM中。根据使用的ESC(参见ESC数据手册),也可以仿真EEPROM,这意味着数据存储在应用存储器中并由从站应用程序处理。

13.1 EEPROM仿真

自SSC版本5.01起支持EEPROM仿真,并可通过表19:EEPROM仿真设置中列出的设置进行控制。

表19:EEPROM仿真设置

设置 描述
ESC_EEPROM_EMULATION 如果设置为1,则启用EEPROM仿真。指针 pEEPROM 用于访问EEPROM数据,并且需要在启动时初始化。pEEPROM 是在 ecatappl.h 中定义的全局指针。
CREATE_EEPROM_CONTENT 仅在SSC工具中可用。如果设置为1,则在从站文件生成过程(见第12.3章 创建文件)中,将创建一个包含根据从站配置的EEPROM数据的头文件。
ESC_EEPROM_SIZE 可用的EEPROM缓冲区大小(字节)。
EEPROM_READ_SIZE ESC单次读取访问可以处理的字节数。更多细节请参见ESC数据手册。ET1100/ET1200:8字节
EEPROM_WRITE_SIZE ESC单次写入访问可以处理的字节数。此值始终为2。

如果从站应用程序在使用SSC工具生成从站文件后发生了更改,或者如果基本SSC用于从站开发,则需要生成EEPROM内容。因此,提供了一个额外的"EEPROM编程"工具(见第13.2章)。

13.2 EEPROM编程

当存在物理EEPROM或仿真EEPROM时,需要生成EEPROM内容。这可以通过多种方式完成,例如使用TwinCAT(见[3])或通过本章描述的EEPROM编程工具(图50:EEPROM编程工具)完成。

图50:EEPROM编程工具

(图注:展示EEPROM编程工具主界面,包含"File"、"Slaves"菜单,以及"Device Description"和"Slaves"两个列表区域。)

13.2.1 EEPROM编程器用户元素

文件菜单(图51:EEPROM编程器 | 文件):

  • [打开]:打开一个ESI文件。

  • [另存为]:将EEPROM数据保存为二进制文件或头文件。

图51:EEPROM编程器 | 文件

(图注:展示"File"菜单下拉选项,包含"打开"(Ctrl+O)和"另存为..."(Ctrl+S)。)

从站菜单(图52:EEPROM编程器 | 从站):

  • [扫描]:扫描可用网卡上连接的EtherCAT从站。

  • [编程所选]:对从站列表中选择的从站进行EEPROM编程。

  • [全部编程]:对所有找到的从站进行EEPROM编程。

图52:EEPROM编程器 | 从站

(图注:展示"Slaves"菜单下拉选项,包含"扫描"(F5)、"编程所选"和"全部编程"。)

列表元素(图53:EEPROM编程器 | 列表元素):

  • [设备描述]:在打开的ESI文件中定义的所有设备描述列表。

  • [从站]:所有连接从站的列表。

图53:EEPROM编程器 | 列表元素

(图注:展示主界面左侧的两个列表窗格,上方为"Device Description"列表,下方为"Slaves"列表。)

相关推荐
三水不滴9 小时前
Redis缓存更新策略
数据库·经验分享·redis·笔记·后端·缓存
ziqi52212 小时前
第二十四天笔记
笔记
马猴烧酒.12 小时前
【JAVA数据传输】Java 数据传输与转换详解笔记
java·数据库·笔记·tomcat·mybatis
ziqi52212 小时前
第二十五天笔记
前端·chrome·笔记
dalong1013 小时前
A11:plus 控件窗口绘图基础
笔记·aardio
历程里程碑13 小时前
Linxu14 进程一
linux·c语言·开发语言·数据结构·c++·笔记·算法
三水不滴14 小时前
Redis 持久化机制
数据库·经验分享·redis·笔记·缓存·性能优化
不断进步的咕咕怪15 小时前
meme分析
笔记
中屹指纹浏览器15 小时前
进程级沙箱隔离与WebGL指纹抗识别:指纹浏览器核心技术难点与工程落地
经验分享·笔记
sayang_shao15 小时前
Rust多线程编程学习笔记
笔记·学习·rust