自建极简Ethercat主站-第5章 从站信息EEPROM访问

第5章 EEPROM访问

源码地址

5.1 SII EEPROM简介

​ 从站的ESI文件会被转换成bin文件存储在EEPROM中,从站支持的EEPROM容量为1Kbit~4Mbit。EEPROM存储的数据内容如下表所示

字节 EEPROM起始地址(字地址,地址+1=字节+2) 内容
0x00~0x0F 0x00 ESC寄存器配置区
0x10~0x1F 0x08 厂商数据区
0x20~0x27 0x10 保留,应为0
0x28~0x2F 0x14 引导邮箱配置
0x30~0x37 0x18 标准邮箱配置
0x38~0x39 0x1C 支持邮箱协议
0x3A~0x7B 0x1D 保留,应为0
0x7C~0x7D 0x3E EEPROM大小
0x7E~0x7F 0x3F 版本
附加信息

EEPROM中的前128字节是必须的基本信息,描述如下:

  1. ESC寄存器配置区:EEPROM的前16个字节的数据,ESC在上电或者复位的时候自动读取,然后加载到相应的寄存器,并计算校验和。XML中的ConfigData的数据就是该区域前10字节的数据,包含了PDI的配置、sync信号的配置等。
  2. 厂商数据区:包含厂商ID、产品代码、修订号、序列号,是对象字典0x1018中的内容。
  3. 引导邮箱配置:BootStrap状态下,进行FOE数据传输的时候会用到该邮箱配置来配置SM。该配置可以在XML中的BootStrap看到。前提是Ethercat Slave Stack Code Tool的配置中配置了Bootstrap和FOE功能。
  4. 标准邮箱配置:COE通信的时候所用的邮箱配置,可以用来配置SM,当然SM也可以用附加信息中的SM的信息来配置。
  5. 支持的邮箱协议:从站可以进行那些协议的通信,EOE,COE,FOE,SOE,VOE等。
  6. EEPROM大小:可以在XML中的EEPROM中看到。

5.2 附加信息

附加信息的存储结构如下表所示:

参数 数据类型 描述
Category Header Unsigned16 类别,见类别定义表
Unsigned16 数据内容长度,单位是字(这里的字是两个字节,其实是半字)
Category Data Unsigned16 类别数据

类别定义表:

类别 描述
NOP 0x0000 无信息
STRING 0x000A 存储的字符串数据
DataTypes 0x0014 将来使用的数据类型
General 0x001E 存储一般信息
FMMU 0x0028 存储FMMU相关信息
SyncManager 0x0029 存储同步管理器配置信息
TXPDO 0x0032 存储TXPDO信息
RXPDO 0x0033 存储RXPDO信息
DC 0x003C 存储分布时钟的信息
End 0xFFFF 结束后,其他的都是0xFFFF填充
5.2.1 STRING类别数据结构
参数 字节地址偏移 数据类型 描述
nStrings 0x0000 Unsigned8 字符串的个数
str1_len 0x0001 Unsigned8 字符串1的长度
str1 0x0002 Unsigned8的数组 字符串1的内容
str2_len 0x0002+str1_len Unsigned8 字符串2的长度
str2 0x0003+str1_len Unsigned8的数组 字符串2的内容
strn_len Unsigned8 字符串n的长度
strn Unsigned8的数组 字符串n的内容
PAD_BYTE(补位) Unsigned8 如果类别内容的长度是奇数,则需要填充,默认0x00,类别头中的总长度已经包含了补位长度
5.2.2 General 类别数据结构
参数 字节地址偏移 数据类型 描述
GroupIdx 0x0000 Unsigned8 组信息(供应商特定)
ImgIdx 0x0001 Unsigned8 图像信息(供应商特定)
OrderIdx 0x0002 Unsigned8 设备订货号(供应商特定)
NameIdx 0x0003 Unsigned8 设备名称信息(供应商特定)
Reserved1 0x0004 Unsigned8 保留
CoE Details 0x0005 Unsigned8 bit0:使能SDO bit1:使能SdoInfo bit2:使能PdoAssign bit3:使能PdoConfig bit4:使能Pd0Upload bit5:使能Complete Access
FoE Details 0x0006 Unsigned8 bit0:使能FOE
EoE Details 0x0007 Unsigned8 bit0:使能EOE
SoE Details 0x0008 Unsigned8 保留
DS402 Channels 0x0009 Unsigned8 保留
Sysman Class 0x000a Unsigned8 保留
Flags 0x000b Unsigned8 bit0:使能SafeOp bit1:使能notLRW
Current On EBus 0x000c Unsigned16 EBUS电流消耗,单位mA
Reserved2 0x000e BYTE[2] 保留
Physical Port 0x0010 Unsigned16 物理接口
Reserved3 0x0012 BYTE[14] 保留
5.2.3 FMMU类别数据结构
参数 字节地址偏移 数据类型
FMMU0 0x0000 Unsigned8 0x00:未使用;0x01:用于输出;0x02:用于输入;0x03:用于轮询输入邮箱状态寄存器(0x80D.0)
Unsigned8
FMMUn Unsigned8
5.2.4 SyncManager 类别数据结构
参数 字节地址偏移 数据类型 描述
Physical Start Address 0x0000 Unsigned16 SM 物理起始地址
Length 0x0002 Unsigned16 SM 长度
Control Register 0x0004 Unsigned8 SM 控制寄存器配置
Status Register 0x0005 Unsigned8 忽略
Enable SyncManager 0x0006 Unsigned8 bit0:使能SM;bit1:固定内容;bit2:虚拟同步管理通道;bit3:仅OP状态使能SM
SyncManager Type 0x0007 Unsigned8 0x00:没有使用或未知;0x01:用于邮箱输出;0x02:用于邮箱输入;0x03:用于过程数据输出;0x04:用于过程数据输入;
5.2.5 TPDO与RPDO数据结构
参数 地址 数据类型 描述
PDO Index 0x0000 Unsigned16
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值