Type-C 接口工业现场防护实战:一批手操器的 CC 脚集体阵亡——我把 24 个触点挨个排了一遍防护

2026年10月9日 0 By admin

前面连着两期写 Type-C 取电:先是 PD 协商(PDO/RDO 那 4 行解析把自己坑了),再是充电 IC 外围。两次文末我都留了同一句”下次写 Type-C 口在工业现场的 ESD/浪涌防护”。这篇来还债。

引子:返修件里那一堆”插上没反应”

事情出在一批工业手操器上。充电口是 Type-C,从适配器取 12V/2A 给功放和 DC/DC,顺带走 USB 2.0 做固件升级。这批货装在配电柜旁边的支架上,环境用四个字形容:灰、潮、震、手贱。

跑了三个月,返修件开始往回走,症状分成三类,前两类一眼能看出是一家人:

  • 一类:插上没反应。 插什么充电器都不亮灯。拆开量 CC 引脚对地电阻只有几十欧,PD 控制器(TCPC)那颗芯片的 CC 脚已经击穿。
  • 二类:只出 5V。 灯亮,但 PD 协商永远停在 5V,握不上 12V。逻辑分析仪抓 CC 上有 PD 报文,但对方发的 Source_Cap 收不完整——CC 引脚漏电,静态分压被拉偏。
  • 三类:插上就掉电、拔下就好。 这是最迷惑的一类。量了半天发现 VBUS 上的 TVS 已经半失效(漏电从几百 nA 涨到几十 μA),充电器判定”负载异常”直接撤功率。

十几台返修件摆在桌上,我先把坏的那几颗 CC 脚拆下来看,再回过头去翻现场照片——看到座子里那圈黑色导电粉尘和插头外圈被撬变形的痕迹,这本书才算翻开了。

这一篇是我把 Type-C 口从”连接器”到”每个触点”重新排了一遍防护的完整记录。注意它和半年前那篇《ESD/浪涌防护实战》不重复:那篇讲的是通用的两级防护架构和泄放地;这篇讲的是 Type-C 这个特定接口特有的坑——触点间距、CC 挨着 20V 的 VBUS、以及”高压跨接”这个跟 ESD 完全两码事的威胁。

先给结论

怕有人白看几千字,先把这次改板的核心结论放这儿:

  1. Type-C 口的头号杀手不是 ESD,是”CC/SBU 被 20V VBUS 跨接”。 触点间距只有 0.5mm,而 CC 就紧挨着 VBUS(A5 挨 A4、A8 挨 A9)。插头插歪、带电旋转、座子里有导电粉尘或凝露,都能把 20V 直接送到一个只按 5V 设计的引脚上。这是持续故障,不是瞬态——拿 ESD 器件的思路去防它,器件会先导通、再烧掉。
  2. CC 上不能只挂 5V 级的 ESD 阵列。 CC 的信号电平最大 5V,OVP 门限典型设 6V,但它的钳位器件工作电压要按 24V 级选(因为邻居是 20V);而且光靠 TVS 挡不住持续跨接——TVS 的击穿电压高于 20V,跨接时它根本不动作。要挡跨接,得有主动断开的一级(OVP 开关,几十 ns 内切断)。
  3. CC 的电容预算比想象中紧。 规范允许在 CC 上挂 200~600 pF 的 EMI 电容,折算到 3.33 µs 的位宽已经是同一个量级了。谁再往 CC 上并一个 100 nF”滤波电容”,RC 时间常数直接到 0.47 ms,是位宽的 140 倍,边沿必然报废。
  4. VBUS 侧两条线一起走: TVS 钳位 + 主动 OVP 关断。另外两条容易忘的认证红线——端口未连接时 VBUS 上的电容 ≤ 10 µF(其余大电容全部挪到负载开关后面)、未供电时 VBUS 对地阻抗 ≥ 72.4 kΩ(这条是防腐,不是电气,一个 VBUS 分压电阻就能把它拉破)。
  5. ESD 靠低感,浪涌靠低阻。 泄放路径上每 1 mm 走线,在 8kV 接触放电下会贡献约 30V 的感性压降(30A/1ns × 1nH);而 1kA 的浪涌电流流过 10 mΩ 才 10V。这两种威胁要分开算,别拿一个公式套。

一、Type-C 不是”Micro-USB 换了个形状”

先把接口本身的账摊开。很多人(包括几年前的我)做防护时直接套 Micro-USB 的经验,这是第一个错。

项目 Micro-USB USB Type-C
触点数量 5 24(上下各 12,镜像对称)
触点间距 0.65 mm 0.5 mm
VBUS 电压 5 V 5 / 9 / 15 / 20 V(PD 3.0 SPR);EPR 还有 28/36/48 V
最大电流 1.8~3 A(视版本) 5 A(e-marker 线缆)
正反插 否 是(CC1/CC2 两路都要防护)
外壳 多为塑料包壳 金属屏蔽壳,兼作 ESD 泄放路径

触点间距从 0.65 收到 0.5 mm,看着只差 0.15 mm,但配合”20V 就在旁边”这一条,性质就变了。而且这不是我猜的——插座规格书上写的触点额定电流本身就是分层的:

触点 额定电流 额定电压
VBUS 5 A DC 20 V
GND 6.25 A —
VCONN 1.25 A —
其余所有信号触点(含 CC、SBU、D+/D-、SS 对) 0.25 A —

看最后一行。CC 那 0.25 A 的额定值,跟”旁边 20V 的 VBUS”放在一起,就是这次返修的全部根源。

另外两个数也值得记住:插拔力 5~20 N、机械寿命 1 万次。工业现场使用者会拿插头当杠杆撬(我们的现场照片里插头外圈全是被撬变形的),那个力远超 20 N,所以 Type-C 口在工业现场坏掉,机构原因往往多于电气原因。座子要选带 DIP 固定脚或定位柱的型号,全 SMT 的撑不住——这是选料问题,布局补不回来。

二、头号杀手:CC/SBU 被 20V 跨接

引脚排布决定的风险

把 A 排引脚按顺序列出来,风险就一目了然了:

A1  GND      A2 SSTXp  A3 SSTXn  A4 VBUS   A5 CC1
A6  Dp       A7 Dn     A8 SBU1   A9 VBUS   A10 SSRXn
A11 SSRXp    A12 GND
  • A5(CC1)紧挨 A4(VBUS);
  • A8(SBU1)紧挨 A9(VBUS)。

插头斜着插、带着电旋转、座子里有金属屑/导电粉尘、凝露之后发生电化学迁移,都可能让 20V 的 VBUS 触点碰到 CC 或 SBU。它俩本来就是”只按 5V 设计”的:

  • CC 上正常信号电平最大 5 V,保护器件的 OVP 门限典型设在 6 V;
  • 规范对 CC 的额外要求是:关断之后还要能承受 25V 级的浪涌电压而不损坏(按 IEC 61000-4-5 的端口口径)。

这两句话合起来是什么意思?“承受 25V 不坏”说的是器件本身的耐受,”6V 门限”说的是它要在这个电平上动作。 一个只标 5V 的 ESD 阵列,吃到 20V 会是这个下场:钳位结先导通 → 结面积不够 → 热击穿 → 开路或短路。我们返修件里那种”CC 对地几十欧”的,大概率就是这么死掉的。

TVS 挡不住跨接,这件事必须说清楚

这是最容易想当然的一点。假设你在 CC 上挂了一颗 24V 级的 TVS:

  • 跨接发生,CC 被抬到 20V;
  • TVS 的反向击穿电压 VBR 大约是 VRWM 的 1.1~1.2 倍,24V 的管子在 26.4~28.8V 才真正导通;
  • 20V < 26.4V,TVS 根本不动。 20V 就这么静静地挂在 CC 上,直到 PD 控制器的 CC 输入级(绝对最大额定通常只有 5.5~6V 量级)被打穿。

所以 TVS 在 CC 上的真实角色是”挡 ESD 尖峰”,不是挡跨接。要挡跨接只有两条路:

方案 挡 20V 跨接 挡 ESD 代价
5V 级 ESD 阵列 ✗(会自己先死) ✓ 便宜,但等于没防
24V 级低容 TVS ✗(不动作,PHY 挨打) ✓ 便宜,是必要的但不够
CC/SBU 保护开关(钳位 + 主动断开) ✓(几十 ns 断开) ✓ 多一颗 IC + 几个外围
座子选型 + 结构防护(防尘/防水) 降低发生概率 部分 成本最低,但不能省

正解是三、四条一起上:一颗带 OVP 的 CC/SBU 保护开关(检测到 CC 超 6V 就在几十 ns 内把 PHY 侧断开,自身耐受 20~25V 以上),前面配一颗 24V 级低容 TVS 吃 ESD 尖峰、给开关争取时间;再加上选带密封/防尘结构的座子,把发生概率压下去。

改造后的现场排查信号很好认:

  • CC 引脚的 ADC 读数持续被抬到 3V 以上(正常未连接时应接近 0V)→ 疑似跨接或漏电;
  • PD 协商突然只能到 5V,且报文收不完整 → CC 分压被漏电拉偏;
  • PD 控制器 I2C 不应答 → PHY 已经死了。

三、VBUS 侧:20V 的热插拔,和”别把大电容挂在断开的端口上”

TVS 怎么选

VBUS 是这条口子上唯一”确实”需要大能量泄放的线。选型三条:

  • VRWM ≥ 24 V。 PD 3.0 在 20V 档上留了 ±5% 容差,理论最高 21V,业内普遍按 21.5V 给线缆和连接器留余量。选 22V 的型号属于贴脸站位,长期微导通发热;24V 是常用档,26/30V 也有。
  • 看钳位电压 VCL,要低于后级绝对最大额定。 后级是 eFuse 或 DC/DC 的输入,通常绝对最大 28~30V。TVS 在峰值电流下的 VCL 必须卡在这个数以下,否则保护器件动作了、后级还是挨打。
  • 看波形下标的 IPP。 同样是 400W 的 TVS,10/1000 µs 下 IPP 可能是 17A,8/20 µs 下可能是 40A——datasheet 标的是哪个波形,一定要看清楚。热插拔和浪涌场合都按 8/20 µs 核算。

主动 OVP 才是最后一道

TVS 只能钳位,不能切断。而后级输入电容在 20V 档下挨一次持续过压,照样炸。所以 VBUS 路径上最好串一颗带 OVP + 反向电流阻断的负载开关(eFuse):阈值设在 22~23V,动作时间几百 µs(比 TVS 慢没关系,TVS 负责吃前面的尖峰)。

两条容易忘的认证红线

这两条我是在给客户过认证的时候被教育到的,都不是”功能”问题,但都会让一块已经能用的板子过不去:

  • 端口未连接时,VBUS 网络上直接挂的电容 ≤ 10 µF。 这条限制的是”两个端口对接时的浪涌电流”。想加大电容压住负载突变的电压跌落?可以——但把大电容挪到负载开关后面,别挂在靠连接器的那一侧。
  • 未供电时,VBUS 对地阻抗 ≥ 72.4 kΩ。 这条不是电气约束,是防腐约束:它限制插入未上电插头时的漏电流,防止接触点被电化学腐蚀吃掉。我们第一版为了给固件读数,从 VBUS 上拉了一个 47 kΩ 的分压——直接破了这条线。分压挪到负载开关后面就完事了。

顺带一条布局纪律:4 个 VBUS 触点、4 个 GND 触点,全部并联,不要只走一个。 连接器出口那一小段是全板最不可能返工的地方,铜宽按 IPC-2152 用真实峰值电流(5A 不是标称,要算上裕量)算,别靠 1oz 铜的直觉。

四、逐触点防护映射表

这是改板时我贴在墙上照着走的一张表。24 个触点不都是同一种待遇:

触点 正常电平 关键约束 主要威胁 防护方案 附加电容预算
VBUS ×4 5~20 V 5 A、20V 热插拔浪涌、20V 过压、反向灌电 24V 级 TVS + 带 OVP/反向阻断的负载开关 未连接侧 ≤ 10 µF
GND ×4 0 6.25 A 地弹、泄放路径 全并联、就近大面积铜 —
CC1 / CC2 0~5 V 300 kbps BMC、分压判定 20V 跨接、ESD、漏电 24V 级低容 TVS + OVP 主动断开;不串电阻 200~600 pF(规范窗口)
VCONN(B5 复用) 5 V / 1 W 1.25 A 过流、短路 限流开关 + TVS —
D+ / D- 0~3.3 V USB 2.0 480 Mbps ESD、共模噪声 低容 TVS(结电容 ≤ 1~2 pF);射频敏感时加共模扼流圈 尽量小
SBU1 / SBU2 0~3.3 V Alt Mode 时按 GHz 级带宽要求 20V 跨接、ESD 与 CC 同档保护(24V 级 + 主动断开);不用时接地方案要谨慎 超低容(< 0.3 pF 级)
SSTX / SSRX ×4 对 差分 5~10 Gbps、90Ω 差分 ESD 超低容 TVS/聚合物器件 < 0.2~0.3 pF
金属屏蔽壳 — 泄放路径 ESD、机壳电位差 大面积接机壳/地(见下节) —

表里有两处要单独强调:

第一,CC 上不要串电阻。 CC 是靠 Rp/Rd 分压来判定的,串一个几十欧的电阻会直接改变分压比和判定门限。上一期我们算过,CC 的判定区间是 0.25~0.61 V / 0.70~1.16 V / 1.31~2.04 V,门限 0.66V / 1.23V——看着有裕量,但那是给源端 Rp 容差和线缆压降留的,不是留给防护元件的。CC 的防护只能”对地”,不能”串在路里”。

第二,SBU 不用时别随便接地。 有些设计图省事把 SBU1/SBU2 直接接 GND。这在纯取电产品上能跑,但一旦以后要支持 Alt Mode(DP/HDMI),或者接上一个把 SBU 当别的作用的线缆,这么做会出问题。规范上 SBU 在不使用时通常建议悬空或经电阻处理,具体看你手头的规范版本和实际线缆——这一条我给不出统一答案,说清楚总比拍脑袋强。

五、泄放路径与布局:防护的正文在这里

ESD 靠低感,浪涌靠低阻

先把这个容易混的账算清楚。防护器件动作之后,电流要走出去,走不出去就全压在芯片上。而”走不出去”的两种机理不一样:

ESD(8kV 接触放电):电流快。 峰值约 30A,上升时间约 1ns,di/dt ≈ 30 A/ns。PCB 走线大致按 1 nH/mm 估:

V = L · di/dt = (1 nH/mm × 长度) × 30 A/ns
  = 每 1 mm:1e-9 H × 3e10 A/s = 30 V

也就是说,ESD 泄放路径上每 1 mm 走线,会贡献约 30V 的感性压降。 一条 5mm 的”地线”就是 150V——防护器件确实导通了,但器件两端还是顶着一百多伏,芯片该穿还是穿。

浪涌(8/20 µs):电流大但慢。 di/dt 约 125 A/µs,同样 1 nH/mm:

每 1 mm:1e-9 H × 1.25e8 A/s = 0.125 V

小到可以忽略。浪涌真正的麻烦是欧姆压降:1kA 的电流流过 10 mΩ 的路径就是 10V,流过 100 mΩ 就是 100V。

结论:ESD 要盯走线的”长度(电感)”,浪涌要盯路径的”电阻(铜厚、并联过孔数)”。 两件事的目标不同,别再拿一个公式套两个场景。

布局的几条硬规矩

  • TVS 的地脚离连接器不超过 5 mm,走线短粗,理想是几个过孔直接扎进地平面。上面算过,每多 1mm 就多 30V 的 ESD 反弹。
  • 座子正下方尽量不布线、挖空。 这一块是耦合最脏的区域,尤其是 SS 差分对。
  • 连接器金属壳大面积接机壳/地。 工业现场和消费类的取舍不一样:消费类常用”经小电阻接地”来断地环路,工业现场更倾向直接大面积短接——因为这里 ESD 是主要矛盾,机壳是第一道也是最有效的泄放通道。具体怎么取舍看整机的等电位设计,但绝对不要让它悬空。
  • VBUS 的输入大电容离座子远一点、放在负载开关后面。 它既影响热插拔的浪涌电流路径,又牵扯上面那条 10 µF 的红线。

半年前那篇《ESD/浪涌防护实战》里画的”前级泄放 + 退耦 + 后级钳位”两级架构,在这里依然成立;Type-C 只是在它上面加了一条“CC 被高压跨接”这个 ESD 框架覆盖不到的威胁分支。

六、固件侧:把”偶发”变成”可统计”

硬件防护的目标只能是”器件不坏、功能能恢复”。而”恢复”这两个字得靠固件兑现。工业现场最怕的不是坏,是时好时坏——所以固件的第一职责是把偶发事件变成可统计的数字。

思路和前几篇一致(零 malloc、禁用 %f,用整数做定点格式化,跟本站一贯的铁律):

/* Type-C 端口健康统计(节选,全部整数运算) */
typedef struct {
    uint16_t cc_mv[2];        /* CC1/CC2 采样,mV */
    uint16_t vbus_mv;         /* VBUS 分压后换算,mV */
    uint8_t  cc_state[2];     /* 0=未连接 1=有效分压 2=<6V 3=疑似跨接 */
    uint16_t attach_cnt;      /* 插拔/连接次数 */
    uint16_t cc_ov_cnt;       /* CC 超 6V 次数(跨接嫌疑) */
    uint16_t cc_leak_cnt;     /* CC 分压长时间偏离合法区间 */
    uint16_t vbus_ovp_cnt;    /* VBUS 过压关断次数 */
    uint16_t pd_fail_cnt;     /* PD 协商失败(收不到完整 Source_Cap) */
    uint32_t last_fault_ms;
} typec_health_t;

/* 1kHz 周期调用:CC 是电压量,采样率不用高,但要看趋势 */
void TypeC_Monitor(typec_health_t *h, uint32_t now_ms)
{
    /* 1) CC 电压合法性:未连接应接近 0V */
    for (int i = 0; i < 2; i++) {
        uint16_t v = ADC_ReadCC_mV(i);
        h->cc_mv[i] = v;
        if (v > 6000) {                 /* 6V 门限之上:跨接嫌疑 */
            if (h->cc_state[i] != 3) h->cc_ov_cnt++;
            h->cc_state[i] = 3;
            h->last_fault_ms = now_ms;
        } else if (v > 3000) {          /* 3V 以上非正常 */
            h->cc_state[i] = 2;
        } else if (v > 100) {           /* 有分压,说明对端已经接上 */
            h->cc_state[i] = 1;
        } else {
            h->cc_state[i] = 0;
        }
    }

    /* 2) VBUS 交叉校验:合同电压 vs 实测 */
    uint16_t vbus = ADC_ReadVbus_mV();
    h->vbus_mv = vbus;
    if (h->cc_state[0] == 1 && vbus < 4000) {   /* 声明接了,却没电压 */
        h->pd_fail_cnt++;
    }
}

/* 上报:整数 + 单位后缀,零 malloc、无 %f */
int TypeC_ReportJson(char *buf, int cap, const typec_health_t *h)
{
    return snprintf(buf, cap,
        "{\"cc1_mv\":%u,\"cc2_mv\":%u,\"cc1_st\":%u,\"cc2_st\":%u,"
        "\"vbus_mv\":%u,\"attach\":%u,\"cc_ov\":%u,\"cc_leak\":%u,"
        "\"vbus_ovp\":%u,\"pdfail\":%u,\"fault_ms\":%lu}",
        h->cc_mv[0], h->cc_mv[1], h->cc_state[0], h->cc_state[1],
        h->vbus_mv, h->attach_cnt, h->cc_ov_cnt, h->cc_leak_cnt,
        h->vbus_ovp_cnt, h->pd_fail_cnt, (unsigned long)h->last_fault_ms);
}

三个判定规则,现场很好用:

  • cc_ov 长期为 0,但 pdfail 一直在涨 → 不是跨接,是物理层信号质量或漏电问题,查电容、查座子污染;
  • cc_ov 有值且集中在某几台设备上 → 基本可以确定是座子污染或结构问题,去现场看那几台装的位置;
  • vbus_ovp 在雷雨天集中出现,同时 pdfail 跟着涨 → 浪涌进来了,看 TVS 有没有老化(漏电上升),还有泄放地那一块。

顺带:每个故障计数器都要带时间戳(last_fault_ms),否则你只有一个”发生过”的结论,没法跟现场的温度、天气、班次对上。

七、怎么验:别拿自己当第一个实验品

改完板子,验证要覆盖四个维度。前两个是标准动作,后两个是 Type-C 特有的:

1. ESD(IEC 61000-4-2)

  • 接触放电 ±8 kV,空气放电 ±15 kV,正负各 10 次;
  • 放电点必须包含连接器金属壳、座子缝隙、以及暴露的触点(用适配探针伸进座子打 A4/VBUS 和 A5/CC);
  • 要求设备处于工作状态(正在充电、正在通信)下打,观察是否恢复。

2. 浪涌(IEC 61000-4-5)

  • VBUS 差模 1 kV / 共模 2 kV(严苛场合到差模 2 kV / 共模 4 kV);
  • 耦合网络的相位角要覆盖 0°/90°/180°/270°(如果整机有 AC 侧)。

3. 跨接模拟(破坏性,必做)

这是这次返修之后我加的必测项,也最容易被跳过:

  • 用可调电源经一只小电阻(10~50 Ω 限流,别直接怼)把 12V / 20V 灌到 CC1 和 CC2 上,每次持续 1 秒、各 3 次;
  • 灌完立刻量:CC 对地阻抗有没有变化、PD 控制器还能不能应答、协商能不能恢复;
  • 同时测 VBUS 灌到 SBU——很多设计只顾了 CC,忘了 SBU 也是邻居;
  • 这一项非常能筛出”只挂了 5V 级 ESD 阵列”的板子,一颗就现原形。

4. 机械与长期

  • 热插拔循环(带上电):我们做 500 次,顺便记录每次的浪涌事件计数;
  • 插拔 1000 次之后量 CC 漏电(应仍为 μA 以下),这是筛”TVS 老化”最直接的办法;
  • 潮湿环境(85%RH、40℃)放置 48h 后再量 CC 对地阻抗——电化学迁移是慢性病,一次测不出来。

现场还有两招不要仪器的土办法:

  • 用一颗 USB-C 诱骗器(trigger board)把适配器拽到 12V/20V,接上你的设备,看它是不是”活着”——这招能一秒暴露 CC 防护的短板,但请用报废板做;
  • 手机拍一下座子内部,放大看有没有金属屑和黑色粉尘附着,比任何仪器都直观。

我的防护自查清单

改板后我照着走了一遍,留在这儿:

  • ☐ CC1/CC2 的钳位器件工作电压按 24V 级选,不是 5V 级 ESD 阵列
  • ☐ CC1/CC2 有主动 OVP 断开级(几十 ns 级),且验证过 20V 持续注入不断 PHY
  • ☐ CC 上没有串接电阻(不影响 Rp/Rd 分压判定)
  • ☐ CC 上附加电容在 200~600 pF 窗口内,确认没有 100 nF 级”滤波电容”
  • ☐ SBU1/SBU2 与 CC 同档保护,未使用时的处理方式确认过
  • ☐ VBUS:24V 级 TVS(VRWM ≥ 24V)+ 带 OVP/反向阻断的负载开关
  • ☐ VBUS 上的 TVS 按 8/20 µs 的 IPP 核算过,钳位电压低于后级绝对最大额定
  • ☐ 端口未连接时,VBUS 网络上的电容 ≤ 10 µF(大电容在负载开关之后)
  • ☐ 未供电时 VBUS 对地阻抗 ≥ 72.4 kΩ(分压/泄放电阻没破线)
  • ☐ 4 个 VBUS + 4 个 GND 全部并联,铜宽按 IPC-2152 用真实峰值电流算过
  • ☐ D+/D- 与 SS 对的防护器件结电容对得上速率(480 Mbps / 10 Gbps 分别核算)
  • ☐ 连接器金属壳大面积接机壳/地,未悬空
  • ☐ TVS 地脚到座子 ≤ 5 mm,多过孔;座子下方未布线
  • ☐ 座子选型带 DIP 固定脚或定位柱(抗撬),工业现场考虑密封/防尘结构
  • ☐ 固件有 CC 双路电压监测、VBUS 交叉校验、故障计数与时间戳
  • ☐ 上报字段为整数、带单位后缀,零 malloc、无 %f(Release 版本验过)
  • ☐ 测试覆盖:ESD(含座子内触点)、浪涌(含相位角)、CC/SBU 高压注入、热插拔循环、潮湿后漏电

相关阅读


本文配套脚本:_tools/typec_prot_calc.py —— Type-C 接口防护现场估算器。mode: pin(24 触点防护映射表)、cc(CC 分压判定 + 附加电容 → RC 时间常数 vs 3.33 µs 位宽的比值与判定)、tvs(VRWM/VBR/VCL 与线路电压、后级耐压的裕量核算)、bounce(走线长度 → ESD 感性压降 / 浪涌欧姆压降,ESD 靠低感、浪涌靠低阻分开算)、hotplug(热插拔峰值电流、振铃频率、输入电容充电能量与你该不该加限流)、cap(高速通道结电容预算 → 3dB 带宽与上升时间)、fault(现场症状分诊表)。纯标准库,全离线,不联网。

下次打算写:LIN 总线的主从调度与报文超时(那张单线 12V 的网上,调度表、诊断帧和”睡眠—唤醒”是怎么凑在一起的),或者差分升级和签名链怎么结合。哪个先写,看这周的返修件先到哪个。