ZHCAF60 February   2025 MSPM0G3507

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 在 CAN 与 SPI 之间建立桥接
  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 SPI 接收和传输(透明传输)
    6. 3.6 SPI 接收和传输(协议传输)
    7. 3.7 CAN 接收和传输
    8. 3.8 应用集成
  7. 4硬件
  8. 5应用程序方面
    1. 5.1 结构灵活
    2. 5.2 可选的 SPI 配置
    3. 5.3 可选的 CAN 配置
    4. 5.4 CAN 总线多节点通信示例
  9. 6总结
  10. 7参考资料

原理

在本文档中,CAN-SPI 桥接器使用 CAN 接收和传输功能及 SPI 接收和传输功能。所以,必须配置 CAN 模块和 SPI 模块。由于不同通信的消息格式是不同的,CAN-SPI 桥接器还必须转换消息格式。

对于 CAN,CAN 模块支持传统 CAN 和 CAN FD(具有灵活数据速率的 CAN)协议。CAN 模块符合 ISO 11898-1:2015 标准。如需更多信息,请参阅相关文档。对于 SPI,该接口可用于在 MSPM0 器件和另一个采用串行异步通信协议的器件之间传送数据。如需更多信息,请参阅相关文档。由于 SPI 从机的接收和传输由 SPI 主机控制,因此 SPI 从机无法发起到 SPI 主机的传输。为了实现从机到主机的通信,该设计中增加了一条线路。从机的 IO 下拉会通知主机必须发送信息。

图 2-1 所示为 CAN-SPI 桥接器的基本原理。通常,CAN 的通信速率与 SPI 的通信速率不同。对于 CAN FD,波特率最高可达 5Mbps,而 SPI 以 500k 比特率运行,如示例代码所示。因此,一个接口接收到的数据可能不会及时由另一个接口发送。为了匹配速率,该方案使用缓冲器在 CAN 和 SPI 之间传输数据。此缓冲区不仅实现数据缓存,还实现数据格式转换。这相当于在两个通信接口之间添加了屏障。用户可以针对过载情况,添加过载控制操作。

 CAN-SPI 桥接器的基本原理图 2-1 CAN-SPI 桥接器的基本原理