主题中讨论的其他器件:LAUNCHXL-F28379D
工具/软件:
您好、
我正在使用 LAUNCHXL-F28379D 进行 CAN 通信。
我使用了示例代码 can_ex2_loopback_interrupts 、其中我通过对中断进行注释并使用 can_msg_obj_no_flags 配置 can_setupMessageObject 来绕过所有中断。
我尝试在不使用中断的情况下发送 CANopen SDO 数据包、并 探测了 CAN_H 和 CAN_L 我观察到、SDO 数据包只有在从 main 函数退出后才会传输、并且它会连续传输、尽管没有 while 循环或无限 for 循环位于 main 函数内部、没有调用中断、并且在其他示例代码中也具有相同的行为。
我提供了延迟、以便电机驱动器可以确认发送的 CAN 打开 SDO 数据包、并能够使用 SDO 写入电机驱动的索引。
我想逐个发送数据包,因为我必须实现全 CAN 开放协议,以及为什么数据包只在主循环后才发送,为什么不在函数调用后立即发送。
请提供有关这些问题的说明,这是一个错误还是为什么要观察此行为 。
代码截图附在下面以供参考。


谢谢。
