本文最后更新于10 天前,其中的信息可能已经过时,如有错误请留言评论。
主要特性
- 支持部分网络(Partial Networking)CAN通讯
- 本地唤醒/硬线唤醒
- 远程唤醒:标准唤醒/任意帧唤醒、选择性唤醒/特定帧唤醒
- 兼容CAN FD通讯
- 支持FD消极特性:特定帧唤醒时支持屏蔽CAN FD帧而不会误唤醒(芯片型号尾缀须为/FD)
- 数据场波特率支持最高5 Mbps
- SPI通讯,由VIO供电,兼容3.3V和5V
- CAN针脚耐受电压范围±58V,更适合24V系统
- 休眠时BAT引脚静态电流48μA(典型值)、64μA(最大值)
- 与IFX TLE9255W封装兼容
状态机
工作模式
- 上电后为Standby,须软件切换至其他模式
- 进入Sleep前,须确认已无唤醒源且唤醒标志已清除且使能至少一个唤醒源,否则会进入Standby而非Sleep
- Overtemp恢复后会进入Standby,须软件切换模式至Normal
- Vcc或Vio欠压会强制进入Sleep并设置为任意帧唤醒,被任意帧唤醒后会进入Standby,须软件切换模式至Normal并恢复CWE、WPFE、WPRE、CPNC配置
- 各模式下功能模块工作状态见下表
收发器状态机
- 与工作模式联动
- 一般设置为Active即可
- Listen-only可用于波特率自适应
唤醒类型
任意帧唤醒/标准唤醒(Standard wake-up)
条件(同时满足)
- CAN唤醒使能(CWE = 1)
- 选择性唤醒禁止或配置错误(CPNC = 0 || PNCOK = 0)
WUP(wake-up pattern)
特定帧唤醒/选择性唤醒(Selective wake-up)
条件(同时满足)
- CAN唤醒使能(CWE = 1)
- 选择性唤醒使能(CPNC = 0)
- 选择性唤醒配置正确(PNCOK = 0)
WUF(wake-up frame)
- 方式一:仅校验ID(PNDM = 0)
- received ID & (~ID mask) = ID & (~ID mask)
- 不关心DLC和data
- CRC正确
- 方式二:校验ID和data(PNDM = 1)
- received ID & (~ID mask) = ID & (~ID mask)
- 非远程帧
- received DLC = DLC
- DLC > 0时,received data & data mask = data & data mask
- CRC正确
- 方式三:连续收到错误帧
- 错误帧计数 > 31(PNFDE = 1)
FD消极(FD-passive)特性
- FD帧不作为唤醒帧但是被认为是正确帧(同时满足)
- 芯片型号尾缀为/FD
- CFDC = 1
- 数据场波特率 / 仲裁场波特率 <= 8
- FD帧被认为是错误帧(任一满足)
- 芯片型号尾缀非/FD
- 芯片型号尾缀为/FD且CFDC = 0
- 数据场波特率 / 仲裁场波特率 > 8
硬线唤醒/本地唤醒(Local wake-up)
条件
- WAKE引脚上升沿检测使能(WPRE = 1)或下降沿检测使能(WPFE = 1)
禁用要求
- 不使用时,应禁止WAKE引脚边沿检测(WPRE = 0且WPFE = 0),且WAKE引脚下拉到地
SPI通讯
时序
- 最高波特率4Mbps(Normal、Standby)、1Mbps(Sleep+VIO供电)
- CPOL = 0:时钟空闲时低电平
- CPHA = 1:时钟第二个边沿时采样
- 片选低有效
- tCStoCLK(tSPILEAD)、tCLKtoCS(tSPILAG)见下表
协议
- 支持一帧读写多个寄存器:8bit首寄存器地址 + 8bit首寄存器数据 [+8bit次寄存器数据] [+8bit第三寄存器数据]
- 若写操作时位数错误:取消写操作
- 若读操作时位数超过32bit:从第33bit开始返回SDI数据
编码注意事项
CAN ID定义
ID掩码
ID掩码设置与常规的不同,TJA1145 ID掩码Bit为1表示忽略,bit为0表示需要进行比较。
数据掩码
数据掩码和接收到的数据对应bit进行比较,只要出现一对掩码和接收数据对应bit都为1,就算匹配成功。
其他
- 可以通过Identification(0x7E)寄存器识别芯片型号,区分TJA1145A*(0x70)、TJA1145A*/FD(0x74)和TLE9255W*(NA)
- 可以在芯片进入非Sleep模式后,通过读取INH电平状态判断芯片是否Sleep(软件切换或Vcc欠压引起),并采用合适的Spi波特率
TJA1145A Product data sheet Rev. 2 — 23 September 2020 |