3、NXP LIN收发器选型:TJA1020、TJA1021、TJA1027 对比与实战

做LIN总线开发,选对收发器芯片是第一步。说实话,NXP的这三款芯片——TJA1020、TJA1021、TJA1027,我几乎在每一个项目里都遇到过。它们长得像,功能也像,但细节上差别不小。选错了,轻则多花几毛钱,重则整批板子跑不起来。

今天我就把这三兄弟掰开揉碎了讲清楚。你想想看,搞嵌入式不就是跟这些细节较劲吗?

3.1 先看一张对比表,心里有个底

参数 / 特性 TJA1020 TJA1021 TJA1027
工作电压 5V ~ 27V 5V ~ 27V 5V ~ 28V
待机电流 典型 10 µA 典型 8 µA 典型 6 µA
总线速率 最高 20 kbps 最高 20 kbps 最高 20 kbps
斜率控制 外部电阻可调 内部固定 + 外部可选 内部固定,无需外部元件
唤醒功能 本地唤醒 + 远程唤醒 本地唤醒 + 远程唤醒 本地唤醒 + 远程唤醒
引脚数 8 引脚 SOIC 8 引脚 SOIC 8 引脚 SOIC
工作温度 -40°C ~ 125°C -40°C ~ 125°C -40°C ~ 150°C
典型应用 早期 LIN 节点,成本敏感 主流 LIN 节点,平衡之选 新一代低功耗、高温环境

嗯,这张表一看就明白。TJA1020 是老将,TJA1021 是主力,TJA1027 是后起之秀。我个人习惯,新项目直接上 TJA1027,省心。

3.2 引脚功能详解——别焊错了

这三款芯片都是 8 引脚封装,引脚定义基本兼容。但有个坑,我踩过。

先看标准引脚定义:

引脚 1: TXD  —— 发送数据输入(来自 MCU)
引脚 2: RXD  —— 接收数据输出(到 MCU)
引脚 3: NSLP —— 休眠控制(低电平进入休眠)
引脚 4: EN   —— 使能引脚(高电平使能)
引脚 5: INH  —— 唤醒指示输出(可选)
引脚 6: BAT  —— 电池电源输入
引脚 7: LIN  —— LIN 总线引脚
引脚 8: GND  —— 地

这里我要重点说一个事:TJA1020 的 NSLP 和 EN 是分开的,但 TJA1027 把这两个功能合并了。什么意思?TJA1027 只有一个 SLP 引脚,低电平休眠,高电平工作。如果你拿着 TJA1020 的电路图直接焊 TJA1027,板子大概率不工作。

⚠️ 我曾经犯过的错: 有一次赶项目,BOM 里把 TJA1021 换成了 TJA1027,没改原理图。结果板子回来,LIN 节点死活唤不醒。查了两天才发现,TJA1027 的 SLP 引脚需要上拉,而 TJA1021 的 NSLP 是内部上拉的。就这一个电阻的事,浪费了两天时间。

3.3 电气特性——这些数字你得记住

做硬件设计,电气特性是底线。我挑几个关键的说。

3.3.1 总线电压范围

LIN 总线电压范围是 0V ~ 18V(绝对最大 40V)。TJA1020 和 TJA1021 的 BAT 引脚最高 27V,TJA1027 放宽到 28V。说白了,车规级 12V 系统完全够用,但如果你做 24V 商用车,得小心。

3.3.2 驱动能力

LIN 收发器是单线驱动,输出级是开漏结构。TJA1020 的驱动电流典型 40 mA,TJA1021 和 TJA1027 都是 50 mA。这个差别不大,但总线负载重的时候,TJA1027 更稳。

3.3.3 斜率控制——这是个细节活

LIN 总线要求上升/下降时间在 3.5 µs ~ 22 µs 之间(20 kbps 时)。TJA1020 需要外部接一个电阻到 GND 来调斜率,电阻值越大,斜率越缓。TJA1021 内部有固定斜率,但也可以通过外部引脚选择两种模式。TJA1027 最省事,内部固定,你只管用。

💡 我的建议: 如果你做的是小批量或者原型验证,用 TJA1027 最省事。少一个电阻,少一个故障点。但如果你做的是成本极度敏感的产品,TJA1020 加一个电阻的方案,能省几分钱。

3.4 选型实战建议——我一般这么选

说了这么多,到底怎么选?我总结三条:

  1. 新项目,无脑 TJA1027 —— 功耗低、温度范围宽、外围元件少。我最近两个项目都用的它,一次过。
  2. 老项目维护,保持原样 —— 如果原来用的是 TJA1020,别轻易换。引脚兼容但控制逻辑不同,改软件和硬件都麻烦。
  3. 高温环境,必须 TJA1027 —— 150°C 的结温,发动机舱里也能扛。TJA1020 和 TJA1021 最高 125°C,夏天暴晒的机箱里容易出问题。

🔑 核心要点: 选型不是选最贵的,也不是选最便宜的,而是选最合适的。TJA1027 是当前最均衡的选择,但如果你手头有大量 TJA1020 的库存,用起来也没问题。关键是搞清楚它们的差异,别在细节上翻车。

3.5 一个小例子:TJA1027 的典型电路

最后给个参考电路,你照着画就行:

// TJA1027 典型外围电路
// MCU 端连接
MCU_TXD  -> 引脚1 (TXD)
MCU_RXD  -> 引脚2 (RXD)
MCU_GPIO -> 引脚3 (SLP)  // 高电平使能,低电平休眠
// 电源端
BAT+     -> 引脚6 (BAT)  // 通过 100nF 电容到 GND
// 总线端
引脚7 (LIN) -> 1kΩ 上拉到 BAT+  // 这是 LIN 总线标准要求
引脚7 (LIN) -> 接 LIN 总线连接器
// 地
引脚8 (GND) -> 系统地

嗯,就这么简单。TJA1027 内部集成了斜率控制和总线终端电阻,你只需要一个上拉电阻和一个去耦电容。相比 TJA1020 要额外接斜率电阻和终端电阻,省了不少事。

好了,这一章就到这里。下一章我们聊聊 LIN 的帧结构,那个才是协议的核心。你先把收发器选好,后面的事就好办了。