ZHCAA54B January   2022  – June 2022 TCAN1145-Q1 , TCAN1146-Q1

 

  1.   摘要
  2.   商标
  3. 1简介 – 局部联网
  4. 2局部联网应用
    1. 2.1 工作模式和局部联网
    2. 2.2 睡眠模式和局部联网
    3. 2.3 唤醒帧
    4. 2.4 传统高速 CAN、CAN FD 和 PN
    5. 2.5 混合网络信息
  5. 3CAN 帧和唤醒帧
    1. 3.1 CAN 帧结构
    2. 3.2 唤醒帧
      1. 3.2.1 ID 字段匹配
      2. 3.2.2 数据长度代码 (DLC) 匹配
      3. 3.2.3 数据匹配
      4. 3.2.4 CRC 匹配
      5. 3.2.5 Acknowledge 字段匹配
    3. 3.3 错误计数器
    4. 3.4 选择性唤醒 FD 被动
  6. 4选择性唤醒寄存器
  7. 5配置局部联网功能
    1. 5.1 有效 CAN 消息 ID 示例
    2. 5.2 有效数据示例
  8. 6总结
  9. 7参考文献
  10. 8修订历史记录

选择性唤醒寄存器

本节提供了用于选择性唤醒配置和状态的典型寄存器。这些是 TCAN1145-Q1 和 TCAN1146-Q1 数据表中介绍的寄存器。

表 4-1 显示了寄存器地址 10h:MODE_CNTRL。寄存器 8’h10[7] 是选择性唤醒使能位 SW_EN。

表 4-1 MODE_CNTRL 地址 10h
字段 类型 复位 说明
7 SW_EN R/W 0b TCAN1145-Q1 和 TCAN1146-Q1 的选择性唤醒启用,否则保留
6-0 不适用 0b = 禁用,1b = 启用

表 4-2表 4-5 介绍了寄存器 30h 至 33h:SW_ID1 至 SW_ID4。

表 4-2 SW_ID1 寄存器地址 = 30h
字段 类型 复位 说明
7-0 Ext_ID_17:10 R/W 0b 扩展 ID 位 17:10
表 4-3 SW_ID2 寄存器地址 = 31h
字段 类型 复位 说明
7-0 Ext_ID_9:2 R/W 0b 扩展 ID 位 9:2
表 4-4 SW_ID3 寄存器地址 = 32h
字段 类型 复位 说明
7-6 Ext_ID_1:0 R/W 0b 扩展 ID 位 1:0
5 IDE R/W 0b 扩展 ID 字段

0b = 标准 ID(11 位)

1b = 扩展 ID(29 位)

4-0 ID_10:6 EXT_ID_28:24 R/W 0b ID [10:6] 和扩展 ID [28:24]
表 4-5 SW_ID4 寄存器地址 = 33h
字段 类型 复位 说明
7-2 ID_5:0 EXT_ID_23:18 R/W 0b ID [5:0] 和扩展 ID [23:18]
1-0 保留 R 0b 保留

表 4-6表 4-10 介绍了寄存器 34h 至 38h:SW_ID_MASK 1 至 SW_ID_MASK4 和 SW_ID_DLC_MASK。

  • 用于设置要与之通信的器件的掩码 ID
  • 寄存器 38h 还包含 DLC 位和 DATA_MASK_EN
表 4-6 SW_ID_MASK1 寄存器地址 = 34h
字段 类型 复位 说明
7-2 保留 R 0b 保留
1-0 EXT_ID_MASK_17:16 R/W 0b 扩展 ID 掩码 17:16
表 4-7 SW_ID_MASK2 寄存器地址 = 35h
字段 类型 复位 说明
7-0 EXT_ID_MASK_15:8 R/W 0b 扩展 ID 掩码 15:8
表 4-8 SW_ID_MASK3 寄存器地址 = 36h
字段 类型 复位 说明
7-0 EXT_ID_MASK_7:0 R/W 0b 扩展 ID 掩码 7:0
表 4-9 SW_ID_MASK4 寄存器地址 = 37h
字段 类型 复位 说明
7-0 ID_MASK_10:3 EXT_ID

_MASK_28:21

R/W 0b ID 掩码 10:3 和扩展 ID 掩码 28:21(基本 ID)
表 4-10 SW_ID_MASK_DLC 寄存器地址 = 38h
字段 类型 复位 说明
7-5 SW_ID_Mask_5 R/W 0b ID 掩码 2:0 和扩展 ID 掩码 20:18(基本 ID)
4-1 DLC R/W 0b DLC [3:0]
0 DATA_MASK_EN R/W 0b 数据掩码启用

0b = DLC 字段和数据字段不进行比较,并假定有效。允许远程帧。

1b = DLC 字段必须与 DLC [3:0] 寄存器相匹配,并且将数据字段字节与 DATAx 寄存器进行比较以找到匹配的 1。忽略远程帧

表 4-11 提供了用于保存数据的寄存器。这些寄存器是寄存器 39h-40h

表 4-11 DATA_y 寄存器地址 = 39h + 公式 偏移 = 39h + (y × 1h);其中 y = 0h 到 7h(对于 TCAN1145-Q1 和 TCAN1146-Q1)
字段 类型 复位 说明
7-0 DATAx R/W 00h CAN 数据字节 x

表 4-12表 4-16 介绍了寄存器 44h 至 47h:SW_CONFIG_1 至 SW_CONFIG_4。

  • 这些寄存器用于配置选择性唤醒。
表 4-12 SW_CONFIG_1 寄存器地址 = 44h
字段 类型 复位 说明
7 SW_FD_PASSIVE R/W 0b 选择性唤醒 FD 被动:当出现具有灵活数据速率的 CAN 帧时,此位将修改错误计数器的行为。

0b = 将具有灵活数据速率的 CAN 帧计为错误帧,1b = 忽略具有灵活数据速率的 CAN 帧(被动)

6-4 CAN_DR R/W 101b CAN 总线数据速率 0b = 50kbps
1b = 100kbps,10b = 125kbps,11b = 250kbps,100b = 保留
101b = 500kbps
110b = 保留
111b = 1Mbps
3-2 FD_DR R/W 0b CAN 总线 FD 数据速率比率与 CAN 数据速率
0b = CAN FD <= 4x CAN 数据速率
1b = CAN FD => 5x 且 <= 10x CAN 数据速率
10b = 保留
11b = 保留
1-0 保留 R 0b 保留
表 4-13 SW_CONFIG_3 寄存器地址 = 45h 寄存器 45h:SW_CONFIG_3 是帧错误计数器
字段 类型 复位 说明
7-0 FRAME_CNTx RH 00h 帧错误计数器:对于检测到的每个接收帧错误(填充位、CRC 或 CRC 定界符形式错误),该错误计数器

递增 1。假设计数器不为零,则对于每个正确接收到的 CAN 帧,计数器都会递减 1。如果器件在具有灵活数据速率帧的 CAN 上设置为被动,则检测为 CAN FD 帧的任何帧都不会影响帧错误计数器(不进行递增或递减)。如果帧计数器达到 FRAME_CNT_THRESHOLD [7:0] 值,则下一次递增会使计数器溢出,同时设置 FRAME_OVF 标志。可以通过以下方式重置计数器:启用帧检测或 tSILENCE 检测。

表 4-14 SW_CONFIG_3 寄存器地址 = 46h 寄存器 46h:SW_CONFIG_3 设置寄存器 45h 的帧错误计数器阈值
字段 类型 复位 说明
7-0 FRAME_CNT_THRESHOLD R/W 1 Fh 帧错误计数器阈值:这些位设置错误计数器达到最大值的点,在下一个错误帧上将溢出并设置 FRAME_OVF 标志。默认值为 31,因此第 32 个错误将设置溢出标志
表 4-15 SW_CONFIG_4 寄存器地址 = 47h

寄存器 47h:SW_CONFIG_4 用于确保正确解码 CAN 帧。

  • 可以写入位 7,以告知器件已经配置了所有选择性唤醒寄存器。
字段 类型 复位 说明
7 SWCFG RH/W 0b 选择性唤醒配置完成

0b = 未配置 SW 寄存器

1b = 已配置 SW 寄存器(将此作为配置和开启选择性唤醒功能的最后一步)

注意:写入这些唤醒配置寄存器(30h-44h、46h)中的任何一个都会清除 SWCFG 位。

6 CAN_SYNC_FD RH 0b 如果启用帧检测,则器件正在正确地对 CAN FD 帧进行解码。此标志在接收每个帧后更新。通过轮询该标志,系统可以确定器件是否正在正确地对 CAN FD 帧进行解码,直到(但不包括)数据字段。该标志会自行清除。
5 CAN_SYNC RH 0b 同步到 CAN 数据:如果启用帧检测,此标志指示器件正在正确地对 CAN 帧进行解码。此标志在接收每个帧后更新。通过轮询该标志,系统可以确定器件是否正在正确地对 CAN 帧进行解码。该标志会自行清除。
4-0 保留 R 0b 保留

寄存器 51h 和 53h:INT_1 和 INT_3 是在发生选择性唤醒错误时包含中断的中断寄存器。

表 4-16 INT_1 寄存器地址 = 51h
字段 类型 复位 说明
7-4 不适用
3 FRAME_OVF R/W1C 0b 帧错误计数器溢出
2-0 不适用
表 4-17 NT_3 寄存器地址 = 53h
字段 类型 复位 说明
7 不适用
6 SWERR RH 0b (SW_EN=1 和 NOT(SWCFG))和 FRAME_OVF 的逻辑或。设置 SWERR 时,可能无法启用选择性唤醒
5-0 不适用

寄存器 56h 和 58h:INT_ENABLE_1 和 INT_ENABLE_3 是中断掩码寄存器,如果要屏蔽中断,则这些寄存器包含中断掩码

表 4-18 INT_ ENABLE_1 寄存器地址 = 56h
字段 类型 复位 说明
7-4 不适用
3 FRAME_OVF_ENABLE R/W 1b 帧错误计数器溢出使能
2-0
表 4-19 INT_ ENABLE _3 寄存器地址 = 58h
字段 类型 复位 说明
7 不适用
6 SWERR_ENABLE R/W 0b 选择性唤醒错误使能
5-0 不可用 R/W 1b