TCAN1043A介绍以及应用
TCAN1043A介绍以及应用
1 概述 (Overview)
TCAN1043A-Q1 是一款高速控制器局域网 (CAN) 收发器,符合 ISO 11898-2:2016 高速 CAN 规范的物理层要求。TCAN1043A-Q1 支持高达 8 兆比特每秒 (Mbps) 的经典 CAN 和 CAN FD(灵活数据速率)网络。
该收发器具有三个独立的电源输入引脚:VSUP、VCC 和 VIO,用于实现与 1.8V、2.5V、3.3V 或 5V 控制器的逻辑电平转换和直接接口连接。TCAN1043A-Q1 通过 INH 输出引脚,可选择性启用系统中可能存在的各种电源,从而降低系统级电池电流消耗。这使得系统能够进入低电流睡眠状态,此时除了 TCAN1043A-Q1 本身之外的系统所有组件的电源均受门控关闭。TCAN1043A-Q1 自身保持在低功耗状态,同时监控 CAN 总线。当在总线上检测到唤醒模式或通过 WAKE 输入引脚请求本地唤醒时,器件会驱动 INH 引脚为高电平,从而启动节点启动过程。
TCAN1043A-Q1 包含许多保护和诊断特性,包括欠压检测、CAN 总线故障检测、睡眠唤醒错误 (SWE) 定时器、电池连接检测、热关断 (TSD)、驱动器显性超时 (TXD DTO) 以及高达 ±58V 的总线故障保护。
-
简化版原理图:
-
功能框图:
-
特性描述:
1.电源引脚
TCAN1043A-Q1 实现了三个独立的电源输入,用于调节器件的不同部分。- VSUP 引脚
此引脚连接到蓄电池电源。它为支持数字内核和低功耗 CAN 接收器的内部稳压器供电。 - VCC 引脚
此引脚为 CAN 收发器提供 5V 工作电压。 - VIO 引脚
此引脚提供数字 I/O 电压,用以匹配 CAN FD 控制器的 I/O 电平。它支持 1.7 V 至 5.5 V 的 I/O 电压,提供对广泛的控制器支持范围。
- VSUP 引脚
-
数字输入与输出
- TXD 引脚
TXD 是一个参考 VIO 的逻辑电平输入信号,从 CAN FD 控制器输入到 TCAN1043A-Q1。若该引脚悬空,TXD 被偏置到 VIO 电平以强制其表现为隐性输入。 - RXD 引脚
RXD 是一个参考 VIO 的逻辑电平输出信号,从 TCAN1043A-Q1 输出到 CAN FD 控制器。一旦存在有效的 VIO,RXD 引脚即被驱动为 VIO 电平以表示逻辑高输出。
当发生上电或唤醒事件时,RXD 引脚被拉低。 - nFAULT 引脚
nFAULT 是一个参考 VIO 的逻辑电平输出信号,从 TCAN1043A-Q1 输出到 CAN FD 控制器。nFAULT 输出被驱动为 VIO 电平以表示逻辑高输出。
nFAULT 输出用于将 TCAN1043A-Q1 的状态指示标志信号传输给 CAN FD 控制器。 - EN 引脚
EN 是一个参考 VIO 的逻辑电平输入信号,从 CAN FD 控制器输入到 TCAN1043A-Q1。EN 输入引脚与 nSTB 引脚结合使用进行模式选择。EN 在内部被下拉至低电平,以防止过度的系统功耗和虚假唤醒事件。 - nSTB 引脚
nSTB 是一个参考 VIO 的逻辑电平输入信号,从 CAN FD 控制器输入到 TCAN1043A-Q1。nSTB 输入引脚与 EN 引脚结合使用进行模式选择。nSTB 在内部被下拉至低电平,以防止过度的系统功耗和虚假唤醒事件。
- TXD 引脚
-
GND
GND 是收发器的接地引脚,必须连接到 PCB 接地平面。 -
INH 引脚
INH 引脚是一个高压输出引脚。它可用于控制外部电源芯片。这些电源芯片通常用于支持微处理器和 VIO 引脚。除休眠模式(sleep mode)外的所有模式下,INH 功能均开启。在休眠模式下,INH 引脚关闭,进入高阻态。这使得节点在休眠模式下能够进入最低功耗状态。可在 INH 输出端添加一个 100 kΩ 的负载电阻,以确保从驱动高电平状态快速转换到低电平状态,并在该引脚悬空时将其强制拉低。
此引脚应视为一个高压逻辑引脚,而非电源输出。 因此,应将其用于驱动系统电源管理设备的 EN(使能)端,而非用作电源管理供电本身的开关。此引脚不具备反向电池保护功能,因此不应连接至系统模块外部。 -
WAKE 引脚
WAKE 引脚是一个高压反向阻断输入引脚,用于本地唤醒(LWU)功能。WAKE 引脚是双向边沿触发的,在 WAKE 引脚的上升沿或下降沿跳变上均可识别本地唤醒(LWU)事件。本地唤醒(LWU)功能将在第 8.4.1.5.2 节中进一步说明。 -
CAN 总线引脚
即 CAN 高速(CANH)和 CAN 低速(CANL)差分总线引脚。这些引脚在内部连接到 CAN 收发器和低压唤醒接收器。
- TJA1043T完整引脚定义:
-
故障
- 内部与外部故障指示器**
器件实现了以下状态指示标志,允许微控制器(MCU)确定器件和系统的状态。
除了故障外,nFAULT 终端信号还承载唤醒请求以及在 VSUP 电池终端上的“冷”上电序列信号,以便系统可以执行必要的诊断或冷启动序列。唤醒请求由 RXD 终端指示,而故障信号则被复用(或逻辑“或”)到 nFAULT 输出端。
- 内部与外部故障指示器**
2 器件工作模式
TCAN1043A-Q1 拥有六种工作模式:正常模式、待机模式、静默模式、进入休眠模式、休眠模式及关闭模式。工作模式的选择需通过 nSTB 引脚和 EN 引脚,结合电源状态、温度状态及唤醒事件共同控制。
2.1 状态转换图
状态转换图如下:
-
睡眠模式下的使能引脚状态与功耗:
在睡眠模式下,使能引脚(Enable Pin)可以处于逻辑高电平或低电平状态。但由于其内部具有下拉电阻,当该引脚保持浮空状态或在外部被拉低时,才能实现最低的功耗。
-
上电时的欠压检测定时器行为:
在上电时,VCC 和 VIO 的欠压定时器处于禁用状态。这样设计允许 VCC 和 VIO 供电在更长时间内(可达 tINACTIVE)完成上电过程。要使它们各自对应的 tUV 定时器开始工作,VCC 必须高于 UVCC( R ),同时 VIO 必须高于 UVIO( R )。当 VCC 电压降至 UVCC(F) 以下时,VCC 欠压定时器启动;而当 VIO 电压降至 UVIO(F) 以下时,VIO 欠压定时器启动。如果任何一个定时器的计时超过了 tUV,设备将进入睡眠模式。
-
休眠唤醒错误 (SWE) 定时器行为:
设备一旦进入待机 (Standby) 模式,休眠唤醒错误 (SWE) 定时器便立即开始计时。当设备进入正常 (Normal) 模式时,此定时器会暂停并清零。如果设备从待机模式进入静默 (Silent) 模式,SWE 定时器不会暂停;因此,必须在 SWE 定时器超时前将设备转换回正常模式。
(1) 进入睡眠模式:当 EN = 高电平且 nSTB = 低电平时,进入过渡阶段,此状态持续至 tGOTOSLEEP 定时器超时。
(2) INH 引脚变化:tGOTOSLEEP 定时器超时后,INH 引脚切换为高阻态。
(3) 模式转换:tGOTOSLEEP 定时器超时后,系统从"进入睡眠模式"切换至"睡眠模式"。
2.2 模式描述
2.2.1 正常模式 (Normal Mode)
这是器件的正常工作模式。CAN驱动器和接收器均完全运行,CAN通信为双向。驱动器将TXD上的数字输入转换为CANH和CANL上的差分输出。接收器将CANH和CANL上的差分信号转换为RXD上的数字输出。
进入正常模式会清除WAKERQ和PWRON两个标志位。
进入正常模式时,SWE(睡眠唤醒错误)计时器停止并复位。
2.2.2 静默模式 (Silent Mode)
静默模式通常称为仅监听(listen only)或仅接收(receive only)模式。在此模式下,CAN驱动器被禁用,但接收器完全运行,CAN通信是单向进入器件的。接收器将CANH和CANL上的差分信号转换为RXD端子上的数字输出。
在静默模式下,PWRON(电源接通)和Local Failure(本地故障)标志位会通过nFAULT引脚指示。
如果器件从待机模式进入静默模式,SWE计时器不会停止,并且需要在SWE计时器到期前将器件切换到正常模式。如果在静默模式下SWE计时器到期,器件将转换到睡眠模式。
2.2.3 待机模式 (Standby Mode)
待机模式是一种低功耗模式,此时驱动器和接收器被禁用,从而降低了电流消耗。然而,这不是器件的最低功耗模式,因为INH端子处于开启状态,允许系统其余部分恢复正常运行。
在待机模式期间,RXD端子为低电平表示存在唤醒请求(WAKERQ)。唤醒源的识别需要在器件返回到正常模式后通过nFAULT引脚进行。
在待机模式下,启用了一个名为睡眠唤醒错误(SWE)计时器的故障安全(fail-safe)定时器。该计时器增加了一层额外的保护,要求系统控制器在它到期前将收发器配置到正常模式。如果处理器未能正常启动并无法将器件转换到正常模式,此功能会在tINACTIVE时间之后强制TCAN1043A-Q1转换到其最低功耗模式——睡眠模式。
2.2.4 进入睡眠模式 (Go-To-Sleep Mode)
进入睡眠模式是器件从任何状态转换到睡眠(sleep)的过渡模式。在此状态下,驱动器和接收器被禁用,从而降低电流消耗。INH引脚处于有效状态,以便向VIO控制器提供使能信号,允许系统其余部分正常运行。如果器件保持在此状态的时间 t ≥ tGOTOSLEEP,则器件转换到睡眠模式,并且INH引脚关闭,转换为高阻态。如果任何唤醒事件持续存在,TCAN1043A-Q1将保持在待机模式,直到器件切换到正常模式以清除待处理的唤醒事件。
2.2.5 睡眠模式 (Sleep Mode)
睡眠模式是TCAN1043A-Q1的最低功耗模式。在睡眠模式下,CAN发送器和主接收器被关闭,收发器无法发送或接收数据。低功耗接收器能够监视总线上的任何满足唤醒模式(Wake-Up Pattern, WUP)要求的活动,并且WAKE监视电路监视WAKE端子上的状态变化,以检测本地唤醒(Local Wake-Up, LWU)事件。当CAN收发器处于CAN自主非活动状态时,ISUP电流降至其最低水平。在睡眠模式下,INH引脚被关闭,导致由INH控制的任何系统电源关闭,从而降低系统功耗。
可通过以下事件退出睡眠模式:
- 如果通过CAN总线引脚接收到有效的唤醒模式(WUP)
- 发生本地WAKE(LWU)事件
- 当nSTB引脚发生低电平到高电平的转换
3 休眠唤醒的应用
一般TCAN1043A收发器能做到断电休眠(VCC、VIO都断电,仅保留Vsup),更加节能。TCAN1042以及TCAN1044一般实现为不断电休眠(MCU以及收发器还处于低功耗运行)
- 对于硬线信号(如KL15),如果直接连接到电源芯片的EN,能实现断电休眠;如果硬线信号连接到MCU的唤醒引脚,那还得通过MCU去控制电源芯片的EN引脚正常供电(MCU不能做到完全断电休眠);
- 对于总线信号,如果检测到CANH和CANL有符合唤醒时序的唤醒信号,就拉高INH(不用RXD做为唤醒信号给ECU了)使能电源芯片的EN引脚,从而电源芯片提供正常VIO和VCC供电,这样MCU也就正常供电了,通过使能STB和EN使收发器进入Normal;
- INH仅在总线唤醒时有用;
3.1 KL15点火信号激活后的完整动作时序
-
阶段1:电源上电KL15
- KL15信号:车载12V点火信号拉高。
- 电源芯片:KL15使能电源芯片EN引脚,从而给MCU以及收发器提供VCC以及VIO供电;
-
阶段2:MCU与收发器初始化
MCU初始化:- 上电复位后初始化时钟、GPIO。 EN = nSTB = high & VIO > UVIO
- 配置STB=1、EN=1(通过GPIO或硬件上拉),使TJA1043T进入正常模式(从Sleep——>Normal)。
- 初始化CAN控制器(如设置MCP2515的
CNF1/2/3
寄存器配置波特率)。
TJA1043T初始化:
- CANH/CANL驱动器使能,RXD响应总线信号。
- FAULT引脚持续监控总线短路/过热。
-
阶段3:通信恢复
- MCU通过TXD发送数据,TJA1043T转换为差分信号(显性:CANH=3.5V,CANL=1.5V)。
3.2 总线信号唤醒的完整流程
-
阶段1:唤醒源检测: Wake-Up Pattern (WUP)
- 总线显性信号:CAN_H&CAN_L检测到Wake-Up Pattern (WUP)信号,TJA1043T的INH使能;
-
阶段2:电源芯片正常工作使能: Wake-Up Pattern (WUP)
- 使能电源芯片:收发器的INH引脚使能电源芯片的EN引脚,从而电源芯片给MCU以及收发器提供VCC以及VIO供电;
-
阶段3:MCU与收发器初始化
MCU初始化:- 上电复位后初始化时钟、GPIO。 EN = nSTB = high & VIO > UVIO
- 配置STB=1、EN=1(通过GPIO或硬件上拉),使TJA1043T进入正常模式(从Sleep——>Normal)。
- 初始化CAN控制器(如设置MCP2515的
CNF1/2/3
寄存器配置波特率)。
TJA1043T初始化:
- CANH/CANL驱动器使能,RXD响应总线信号。
- FAULT引脚持续监控总线短路/过热。
-
阶段4:通信恢复
- MCU通过TXD发送数据,TJA1043T转换为差分信号(显性:CANH=3.5V,CANL=1.5V)。
3.3 进入低功耗的完整时序
-
阶段1:休眠条件检测
- MCU检测到满足休眠条件。
- MCU关闭通信 。
-
阶段2:关闭收发器(t1-t2)
MCU操作:- 设置CAN控制器为睡眠模式(Normal——>Go-to-Sleep——>Sleep)。
- 拉低 STB 和 EN 引脚,并等待t > tGOTOSLEEP超时后进入Sleep模式。
TJA1043T动作:
- INH引脚拉低,关闭外部电源(需延迟确保收发器完全休眠)。
- FAULT引脚保持高电平(除非休眠前有故障)。
-
阶段3:电源关闭(t2-t3)
- 收发器INH引脚拉低后,通过控制电源芯片EN引脚关闭外部电源,关闭VCC以及VIO供电,仅保持Vsup供电。
- 从而MCU以及收发器实现了断电休眠。