news 2026/10/31 6:27:59

工业以太网温湿度变送器EMC设计实战:从PCB布局到整改落地

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
工业以太网温湿度变送器EMC设计实战:从PCB布局到整改落地

前一阵子改完最后一版PCBA,我坐在实验室里盯着三台并排的样机发呆:它们已经在几个配电柜里连续跑了三周,没掉过链子。这个项目说复杂不算复杂,就是做一个能塞进柜子里、走以太网接口上报数据的温湿度变送器;但说简单也不简单,柜子里的电磁环境一点都不友好。变频器启动、继电器跳闸、大电流母线升降,每一个动作都可能让旁边的传感器瞬间丢数据。整个项目真正花时间的不是写固件,而是PCB设计阶段的EMC考量,以及后面一轮又一轮的EMC整改。

这篇文章我会把从立项、选型、PCB布局布线到EMC整改的过程一条条拆开讲,适合正在做以太网接口设备、工业传感器,或者刚准备把产品送第三方EMC实验室的硬件工程师参考。哪怕你只是做类似的RS485设备,里面的很多思路也通用。

1. 先立项再把需求讲清楚:这台变送器到底干什么

1.1 强电磁环境到底有多“强”

先说我实际观察到的现场。配电柜里不是只有干燥干净的空气,除了380V动力母线和一堆断路器,还经常塞着变频器、伺服驱动器、接触器、开关电源。变频器内部IGBT以十几千赫兹的频率开关,母线电压又高达几百伏;继电器和接触器的线圈在断开瞬间会产生几千伏的反电动势尖峰;这些东西不仅顺着供电线传导,还会在柜内空间直接辐射出来。我们用近场探头测过一次,变频器启动时柜内某个位置的场强峰值能顶到几十伏每米,在这种场强下,普通消费级的传感器模块基本撑不过几秒。

所以做这类设备,第一件事不是先画图,而是老老实实把使用位置、安装方式、供电来源、运行工况全部问清楚。我之前见过有人把消费级温湿度模块塞进变频柜,结果开机十分钟温度值直接飞到85℃,仔细一看不是温度真高,而是数字总线被干扰得彻底紊乱。这一类问题在强电磁环境里不但会出现,而且会以各种奇怪的方式出现,温度跳变、数值随机漂移、通讯偶发断开,都是家常便饭。

1.2 为什么偏偏选以太网

产品形态上,我们最终确定了以太网作为唯一通信接口,用Modbus TCP协议上送数据。可能有人会问:工业现场用RS485不是更常见吗?RS485确实是老工业场景的主力,但它有几个天然弱点:一是485的收发器对共模电压很敏感,长线缆和地电位差容易让它失效;二是半双工轮询的拓扑在设备数量多或者需要实时报警时调度起来麻烦;三是速率上限不高,正常也只有几十到一两百kbps,虽然温度数据本身不大,但以后想外扩更多传感器,带宽马上成瓶颈。

以太网在这几个方面都更省心:双绞线自带隔离变压器,能做到电气隔离;全双工传输,一台设备出问题不会把整条总线拖垮;百兆带宽哪怕跑一千路温度数据都绰绰有余。而且现在工业交换机越来越便宜,柜体内部空间再小,塞一个工业交换机也比布一条485总线轻松。对运维人员来说,只要知道IP地址,用浏览器或者调试软件就能直接看到温湿度和报警状态,维护门槛低很多。考虑到强电磁环境下网线本身就是一条长长的天线,我们同时把物理层的防护等级拉高,这一点在后面EMC整改环节会反复提到。

1.3 指标拆解与测试基线

立项时我们先把硬指标定下来,这样后续选型、布局、整改都有参照物,不至于改到一半才发现目标对不上。

项目目标值备注
供电DC 12~24V宽压柜内大多数是24V开关电源,考虑波动放宽
工作温度-20℃~60℃(板载)适合柜内电子设备区域
测量范围/精度0~100%RH,-40~125℃;±2%RH,±0.3℃(典型)传感器标称精度,系统端留余量
通信协议Modbus TCP over 百兆以太网支持广播、寄存器读/写
EMC测试参考IEC 61000-4-2(ESD)、4-4(EFT)、4-5(Surge)按工业设备等级设置

这些指标不是越高越好,而是要跟成本和体积匹配。比如温度精度,工业柜内监测通常±0.5℃已经够用,没必要追求实验室级别的±0.1℃,否则传感器成本和标定工序都会翻倍。同样,“宽压供电”意味着前端电源设计要多加一道保护,但换来的是现场不用再纠结每个柜子的电源电压是否稳定。

把指标定清楚,后面画原理图、摆PCB、走线的时候,心里始终有一把尺子:这项设计是不是在为某个指标服务?如果答不上来,十有八九是过度设计。

2. 方案选型:照着“能打”的标准选器件

2.1 网络核心:LAN8720A + STM32F407

以太网PHY芯片的选择上,我们最终用了Microchip的LAN8720A,配合STM32F407VET6这颗内置以太网MAC的MCU。选它有三个原因:一是RMII接口的引脚占用少,MCU和PHY之间只需要TXD[1:0]、RXD[1:0]、TX_EN、CRS_DV、MDC/MDIO、REF_CLK等几条线,对小尺寸板卡非常友好;二是这颗芯片外围电路极简,内部集成了端接电阻和部分偏置电路,不需要像老PHY那样摆一堆电阻电容;三是资料极多,几乎每个做过RMII+PHY方案的工程师都能给出一套可参考的原理图,踩坑成本低。

这里要特别强调RMII接口的50MHz参考时钟。RMII的所有收发时序都靠这个REF_CLK对齐,所以时钟来源必须唯一且稳定。我们采用的是“板载25MHz晶振给LAN8720A,由LAN8720A将内部锁相得到的50MHz时钟通过CLKOUT输出给STM32”的方式,这样PHY、MAC同源,时序最干净。也有反过来由STM32的MCO输出50MHz给PHY的设计,实测也能工作,但对时钟引脚宽度和相位噪声要求更高,调试时容易出幺蛾子。

2.2 传感器与测量链路:SHT30不是唯一选择

温湿度传感器用了Sensirion的SHT30,I²C接口,SMD封装,标称精度±2%RH和±0.3℃(典型值)。选它是因为它在工业级宽温范围内有相对稳定的性能,而且I²C总线只需要两根线,抗干扰能力可以通过合理的上拉和源端滤波做出来。相比之下,DHT系列虽然便宜,但单总线协议在强电磁环境下非常容易被打乱时序,一旦信号线上混入尖峰,整个读数的同步就会失败,出现大量无效字节。

SHT30虽然自带一些校验能力,但系统端也不能完全裸奔。在原理图上,I²C的SCL和SDA每条线上各加一颗100pF到地的电容,滤掉高频噪声;上拉电阻选择2.2kΩ,既能保证上升沿足够陡,又不会让总线上拉得太硬而反射噪声。传感器供电采用3.3V经过一个低噪声LDO,单独给传感器供电,避免数字IC的开关噪声串进测量链路。实际测试下来,这个LDO的静态功耗和纹波抑制比都够用,成本也就一两块钱,非常划算。

2.3 电源、接口与隔离方案的一次到位

供电链路是EMC的第一道防线,也是最容易被低估的地方。DC 24V进来后先接一颗防反接二极管,接着并上TVS管(具体型号看电压余量,比如SMBJ系列)吸收浪涌,然后经过一个共模电感再进DC-DC。共模电感在这里的作用是滤除电源线传入的共模干扰,如果没有它,后面的开关电源噪声和外部传导干扰很容易在PCB上形成环路。

DC-DC我们选用了一颗输入耐压覆盖12~24V、输出电流余量充足的同步降压芯片,把电压降到3.3V。3.3V出来后再经过一颗低噪声LDO单独给传感器和PHY的模拟域供电,数字主供电直接从3.3V主电源走。PHY芯片的电源引脚按数据手册要求,每个电源域都加10μF+0.1μF+1000pF三档电容,并且靠近引脚放置。变压器选择分离式网络变压器(类似10/100BASE-T的标准网络隔离变压器),而不是带变压器的RJ45一体化座,原因很简单:分离式方案便于在PCB上把PHY侧地、变压器、RJ45侧机壳地分开处理,整改时空间操作余地更大。

3. PCB设计:每一毫米都决定成败

3.1 整板布局:先规划热、噪声和安装空间

布局的核心原则一句话:先把强干扰源和敏感电路隔远,再把热量和气流安排好。整板尺寸大概80mm×60mm,四层板,顶层为主器件面,底层走线和少量器件。

RJ45连接器放板子的左端,方便从柜体开孔处接网线;变压器紧邻RJ45,PHY芯片LAN8720A在变压器右侧,STM32F407在PHY右侧偏下的位置,这样做信号流向从左到右,以太网差分线可以走得很短。DC-DC布置在板子右下角,离RJ45和传感器都比较远;SHT30放在顶部边缘,靠近外壳预留的透气孔,同时避开DC-DC电感和变压器正上方。25MHz晶振放在PHY芯片旁边、靠近XL1/XL2引脚,晶振下方第三层不做任何走线,直接一整片地平面兜底。

实际操作中的一个小习惯:打样前先把所有器件的外形、高度、开孔位置放到结构图里模拟一遍,确认RJ45座的金属弹片、传感器探头的朝向跟外壳没有干涉。柜体安装通常是导轨卡扣或螺丝固定,传感器探头要探出外壳,所以PCB上探头的位置要留至少5mm的净空,不能让电容电阻顶住外壳。这些看似跟电气性能无关的事情,真到装机阶段出了问题,返工成本比调几个电路参数高得多。

3.2 以太网差分对:100欧阻抗不是玄学

以太网100BASE-TX要求差分线对阻抗为100欧姆。很多第一次做以太网硬件的人会问:我是不是随便把两根线画得一样长就行?答案是远远不够。差分阻抗跟线宽、线距、参考地平面的距离、介质介电常数都有关系,不是一个固定值。以典型的四层板为例,顶层到第二层地平面之间的介质厚度约0.1mm,差分对线宽和间距就需要经过阻抗计算,一般落在约5~6mil线宽、6~8mil间距这个量级附近,但具体数值必须按板厂叠层参数用SI9000或类似工具去算,直接照搬别人的线宽往往翻车。

布线时还要注意三点:

  • 差分对整段并肩走,不要分开绕。一旦分开绕,两个信号之间就会出现不对称的电容或电感,共模转差模的噪声就是这么来的。
  • 需要换层时成对打过孔,避免其中一个信号走线长度明显偏长;打孔附近要加回流地孔,给高速回流电流一个短路径。
  • 差分对两侧的地平面不要随意挖空,尤其不要只为了铺铜好看就在线旁开大窗,寄生电容对阻抗的影响非常直接。

LAN8720A的RMII信号里,50MHz REF_CLK是最敏感的一条。虽然它是单端信号,但频率高、边沿陡,走线要短、直,尽量别穿过电源区域和高频开关器件。MDIO/MDC这两条管理接口线属于慢信号,不需要太较真,但也要避开DC-DC的开关节点,否则偶发的读寄存器错误会让你误以为PHY芯片坏了。

3.3 传感器走线与整板地平面处理

SHT30到MCU的I²C走线很短,布局上已经天然保证了长度,但工程上仍然要注意几个细节:

  • I²C的SCL、SDA走线要尽量贴地平面走,不要跨过电源分割槽。跨分割等于让回流电流绕大圈子,干扰会被直接引入,而且这种问题用万用表测不出来,只有用示波器长时间抓波形才能发现。
  • 如果传感器探头需要通过连接器引出,信号线旁边一定要安排一根地线作为回流,最好再用屏蔽层包住信号线,屏蔽层单端接地。这是当初在现场被干扰教训出来的经验,单端接地是为了避免形成地环路,形成环路反而会引入更多噪声。
  • 传感器区域下方不要铺大铜块。铜块的热容会让测量响应变慢,而且铜的导热会拉近传感器和环境温度的差异,导致温湿度读数长期偏低。留出空隙、开好透气孔,热响应时间才能达标。

整板地平面方面,四层板的第二层做成完整地平面,第三层做电源平面,信号跨平面时尽量借助过孔缝合。机壳地和信号地之间通过一颗1MΩ电阻和一颗0.1μF电容并联的方式单点连接,这在以太网变压器隔离设计中是常见做法,既能泄放静电,又能阻隔射频共模电流形成环路。RJ45的金属外壳通过机壳地铜皮单独走一圈,再通过0.1μF电容连到信号地,不能直接大面积连死。

3.4 电源与接口防护:把入口先堵住

电源入口部分,防反接二极管、TVS、共模电感的摆放顺序固定:DC座进来先防反接,然后TVS到地,再进共模电感。共模电感下面和周围不要铺铜,不然会形成寄生电容,把共模滤波效果吃掉了。DC-DC的输入和输出电容尽量靠近芯片引脚,电感远离以太网区域,开关节点铺铜面积不要太大,减小辐射源面积。

RJ45侧的保护方案,我们是在变压器次级侧(RJ45侧)加了网口专用的ESD/TVS保护二极管,铺在RJ45引脚和变压器之间;变压器初级侧(PHY侧)的中心抽头按LAN8720A参考设计选择,通过0.1μF电容接地。RJ45侧的中心抽头则通过RC网络(常见1kΩ+0.1μF)连到机壳地。这套配合做下来,无论是外部直接打入的静电还是网线上感应的瞬态脉冲,都有明确泄放路径。

这里有一点非常关键:TVS管和共模电感的器件参数不是“焊上就能用”,过压能力、结电容、额定电流都要跟实际信号匹配。网口ESD管的结电容一定要小,否则会把100BASE-TX的信号边沿磨圆,轻则眼图变差,重则直接丢包。选型时记得看数据手册的结电容值,一般选小于5pF的比较稳妥。

4. EMC整改实录:从失败到拿到PASS报告

4.1 第一轮摸底:辐射、传导、ESD接连翻车

样机装配好后送第三方检测机构,第一轮摸底测试堪称大型翻车现场。

  • 辐射发射:在120MHz~230MHz这一段出现明显包络,最高超出限值约8dB。
  • 传导发射:0.5MHz和几个开关频率谐波位置接近限值,余量不足3dB。
  • ESD测试:对RJ45金属外壳打±8kV空气放电,连续打几次后PHY芯片偶发死机,必须断电重启。

说实话,这三类问题在工业设备第一次送测时太常见了。辐射超标的源头几乎可以肯定在高频开关和时钟网络;传导发射接近限值,说明电源端的滤波还不到位;ESD打坏PHY,说明接口防护的泄放路径设计还有漏洞。好在这三类问题都不是改结构、换外壳能解决的,都是PCB层面可以救回来的,这也正是当时选分离式器件预留了整改余地的原因。

整改之前我先做了一轮排查,用近场探头加频谱仪把板子上的主要噪声源扫了一遍。把探头靠近DC-DC电感时,频谱上能看到开关频率基波和二次谐波;靠近25MHz晶振和LAN8720A区域时,在它的倍频附近能看到明显能量;靠近RJ45座附近时,能接收到网线电缆带来的共模电流辐射。据此把整改分成三步走。

4.2 电源与接口整改:先解决传导问题

第一步改电源。电源入口处的共模电感原来用的是普通220μH共模电感,低频感值够但高频特性一般;后来换成选型更讲究的共模滤波器,衰减特性在10MHz以上有更陡的滚降,并在X电容位置上补充了两颗1000pF的差模电容。这样做的原因是:传导发射在0.5MHz附近的超标,通常来自DC-DC的开关纹波被电源线直接带出去,差模电容负责压掉数字开关噪声,共模电感负责压掉对称噪声。

整改后的实测:传导发射的余量从不到3dB提升到约6~8dB,0.5MHz处的尖峰基本消失。这块的改动不大,改起来也快,但要注意电容耐压值和封装尺寸,机器贴片时别把X电容方向放反。

接口防护方面,RJ45侧原来用的ESD管结电容偏大,导致变压器次级信号被磨圆,在长网线测试中偶发CRC错包。换成低结电容(约2pF)的网口专用ESD/TVS后,信号完整性改善,ESD打±8kV时PHY也再没死机。这里有个细节:ESD管到铁壳RJ45的安装距离越短越好,如果是走线长、过孔多,泄放路径的寄生电感会把高压尖峰抬高,照样打伤PHY。

4.3 辐射超标追踪:真正麻烦的是时钟和高频

辐射超标的整改是重头戏。120MHz~230MHz的包络,起初我怀疑是DC-DC的开关谐波,但近场探头扫描反复验证后,能量主要来自两个地方:LAN8720A旁边的25MHz晶振,以及PHY和变压器之间的高速差分走线。是晶振的高次谐波经过电源和地平面辐射出去,加上差分线的共模分量在网线电缆上被放大导致的。

针对晶振的整改做了三件事:

  • 把晶振下方的地平面完整性检查了一遍,确认第三层没有任何走线穿过晶振投影区域。
  • 给晶振加了一个小屏蔽罩,高度5mm左右,罩子直接焊接到地平面。
  • 把晶振负载电容从12pF调整到15pF,让晶振的起振波形更平滑一些,实测高频谐波能量下降了几个dB。 当然,调整负载电容会改变晶振频偏,必须在允许误差范围内,不能为了EMC牺牲时钟精度。

针对以太网差分线,主要改的是共模路径。在PHY差分输出端靠近芯片处增加一对共模电感(100MHz下阻抗约120~300Ω),把共模电流在源头就衰减掉;再把RJ45侧的机壳地与信号地之间的连接调整得更干净,原来RJ45外壳地是用一根细细的走线连出来,改成重新敷铜的低阻抗回路。整改后再复测,120MHz~230MHz包络明显下压,最高点余量做到6dB以上。到这里,辐射发射基本通过。

4.4 结构、接地与复测:柜体环境下的终极验证

EMC实验室测试通过只是一个阶段性成果,真正的考验是装进柜体后长期运行。我们拿到整改后的版本后在三个现场跑了三周:一个变频柜、一个配电柜、一个空调PLC柜。

这期间还暴露出一个小问题:有个配电柜在现场偶尔出现Modbus TCP读寄存器超时。排查发现是该柜的网线正好从变频器输出侧附近穿过,网线屏蔽层虽然两端都接地,但因为变频器输出侧的高频共模电流太强,双端接地反而成了共模电流的“天线”。把网线换成屏蔽层单端接地的成品线,并把多余的线缆绕成直径大于10cm的圈减小耦合,问题消失。

这里延伸一下:柜体内部布线本身就是一个EMC设计环节。强电磁环境下,不仅设备本身要硬,网线的路径、屏蔽层的接地方式、线缆捆扎位置都直接影响整条链路的可靠性。很多现场问题跑到最后,会发现不是板子的问题,而是线缆路径的问题。

最终版本的复测结果汇总如下:

测试项标准/等级整改前整改后
辐射发射CISPR 11 Class A(示例)超限约8dB余量≥6dB
传导发射CISPR 11 Class A(示例)余量<3dB余量≥6dB
静电放电ESD±8kV空气放电PHY死机通过
电快速瞬变EFT±2kV(电源端口)偶发通讯异常通过
浪涌Surge±1kV(线对线)通过通过

5. 现场问题排查方法与经验速查

5.1 定位高频故障的排查次序

很多工程师拿到一块“在实验室没问题、到现场就出问题”的板子时,容易乱了阵脚。这里分享一套我比较喜欢的排查顺序:

  1. 先录现象,最好用带时间戳的日志工具持续记录温度和通讯状态,不要凭感觉判断故障频率。没有日志,后面的对照分析全是白搭。
  2. 用频谱仪加近场探头先扫板上的高频能量分布,找到辐射最强、开关噪声最集中的区域,确定噪声源头在哪个器件附近。
  3. 再用示波器看关键节点波形:DC-DC的SW节点、3.3V电源纹波、REF_CLK时钟、MDIO总线波形,判断是电源问题还是信号完整性问题。
  4. 分析地平面是否被破坏:检查信号是否跨分割、螺丝孔周围是否有大面积铜被挖掉、连接器地线是否走细线,这些是“看不见但影响很大”的隐患。
  5. 最后才是考虑换器件、加屏蔽、调参数。一上来就换材料大多是瞎忙。

这套顺序的核心逻辑是:先定性,再定量;先看整体空间辐射分布,再缩小到具体网络。它不一定每次都最快,但基本不会走弯路。

5.2 问题现象、原因对照表

做项目过程中,我把常见的故障现象和解决方向整理成了一张速查表,分享出来供大家参考:

故障现象主要成因优先排查点常用整改措施
通讯掉线/CRC错包差分线阻抗不匹配、共模干扰PHY差分走线长度、共模电感、变压器次级调整线宽间距、加共模电感、改善机壳地
温度读数周期性跳变电源纹波耦合进I²C3.3V纹波、传感器供电的LDO加强滤波、传感器单独供电
PHY芯片死机/复位ESD或过压打坏电源脚RJ45接口TVS、变压器隔离换低结电容ESD管、缩短泄放路径
电源端口EFT不过DC-DC输入滤波不够共模电感、X/Y电容优化滤波参数、调整共模电感位置

每一格都不是绝对答案,因为现场故障往往是组合因素,但这张表至少能帮你确定“该从哪下手”的方向。

5.3 几个值得长期保存的工程习惯

最后说几个这个项目沉淀下来的工程习惯。

一是留测试点。原理图阶段就给电源、开关节点、晶振引脚、MDIO、REF_CLK等关键信号预留测试焊盘。没有测试点,整改只能靠飞线,效率低到让人崩溃,而且飞线本身就是一根大天线,测出来的数据根本不可信。

二是留EMC器件焊盘。共模电感、TVS、X电容、Y电容在第一次画板时就预留位置,哪怕首版先不贴,也要留焊盘。等到测试不过再补,不用改板就能直接贴上去验证,这也是“整改”成本最低的形式。如果等测试报告出来才发现板上没位置,只能改板重打样,周期直接多出两周。

三是建立完整测试记录。每次对比测试都记录版本号、更换的器件型号、测试频谱截图和结论,形成一份一路走来的变更日志。这个习惯在三次整改里帮了大忙,每次复测都知道上次动了什么,不会重复踩坑。

四是养成用近场探头“看”噪声的习惯。实验室频谱仪不贵,近场探头也不贵,但能带来最直观的EMC感知。设计时随手扫一扫,比送到检测机构再返工要省太多时间。

做完这个项目,我个人最大的感受是:EMC整改的最高境界不是等实验室给你一张FAIL报告后再救火,而是从需求拆解、选型、布局布线的每一个环节,就给自己预留“可诊断、可调整、可回退”的空间。以太网温湿度变送器看起来是个小产品,但它把强电磁环境、精密测量、高速数字接口三个矛盾命题硬凑在了一起,任何一个环节偷懒,最终都会在测试或者现场还回来。分离式变压器、预留EMC焊盘、低结电容ESD管,这些细枝末节的选择看似不起眼,实际上决定了整块板子的上限。如果这篇文章能让你少走一点弯路,那我就没有白写。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/31 6:27:29

E10培训PPT四层结构梳理:ERP主数据、业务流与成本月结

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 6:27:26

AI论文写作工具源码解析:RAG与提示词工程实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 6:27:09

ESP32端侧大模型部署的八大工程实战问题

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 6:25:36

Delphi项目集成SecureBridge:SSH/SFTP/SSL加密通信控件实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 6:25:19

国产MCU与射频芯片选型:识别车规与工规认证的实用方法

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/10/31 6:24:42

ESP32实战全攻略:从环境搭建到ROS2小车与OTA升级

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华