您好、TI 专家:
我在尝试通过 FOE 协议发送文件时遇到问题。 我的器件是 TMDS243GPEVM、我正在使用的 SDK 版本为 mcu_plus_sdk_am243x_08_06_00_43。 EtherCAT 主站版本为 IGH EtherCAT 主站1.6.0-RC1。 CCS 工程是从 SDK 示例 ethercat_slave_cia402_demo_am243x-evm_r5fss0-0_freertos_ti-arm-clang 导入的。
我通过添加几行代码来注册 FOE 协议的回调函数、对演示项目进行了一些修改。 SDK 中定义的回调函数:mcu_plus_sdk_am243x_08_06_00_43\examples\industrial_comms\ethercat_slave_demo\common\os\freertos\esl_foeDemo.c.
我将使用 IGH fooe_write 命令将文件发送到 AM2434。 但是、在输入命令时、我遇到了错误"无法通过 foe 写入:fooe_timeout_error"。
为了尝试诊断此问题、我使用 Wireshark 捕获了网络数据包。 从器件似乎没有对最后一个数据包做出"ACK"响应、导致主 FOE 超时错误。
最后一个数据包为108字节、而之前的数据包为244字节。 数据包大小的这种差异是否就是从器件无法处理该帧的原因?
您可以帮助我缩小此消息的范围吗?