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 选型实战建议——我一般这么选
说了这么多,到底怎么选?我总结三条:
- 新项目,无脑 TJA1027 —— 功耗低、温度范围宽、外围元件少。我最近两个项目都用的它,一次过。
- 老项目维护,保持原样 —— 如果原来用的是 TJA1020,别轻易换。引脚兼容但控制逻辑不同,改软件和硬件都麻烦。
- 高温环境,必须 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 的帧结构,那个才是协议的核心。你先把收发器选好,后面的事就好办了。