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参考资料

应用集成

表 3-3 中的函数被分类到不同的文件中。I2C 接收和传输函数包含在 bridge_i2c.cbridge_i2c.h 中。CAN 接收和传输函数包含在 bridge_can.cbridge_can.h 中。FIFO 元素的结构在 user_define.h 中定义。

用户可以通过文件分离函数。例如,如果只需要 I2C 函数,用户可以保留 bridge_i2c.cbridge_i2c.h 以调用相应函数。

为了进行外设的基本配置,该项目集成了 SysConfig 配置文件。用户可以使用 SysConfig 修改外设的基本配置。

需要此功能的应用必须包含 CAN 模块 API 和 I2C 模块 API。所有 API 文件都包含在 SDK 中。

 软件所需的文件图 3-1 软件所需的文件

表 3-4 详细说明了 CAN-I2C 桥接器解决方案在闪存大小和 RAM 大小方面的占用空间。下表和下图是在使用 Code Composer Studio(版本:12.7.1.00001)且优化级别为 2 的条件下确定的。

用户可以调整 FIFO 的大小。FIFO 越大意味着高速缓存容量越大,但需要的 RAM 空间也越大。有关详细信息,请参阅“应用程序方面”中的相关内容。用户可以根据实际数据长度来配置数据字段大小。如 表 3-4 中所示,使用字节数较少的数据字段可以显著减少 RAM 的使用。

表 3-4 CAN-I2C 桥接器的内存占用空间
所需的最小代码大小(字节) 闪存 SRAM
CAN-I2C 主桥接器
(协议传输
ItoC_FIFO_SIZE=8 C2S_FIFO_SIZE=8

数据大小 = 12 字节)
6352 1428
CAN-I2C 从桥接器
(协议传输
ItoC_FIFO_SIZE=8 C2I_FIFO_SIZE=8

数据大小 = 12 字节)
6264 1428
CAN-I2C 主桥接器
(协议传输
ItoC_FIFO_SIZE=8 C2I_FIFO_SIZE=8

数据大小 = 64 字节)
6440 2572
CAN-I2C 从桥接器
(协议传输
ItoC_FIFO_SIZE=8 C2I_FIFO_SIZE=8

数据大小 = 64 字节)
6360 2572
CAN-I2C 主桥接器
(协议传输
ItoC_FIFO_SIZE=30 C2I_FIFO_SIZE=30

数据大小 = 12 字节)
6456 2484
CAN-I2C 从桥接器
(协议传输
ItoC_FIFO_SIZE=30 C2I_FIFO_SIZE=30

数据大小 = 12 字节)
6368 2484