您好!
我正在 AM3359 Sitara ICEv2板上开发 CAN 节点。 我已将 Starterware DCAN Rx Tx 示例与 SYS/BIOS 合并、该示例可正常工作以发送 CAN 消息。
CAN 接收功能也可以、但在接收不到 CAN 消息之后、我只能接收3条 CAN 消息。 我认为这是因为我配置了3个消息对象。 我想了解 CAN 通信在 AM335x 中的工作原理。
我参考了 AM335x 的 TRM、但对我来说仍然不清楚。 是否有人可以共享一个好文档来解释 CAN 通信需要配置的所有内容以及如何使用这些消息对象?
根据我的理解、我们需要执行以下操作:
1. 将 DCAN 置于初始化模式
2.设置位时间
3.配置报文对象
4.将 DCAN 置于正常模式。
现在、我的问题是、一旦消息对象被配置为接收消息、并且在正常模式下调用 ISR 以指示消息已接收、那么我们是否会使 ISR 中的特定消息对象无效? 如果该报文对象无效、那么它是否会接收下一条 CAN 报文? 我们是否必须每次配置才能接收新的 CAN 消息?
对于每个 CAN 写入/Tx、我们是否必须配置报文对象?
使用以下版本:processor_sdk_rtos_AM335x_4_00_00_04和 pdk_AM335x_1_0_7
此致
Mohit