ZHCAF63 June   2024 MSPM0G3507

 

  1.   1
  2.   摘要
  3.   商标
  4. 1引言
    1. 1.1 连接 CAN 和 I2C 的桥接器
  5. 2实施
    1. 2.1 原理
    2. 2.2 结构
  6. 3软件说明
    1. 3.1 软件功能
    2. 3.2 可配置参数
    3. 3.3 自定义元件的结构
    4. 3.4 FIFO 的结构
    5. 3.5 I2C 接收和传输(透明传输)
    6. 3.6 I2C 接收和传输(协议传输)
    7. 3.7 CAN 接收和传输
    8. 3.8 应用集成
  7. 4硬件
  8. 5应用程序方面
    1. 5.1 结构灵活
    2. 5.2 I2C 的可选配置
    3. 5.3 可选的 CAN 配置
    4. 5.4 CAN 总线多节点通信示例
  9. 6总结
  10. 7参考资料

CAN 接收和传输

对于 CAN 接收,在 bridge_can.c 中定义了 2 个全局变量。

DL_MCAN_RxBufElement rxMsg;
Custom_Element gCAN_RX_Element;

下面是 CAN 接收的过程。

  1. 调用 getCANRxMsg() 以获取从 CAN message RAMrxMsg 的完整消息。
  2. 调用 processCANRxMsg(),从 rxMsg 中提取信息并将其存储到 gCAN_RX_Element 中。
  3. gCAN_RX_Element 放入 gCan2I2c_FIFO 中。

对于 CAN 传输,在 bridge_can.c 中定义了两个全局变量。

DL_MCAN_TxBufElement txMsg0;
Custom_Element gCAN_TX_Element;

下面是 CAN 传输的过程。

  1. gI2c2Can_FIFO 获取 gCAN_TX_Element
  2. 调用 processCANTxMsg(),从 gCAN_TX_Element 接收信息并将其存储到 txMsg0 中。
  3. 调用 sendCANTxMsg () 以通过 CAN 传输 txMsg0