主题中讨论的其他器件:C2000WARE
您好!
我正在使用 controlCARD 来实现 EtherCAT 从站堆栈。 该软件基于\ti\c2000Ware_2_01_00_00\libraries\communications\EtherCAT\f2838x\examples\f2838x_cm_echoback_solution。 "自由运行"模式下的测试结果正常、但在"直流 Sync0模式"下失败。
当 EtherCAT 以 DC Sync0模式进入安全操作状态时、SYNC0事件 应周期性发生。 但是、这种情况并未发生。 SYNC0 (ESCSS_INTR_RIS 寄存器)的原始状态始终为零。 CM 永远不会进入 SYNC0 ISR。
我还通过 TwinCAT 检查了 ESC 寄存器、如下所示。 0x0980和0x0981寄存器正确。 我 发现 ESC 寄存器0x0984.Bit0=1、这意味着第一个 SYNC0脉冲挂起。
然后、我通过 TwinCAT 将 ESC 寄存器0x0981.Bit7从0更改为1、CM 正确进入 SYNC0中断 例程。
此外、如果我强制 将寄存器 ESCSS_INTR_SET.SYNC0_SET 设置为1、 CM 也会进入 SYNC0中断例程。
因此、在本例中、我认为缺少 SYNC0事件。 是否有任何方法来确认这一点? 或者是否测试了具有直流 sync0模式的示例项目?