工具/软件:
您好:
目前我们面临的一个问题是将 EthcatCat 从属设备"RevisionNo" 值设置为大于0xFF。
此问题会影响 EEPROM 上的"Configured Station Alias"。 下电上电后、此值始终复位回默认值(例如默认值为0)。
经过彻底 调查后、我们找到了问题的根本原因。 它位于 source "ti-Sitara-support-packages/TI_SDK/ind_comms_sdk_am243x/source/industrial_comms/EtherCAT_slave/iss_fwhal/tiscbsp.c"中 、方法为"bsp_eeprom_emulation_init ()" 、网址为:556、其中
数据类型转换似乎不正确、这会导致发出"INVALID_CRC_FLAG"。
/*This check compares the data at offset 24*/
temp_reg = *(uint32_t *)((uint8_t *)(eeprom_cache + (0xC << 1)));
if(temp_reg != (uint8_t)(*((uint8_t *)(g_bsp_params.default_tiesc_eeprom + 24))))
{
invalid_crc_flag = 1;
}
因此、默认 EEPROM 将加载到 EEPROM_CACHE。
更正数据类型可解决此问题。
我的问题是、 最新的 SDK 中是否已经解决了此问题?
谢谢你。