目录
NXP TJA1043 CAN收发器整理
一、概述
TJA1043是一种高速CAN收发器,它提供了控制器局域网(CAN)协议控制器和物理双线CAN总线之间的接口。该收发器专为汽车工业中的高速(高达1 Mbit/s)CAN应用而设计,为(一个带有CAN协议控制器的微控制器)提供差分传输和接收能力。
TJA1043属于NXP半导体公司的第三代高速CAN收发器,比TJA1041A等第一代和第二代设备提供了显著的改进。它提供了改进的电磁兼容性(EMC)和电磁放电(ESD)性能,非常低的功耗,以及当电源电压关闭时的无源行为。高级功能包括:
- 低功耗管理控制整个节点的电源,同时支持具有唤醒源识别的本地和远程唤醒。
- 几种保护和诊断功能,包括总线短路检测和电池连接检测。
- 可直接接入电源电压从3V到5V的微控制器。
这些特性使TJA1043成为高速CAN网络的理想选择,这些网络包含的节点需要随时可用,即使内部VIO和VCC电源被关闭。
二、功能和优势
2.1 基本功能
- 完全符合ISO 11898-2和ISO 11898-5标准
- 适用于12 V和24 V系统
- 低电磁发射(EME)和高电磁免疫力(EMI)
- VIO输入允许与3V和5V微控制器的直接接口
- SPLIT电压输出,以稳定隐性母线电平
- 仅侦听模式下得节点诊断和故障控制
- 可在SO14和HVSON14软件包中获得
- 无导线HVSON14封装(3.0 mm4.5 mm),具有改进的自动光学检查(AOI)能力
- 深绿色产品(符合无卤素和有害物质限制性(RoHS)标准)
2.2 低功耗管理
- 非常低功耗的待机和睡眠模式,本地和远程唤醒
- 能够关闭整个节点,同时支持本地、远程和主机唤醒
- 唤醒源识别
- 当VBAT不存在时,收发器脱离总线(零负载)
- 在所有供应条件下都有可预测的功能行为
2.3 保护和诊断(检测和信号传输)
- 母线引脚上的高ESD处理能力
- 总线引脚和VBAT在汽车环境中防止瞬变
- 传输数据(TXD)主要超时功能与诊断
- TXD-to-RXD短路处理程序与诊断
- 保温保护与诊断
- 在VCC、VIO和VBAT引脚上的低电压检测和恢复
- 母线短路诊断
- 总线显性夹紧诊断
- 冷启动诊断(第一次电池连接)
三、 引脚信息
引脚编号 | 引脚名称 | 功能描述 |
1 | TXD | 传输数据输入 |
2 | GDN | 数据电压地线 |
3 | Vcc | 收发器电源电压 |
4 | RXD | 接收数据输出;从总线线路中读出数据 |
5 | Vio | I/O电平适配器的电源电压 |
6 | EN | 启用控制输入 |
7 | INH | 预制输出的外部电压开关 |
8 | ERR_N | 错误和通电指示输出(有效值:低电平) |
9 | WAKE | 本地唤醒输入 |
10 | Vbat | 电池供电电压 |
11 | SPLIT | 共模稳定输出 |
12 | CANL | CAN总线低压线 |
13 | CANH | CAN总线高压线 |
14 | STB_N | 备用控制输入(有效值:低电平) |
四、 功能描述
TJA1043是一款独立的高速CAN收发器,具有多种操作模式、故障安全功能和诊断功能,提供了增强的系统可靠性和先进的电源管理。该收发器将TJA1041A的功能与改进的EMC和ESD功能以及静态电流性能相结合。改进的坡度控制和高直流处理能力提供了额外的应用灵活性。
4.1 五种工作模式
(1)NORMAL MODE:EN = H 、STB_N = H;(硬件初始化时STB_N :L->H,确保硬件清空wake标志)
(2)GO-TO-SLEEP MODE:EN = H 、STB_N = L;
(3)SLEEP MODE:引脚INH设置为浮动
(4)STANDBY MODE:
(5)LISTEN-ONLY MODE:EN = L 、STB_N = H;
内部标志 | 控制引脚 | 操作模式 | INH输出 | |||
UVnom | UVbat | Wake | STB_N | EN | ||
设置 | X | X | X | X | Sleep | 浮空 |
清空 | 设置 | X | 高电平 | X | Standby | 高电平 |
清空 | X | 清空 | 低电平 | X | Sleep | 浮空 |
清空 | X | 设置 | 低电平 | X | Standby | 高电平 |
清空 | X | 清空 | 低电平 | 低电平 | Standby | 高电平 |
清空 | X | 清空 | 低电平 | 高电平 | Go-to-Sleep | 高电平 |
清空 | 清空 | X | 高电平 | 低电平 | Listen-only | 高电平 |
清空 | 清空 | X | 高电平 | 高电平 | Normal |
备注:
- 设置UVNOM标志将清除WAKE标志。
- 设置唤醒标志将清除UVNOM标志。
- 在针脚STB_N上的一个低到高的转变将清除UVNOM 标志
- 在最小保持时间后,在进入睡眠模式中,收发器将进入睡眠模式,引脚INH将设置为浮动。
4.1.1 正常模式
在正常模式下,收发器可以通过总线CANH和CANL进行传输和接收数据。差分接收机将总线上的模拟数据转换为数字数据,然后输出到引脚RXD。总线上输出信号的斜率被控制和优化,以保证最低的EME。总线引脚偏向于0.5VCC(通过Ri )。引脚INH是活跃的,因此由引脚INH控制的电压调节器也将是活跃的。
4.1.2 仅监听模式
在仅监听模式下,收发器的发射器被禁用,有效地提供了收发器的只听功能。接收器仍将将引脚CANH和CANL上的模拟总线信号转换为数字数据,可在引脚RXD上输出。通正常模式一样,引脚INH保持活跃态。
4.1.3 待机模式
待机模式是TJA1043的一级节电模式,提供减少电流消耗。在待机模式下,收发器无法发送或接收数据,低功率接收器被激活以监控总线活动。引脚INH仍然是活跃的,所以由这个引脚控制的电压调节器也将是活跃的。
引脚RXD和ERR_N将反映任何活动的唤醒请求(前提是VIO和VBAT存在)。
4.1.4 进入睡眠模式
进入睡眠模式是进入睡眠模式的受控路径。在进入睡眠模式下,收发器表现为在待机模式下,并附加了一个向收发器发出进入睡眠的命令。在进入睡眠模式之前,收发器将保持在最短的保持时间(th(min))进入模式下。如果针脚STB_N或针脚EN的状态发生改变,或者在th(min)过去之前设置了唤醒标志,则收发器将不会进入休眠模式。
4.1.5 睡眠模式
睡眠模式是TJA1043的二级节电模式。睡眠模式通过进入睡眠模式进入,当VCC或VIO上的欠压检测时间在相关电压水平恢复之前经过时也会进入。在睡眠模式下,收发器按照待机模式的描述行为,除了引脚INH设置为浮动。由此引脚控制的调压器将关闭,进入引脚VBAT的电流将减少到最小。引脚STB_N、EN和Wake标志从睡眠模式唤醒节点。
4.2 内部标志位
TJA1043使用了7个内部标志,作为其故障安全回退模式控制和系统诊断支持。其中的5个标志可以由控制器通过引脚ERR_N进行轮询。在ERR_N上可用的标志取决于活动操作模式和许多其他条件。
ERR_N访问内部标志 | ||
内部标志 | 标志可用条件 | 标志清空 |
UVnom | 不可访问 | 通过设置Pwon或Wake标志,在STB_N上通过一个低到高的转换,或当VIO和VBAT都恢复时。 |
UVvat | 不可访问 | 当VBAT恢复时 |
Pwon | 仅监听模式,且之前的模式不能为正常模式 | 进入正常模式 |
Wake | 待机模式、进入睡眠模式、睡眠模式 | 在进入正常模式时,或通过设置UVNOM标志时 |
Wake-up source | 正常模式(在TXD上的第四个显性隐形边缘之前?) | 在离开正常模式时自动清空 |
Bus failure | 正常模式(在TXD上的第四个显性隐形边缘之后?) | 在重新进入正常模式或通过设置Pwon标志时 |
Local failure | 仅监听模式,且之前模式为正常模式 | 在进入正常模式或当RXD是显性的,而TXD是隐性的(提供所有本地故障被解决)或通过设置Pwon标志 |
备注:
- ERR_N低电平标志标志位置位,高电平标识对应标志位已清空,该引脚电压跳变至少需要8us时间电平稳定。
- 允许每个显性-隐性周期至少有4个us的TXD显性时间
4.2.1 Wake flag
当收发器检测到本地或远程唤醒请求时,将设置唤醒标志。当引脚WAKE上的逻辑级别改变时,会检测到本地唤醒请求,并且新级别至少保持稳定。远程唤醒请求由至少twake(busdom)的两个总线主导状态触发,第一个显性状态之后是至少twake的隐性状态(busrec)(只要在区域(唤醒)总线内完成完全的显性-隐性-显性模式)。
唤醒标志可以设置在待机模式,进入睡眠模式或睡眠模式。设置唤醒标志将清除UVNOM标志和计时器。一旦设置,在引脚ERR_N和RXD上的唤醒标志状态立即可用(提供VIO和VBAT存在)。此标志也被设置为开机,并在设置UVNOM标志或收发器进入正常模式时被清除。
4.2.2 Wake-up source flag
唤醒源识别通过唤醒源标志提供,当唤醒源标志在通过Wake引脚的本地唤醒请求设置唤醒标志时设置。正常模式下通过ERR_N引脚进行轮询。此标志也被设置为开机,并在收发器离开正常模式时被清除。
4.2.3 Bus failure flag
如果收发器在尝试驱动总线主导时,在引脚TXD上连续四个显性-隐性循环中检测到总线短路条件为VBAT、VCC或GND,则设置总线故障标志。总线故障标志可以在正常模式下通过ERR_N引脚进行轮询。此标志在开机或收发器重新进入正常模式时被清除
4.2.4 Local failure flag
在“正常”和“仅监听”模式下,收发器可以区分四种不同的本地故障事件,其中任何一种事件都将导致设置本地故障标志。四个局部故障事件分别是:TXD主导夹紧、TXD-to-RXD短路、总线主导夹紧和超温事件。在第7.3节中描述了这些局部故障的性质和检测方法。当进入正常模式时,或RXD模式为显性,而TXD模式为隐性时,只要所有本地故障都已解决,即可清除此标志。
4.3 VIO supply pin
引脚VIO应连接到微控制器的电源电压。这将导致引脚TXD、RXD、STB_N、EN和ERR_N的信号电平被调整到微控制器的I/O电平,促进直接接口,而不需要多余逻辑。
4.4 WAKE Pin
局部唤醒事件由唤醒引脚的从低到高或从高到低的转换触发,允许在设计局部唤醒电路时具有最大的灵活性。为了最小化电流消耗,内部偏置电压将在一次地震延迟后遵循引脚上的逻辑状态。在针芯上的高水平之后是一个内部上拉到VBAT。针芯上的低水平之后是指向GND的内部下拉。在不使用本地唤醒设备的应用程序中,建议将WAKE引脚连接到VBAT或GND,以确保最佳的EMI性能。
五、睡眠唤醒应用
5.1 睡眠
进入睡眠模式:EN = H 、STB_N = L,此时将进入go-to-sleep模式。delay(20~50us),收发器将进入sleep模式。(wake标记在normal模式已自动清除)
睡眠后,6-8、11-14引脚均为低电平,9、10为高电平。若此时MCU未睡眠,1-5引脚状态同睡眠前,否则均为低电平。
5.2 唤醒
唤醒:收到总线报文后,INH引脚状态将由低变高,并且为此一定时间(由总线报文持续时间决定)
(1)假如INH连接到MCU,可以使用处于低功耗模式的MCU唤醒(睡眠前需要将对应的管脚配置成可唤醒)
(2)另一种做法就是通过INH控制MCU的BAT,这种情况下MCU休眠后是被断电的。同事供电回路需要一个自持电,由MCU来控制,一旦唤醒后,MCU需要保持该供电,否则将重新进入休眠状态(断电)。
5.3 注意事项
(1)上电后,TJA1043默认进入NORMAL模式(wake标志在该模式下自动清除)
(2)为了保证休眠和唤醒状态能够正确切换,在启动的时候需要设置 STB_N脚,由 LOW-to-HIGH,来清除 WAKE flag;如果WAKE flag没有正确清除的,会影响下次的休眠唤醒;
(3)SLEEP模式下,INH硬件变成floating状态,可以用于掉电处理;
(4)此外,在接收到一个局部或远程唤醒请求后,wake标记会被置位,收发器会进入STANDBY模式,INH又恢复至高电平。
(5)TJA1043上一次运行过程中进入睡眠模式,再次上电依然在睡眠模式。