ZHCAD88 October   2023 TMS320F280039

 

  1.   1
  2.   摘要
  3.   商标
  4. 1 引言
  5. 2 DCAN 和 MCAN 之间的主要差异
  6. 3 模块初始化
    1. 3.1 DCAN 初始化
    2. 3.2 MCAN 初始化
    3. 3.3 初始化序列
    4. 3.4 模块初始化代码片段
  7. 4 位时序配置
  8. 5 消息 RAM 配置
  9. 6 中断处理
    1. 6.1 MCAN 中断源
    2. 6.2 DCAN 中断处理
    3. 6.3 MCAN 中断处理
  10. 7 发送数据
    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. 8 接收数据
    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. 9 避免网络错误
  13. 10参考资料

过滤器元素

过滤器元素是定义的结构,需要在消息 RAM 中对其进行配置,以确定要接收哪些帧以及需要将这些帧存储在消息 RAM 中的什么位置。

标准过滤器元素用于存储标准 ID 帧,模块可以配置为具有多达 128 个元素。扩展过滤器元素用于存储扩展 ID 帧,模块可以配置为具有多达 64 个元素。标准过滤器元素和扩展过滤器元素的结构相同,但消息 ID 类型除外。以下对于标准过滤器元素的描述也适用于扩展过滤器元素。

模块具有某些全局过滤器配置(在初始化期间在 MCAN_GFC 寄存器中设置),用于确定是要接受还是要拒绝远程帧和不匹配帧(对于标准 ID 和扩展 ID 使用独立的配置)。

每个接收到的帧都会按顺序与配置的过滤器元素列表进行比较(标准 ID 帧与标准过滤器元素进行比较,等等)。在获得匹配项时,将根据相应过滤器元素的配置接受或拒绝帧,并按照配置的方式将其存储在消息 RAM 中(如果接受)。

注意:

MCAN 有一个单独的寄存器 (MCAN_XIDAM),可用作与扩展 ID 进行“与”运算的掩码。默认情况下,寄存器(掩码)的所有位均设置为 1,这会禁用掩码。

然而,在初始化期间,启用掩码时,在执行过滤器列表之前,所有接收到的扩展 ID 都与该掩码进行“与”运算。该寄存器用于屏蔽 SAE J1939 中的 29 位 ID。

通过为特定扩展过滤器元素设置扩展过滤器类型 (eft) = 0x3,可以实现范围过滤器,从而不应用扩展 ID 和掩码的“与”运算。