ZHCAD88 October   2023 TMS320F280039

 

  1.   1
  2.   摘要
  3.   商标
  4. 引言
  5. DCAN 和 MCAN 之间的主要差异
  6. 模块初始化
    1. 3.1 DCAN 初始化
    2. 3.2 MCAN 初始化
    3. 3.3 初始化序列
    4. 3.4 模块初始化代码片段
  7. 位时序配置
  8. 消息 RAM 配置
  9. 中断处理
    1. 6.1 MCAN 中断源
    2. 6.2 DCAN 中断处理
    3. 6.3 MCAN 中断处理
  10. 发送数据
    1. 7.1 基本发送过程
      1. 7.1.1 使用 DCAN 发送
      2. 7.1.2 使用 MCAN 发送
    2. 7.2 MCAN 与 DCAN 发送过程差异
    3. 7.3 MCAN 发送概念
      1. 7.3.1 Tx 事件 FIFO
  11. 接收数据
    1. 8.1 接收简介
    2. 8.2 基本接收流程
      1. 8.2.1 DCAN 接收
      2. 8.2.2 MCAN 接收
    3. 8.3 过滤器元素
      1. 8.3.1 过滤器元素结构
    4. 8.4 Rx 缓冲器
      1. 8.4.1 在 Rx 缓冲器中接收
    5. 8.5 Rx FIFO
      1. 8.5.1 在 Rx FIFO 中接收
    6. 8.6 接收高优先级消息
  12. 避免网络错误
  13. 10参考资料

模块初始化

对于 DCAN 和 MCAN 模块,前几个初始化步骤是相同的。可以通过以下方式进入初始化模式:软件(分别设置 CAN_CTL.INITMCAN_CCCR.INIT 位)、硬件复位、进入总线关闭状态;或者在使用 MCAN 的情况下,在消息 RAM 中检测到未校正的位错误。在此状态下,消息传输停止,CANTX 输出驱动为隐性状态(高电平),并且错误计数器保持不变。设置 INIT 位不会更改任何配置寄存器。

为完成软件初始化,可以将 INIT 位复位,并且在出现 11 个隐性位序列(总线空闲状态)之后,可以开始通信。

下面显示了每个模块的模块初始化的分步过程。