ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Nucleo板载ST-LINK烧录其他MCU:跳线、接线与软件配置全攻略

2026/8/30 11:38:47 拓冰建站 浏览量
Nucleo板载ST-LINK烧录其他MCU:跳线、接线与软件配置全攻略 用Nucleo-U083RC的板载ST-LINK去烧录其他MCU这套操作我踩过的坑都在这了手边正好有一块Nucleo-U083RC开发板又不想再花钱买独立的ST-LINK/V2调试器于是琢磨着能不能直接用板载的ST-LINK去给别的MCU烧程序。折腾了一下午把原理、跳线、接线、软件配置全捋了一遍。实测下来完全可行而且比想象中稳定。这篇文章把整个过程和踩过的坑完整记录下来给想省一块调试器钱的朋友做个参考。先说结论Nucleo-U083RC板载的ST-LINK本质上就是一个完整的调试器默认只连到板载的STM32U0芯片。只要把板载连接断开把SWDIO、SWCLK、GND引出来就能给任意支持SWD协议的目标MCU烧录。这个操作适用于所有带ST-LINK的Nucleo板不只是U083RC。适合手头有Nucleo板、想调试自己画的板子、或者临时要给其他芯片烧固件的开发者参考。1. 为什么Nucleo-U083RC的ST-LINK能“越界”调试1.1 ST-LINK的“寄生”架构Nucleo开发板有个很巧妙的设计板子上集成了一个独立的ST-LINK调试器它和板载目标芯片之间只有SWD两根线连着。这块调试器芯片本身是一个STM32F723跑的是ST官方固化好的调试器固件对外提供SWD和SWIM两种调试协议。关键点在于这个ST-LINK并不是板载MCU的一部分而是一个完全独立的子系统。它通过USB连电脑通过SWD连目标芯片。因为物理上是分开的所以只要把ST-LINK和目标MCU之间的链路切断这个调试器就变成了一个“裸”调试器可以接任何你想调试的芯片。很多朋友没有意识到这一点以为Nucleo的ST-LINK只能调试板子上那颗芯片。其实ST官方在设计时就想到了这个用法PCB上预留了跳线和焊桥目的就是让用户可以把这两个部分拆开使用。1.2 U083RC板载ST-LINK和独立ST-LINK的区别从功能上讲板载ST-LINK和独立ST-LINK/V2几乎一样都支持SWD、SWIM、VCP虚拟串口。区别主要体现在三个方面一是物理形态不同板载版本集成在PCB上接口是一个2x3的排针ST-LINK接头独立版本则是单独的USB调试器。二是供电方式不同Nucleo板载ST-LINK通过USB供电时会同时给整块板子供电独立ST-LINK有的带3.3V输出有的不带。三是固件更新方式略有差异板载版本通过CubeProgrammer更新独立版本需要用ST的专用工具。我用U083RC板载ST-LINK烧录过STM32G0B1、STM32F103C8、甚至一颗国产的GD32E230全部成功。速度上默认4MHz的SWD时钟烧录一个16KB的固件大概3秒左右和独立ST-LINK/V2没有明显差别。需要注意的是U083RC板载的ST-LINK是标准版SWD最高支持4MHz不支持SWO对于调试输出功能有需求的场景这个限制需要留意。2. 动手前先看懂电路和跳线2.1 关键跳线和焊桥SB2、SB3、SB11Nucleo-U083RC的PCB上ST-LINK和目标MCU之间的连接不是直接走线而是通过几个焊桥电阻控制的。这是整个操作最关键的环节必须先弄明白这几个焊桥在哪里、作用是什么。以U083RC为例需要关注三个焊桥SB2连接ST-LINK的SWDIO到目标芯片的PA13。SB3连接ST-LINK的SWCLK到目标芯片的PA14。SB11连接ST-LINK的NRST复位信号到目标芯片的NRST。默认状态这三个焊桥都是闭合的有电阻焊在上面ST-LINK的信号会直接送到板载MCU。要外接其他目标需要把SB2、SB3焊桥断开这样ST-LINK的SWDIO和SWCLK就悬空了可以去接外部设备。具体操作上有两个办法用烙铁把焊桥上的0欧电阻直接拆掉或者用小刀在焊桥上划一刀切断。我个人建议用烙铁拆电阻因为操作可控后面想恢复也容易。如果手边有热风枪温度调到280度左右对着电阻吹两秒就能取下来特别方便。这里有个容易忽略的细节SB11这个NRST焊桥要不要拆取决于你外接的目标芯片是否需要复位控制。如果目标板有独立复位电路或者你不需要硬件复位建议保留SB11不动避免复杂的连接。但如果你外接的芯片程序跑飞导致调试器连不上就需要把NRST也接上通过硬件复位的方式恢复。这种情况下SB11就必须焊接断开然后用杜邦线连到目标板的NRST引脚。还有一个更干净的做法如果不想动烙铁有些Nucleo板会在PCB上标示“ST-LINK”和“TARGET”两个区域这两个区域之间本来就有可断开的跳线帽。但U083RC我看了下板子不是跳线帽方案是焊桥方案所以只能动烙铁。如果你的板子恰好是跳线帽设计那就更省事了直接拔掉跳线帽即可。2.2 其他需要处理的连接断开SB2、SB3之后还有一个细节要处理板载MCU的上电状态。默认情况下Nucleo板的ST-LINK部分会通过板载稳压器给整个板子供电包括目标MCU区域。如果你只接了U盘USB线板载的STM32U0芯片也会上电运行。虽然这时它的SWD引脚已经和ST-LINK断开了但芯片内部的程序如果配置了SWD引脚复用可能产生不确定的上拉/下拉状态干扰外部调试。最稳妥的做法是把Nucleo板上目标MCU区域的供电跳线也断开。U083RC板上有一个JP1跳线帽控制板载MCU的3.3V供电。拔掉这个跳线帽目标MCU区域就断电了ST-LINK部分还能正常工作因为ST-LINK有自己的供电链路。我个人实际测试下来即使不拔JP1只要断开SB2、SB3外接烧录也能正常工作。但考虑到板载MCU如果运行了GPIO翻转之类的程序IO口状态可能影响SWD信号质量建议还是把JP1拔掉从根本上避免干扰。这个细节在很多教程里没有提到但在调试一些对时序敏感的芯片时可能会有影响。3. 接线方案与电平匹配的坑3.1 SWD四线接线法SWDIO、SWCLK、GND、VCC怎么接SWD协议最小只需要三根线SWDIO、SWCLK、GND。但在实际工程中我强烈建议接四根SWDIO、SWCLK、GND并联、VCC目标板电压检测。为什么需要VCC因为ST-LINK内部有电平匹配电路它需要读取目标板的电压来调整SWD接口的电平。如果不接VCCST-LINK不确定目标板的电平标准默认按3.3V处理。如果目标板恰好是3.3V系统那没问题但如果目标板是5V系统或者1.8V系统电平不匹配会导致烧录失败或者烧录后程序运行不稳定。接线具体对应关系ST-LINK引脚功能连接到目标板Pin 1VCC目标电压检测目标板的VCC电源轨Pin 2SWDIO数据线目标板SWDIOPin 3GND地目标板GNDPin 4SWCLK时钟线目标板SWCLKPin 5NRST复位目标板NRST可选Nucleo板上的ST-LINK接口是一只2x3的排针第1脚是VCC第2脚SWDIO第3脚GND第4脚SWCLK第5脚NRST第6脚是SWO部分板型没有引出。接线时认真确认引脚顺序不要接反。接反的后果通常是调试器识别不到目标或者更惨——直接冒烟。这里要注意SWDIO和SWCLK不要接反。SWDIO是数据线SWCLK是时钟线两者接反后调试器能识别到目标但通信会随机失败报错很诡异。我曾经因为接反CubeProgrammer能识别到芯片ID但一擦除就报错折腾了半天才发现是线接反了。3.2 供电策略要不要给目标板提供3.3V很多独立ST-LINK/V2带有一个3.3V输出引脚可以直接给目标板供电。Nucleo板载ST-LINK的情境稍有不同ST-LINK区域有独立的3.3V稳压器可以输出电流给外部目标。但不能随意使用因为板载稳压器的电流能力有限通常只有50-100mA左右只够给低功耗芯片的核心电路供电。我的建议是如果目标板有独立的电源USB供电、电池、外部稳压器就不要用Nucleo的3.3V给目标板供电。只接GND和SWD信号线目标板自己上电ST-LINK只负责调试。这样电压稳定电流充足而且两个系统的GND共地就保证了信号参考一致。如果目标板没有独立电源需要用Nucleo供电那就要注意两个问题一是目标芯片的电流消耗不能太大最好在50mA以内二是确保目标板的VCC和GND只从Nucleo接不要同时从其他电源接入避免反灌电流损坏稳压器。我在给一块GD32E230的最小系统板烧录时就是直接用了Nucleo的3.3V供电芯片运行后电流大概20mA左右完全没问题。但如果你的目标板带一些外设比如LED、传感器、无线模块电流轻松超过100mA这时候还是老老实实外接电源。3.3 电平不匹配的典型场景和解决方案SWD信号是双向的ST-LINK输出时钟和数据时需要按目标板的电平标准输出目标板返回数据时ST-LINK也需要能正确识别目标板的电平。所以电平匹配是双向的不能只考虑一个方向。实际工程中遇到的电平场景主要有三种目标板3.3V系统最常见Nucleo输出3.3V直接对接无任何问题。目标板5V系统老型号MCU需要确认目标芯片的SWD引脚是否容忍5V输入。大部分STM32是FT引脚支持5V容忍可以直接接。但如果目标芯片不支持5V容忍就需要加电平转换电路。目标板1.8V系统低功耗MCU需要电平转换否则ST-LINK的3.3V输出可能损坏目标芯片。加电平转换最快捷的方式是使用TXS0102或TXB0102这类双通道电平转换芯片接在SWCLK和SWDIO上。有些朋友会问能不能用分压电阻实现理论上可以但SWD时钟频率稍高一点分压电阻会拉慢信号边沿降低通信稳定性。建议直接上电平转换芯片成本不到两块钱稳妥可靠。4. 软件工具配置与实操过程4.1 STM32CubeProgrammer最通用的折腾工具现在烧录首选STM32CubeProgrammer它替代了老一代的STM32 ST-LINK Utility功能和兼容性都更好。首先从ST官网下载并安装它。安装时会自动装好ST-LINK的USB驱动如果驱动没装上设备管理器里会看到一个带黄色感叹号的未知设备此时手动更新驱动指向CubeProgrammer安装目录下的驱动文件夹即可。打开CubeProgrammer右上角选择ST-LINK在“Mode”下拉框里选“Under reset”因为外部目标芯片上电后可能已经跑起来了调试器端口被复用需要复位时抓取。如果目标芯片还没烧过程序空白芯片可以直接选“Normal”模式。如果目标芯片程序跑飞导致调试器一直连不上就选“Hot plug”模式这个模式会尝试在芯片运行状态下直接连接成功率更高。点击“Connect”按钮如果成功左侧会显示目标芯片的型号、ID、Flash大小等信息。在“Erase programming”选项卡里加载要烧录的hex或bin文件设置起始地址bin文件需要设置hex文件不需要然后点击“Download”开始烧录。这里有一个和Nucleo板载ST-LINK相关的设置项“Mode”下拉框旁边的“Reset mode”选项默认是“Hardware reset”需要目标板接NRST线并使用SB11焊桥。如果你没有接NRST线就把Reset mode改成“Software reset”这样烧录后ST-LINK会通过软件复位方式让目标芯片运行效果一样。4.2 Keil MDK里面直接外接目标如果你用Keil MDK开发直接在工程选项里配置一下就能用同一个板载ST-LINK调试外部MCU不需要切换到CubeProgrammer。在Keil中打开Options for Target进入Debug选项卡选择“ST-Link Debugger”点击右侧的Settings。在Debug页面里把“Port”设为SWMax Clock设为4MHz或更低。下面最关键的是“Reset and Run”选项勾选后烧录完成自动运行程序。如果目标芯片是外部连接的Settings界面应该能正确识别到芯片ID。如果没识别到检查接线、跳线、供电这几项。和CubeProgrammer一样如果目标板没有接NRST需要在Flash Download选项卡里把“Reset and Run”的钩子取消改用软件复位方式运行程序。Keil下还有一个实用小功能Debug选项卡里有个“ST-LINK”按钮点击后可以查看ST-LINK的固件版本和序列号。这个在排查多个ST-LINK冲突时很实用。我在调试时发现电脑插了多个调试器Keil会随机选一个导致烧录失败就是通过这个功能锁定目标调试器的。4.3 老工具STM32 ST-LINK Utility的用法虽然ST官方已停止维护STM32 ST-LINK Utility但很多工程师手上还有这个老工具它处理某些老芯片时反而更顺手。如果你用的目标MCU是不太新的STM32系列比如F1、F4Utility完全够用。操作流程打开软件点击“Target”菜单选择“Connect”在弹窗里设置连接方式。这里选“Normal”或“Under reset”和CubeProgrammer类似。连接成功后点击“File”菜单选择“Open file”加载hex文件。Utility有个很实用的功能能直接读取目标芯片的保护位状态。在“Option Bytes”页面里你可以看到RDP读保护等级如果有保护直接在这里修改等级并点击“Apply”即可解除。这个操作非常直观比CubeProgrammer里找半天菜单舒服多了。但要注意Utility只能支持ST自家芯片如果你需要烧录GD32或者其他国产MCU只能使用CubeProgrammer或其他厂商自己的工具。这是Utility最大的局限。4.4 烧录前的固件和固件库准备给目标MCU准备烧录文件时有几个细节要注意hex文件直接拖进CubeProgrammer或者Utility都能烧但bin文件必须指定起始地址。比如STM32F103C8的Flash起始地址是0x08000000STM32G0B1的也是0x08000000但有些MCU的Flash起始地址不同比如STM32H7系列的首个Flash扇区地址是0x08000000而有些带BootROM的芯片有额外的系统存储区烧录时要特别注意地址别填错。如果你用Keil编译默认生成hex文件直接烧就行。如果你用STM32CubeIDE默认生成elf文件CubeProgrammer也支持elf但需要勾选“Include the debug symbols”选项才能正确识别Flash起始地址。我个人习惯用CubeIDE的“Build Analyzer”功能查看生成的bin文件大小然后手动指定地址烧录这样对Flash占用情况心里更有数。另外目标芯片如果是全新的Flash默认是全0xFF直接烧录没问题。但如果是拆机芯片或者之前烧过其他程序建议先执行一次“Full chip erase”清除所有旧数据再烧新程序。在CubeProgrammer里“Erase programming”选项卡下方有个“Full chip erase”按钮一键搞定。5. 常见问题与排查技巧实录5.1 “No ST-LINK detected”驱动和固件问题这个报错最让人恼火明明ST-LINK插在电脑上工具就是识别不到。遇到这种情况先分两步排查先看系统层面认不认识ST-LINK再看工具层面能不能通信。打开设备管理器找到“通用串行总线设备”下的“STM32 STLink”字样。如果这里显示的是未知设备或者带黄色感叹号说明驱动有问题。解决办法是右键点击设备选择“更新驱动程序”手动定位到CubeProgrammer安装目录下的驱动文件通常是C:\Program Files\STMicroelectronics\STM32Cube\STM32CubeProgrammer\drivers安装即可。如果设备管理器正常但工具还是报错有可能是ST-LINK固件版本过低需要更新。打开CubeProgrammer的“Firmware upgrade”工具插入ST-LINK点击“Refresh”列表如果能识别到硬件直接点击“Upgrade”升级固件。注意升级过程中不要拔线否则可能变砖变砖后需要用ST的恢复模式重新刷那就很麻烦了。5.2 “Error: Connection error”接线和供电排查“Connection error”比“No ST-LINK detected”更进一步说明电脑与ST-LINK通信正常但ST-LINK和目标芯片通信失败。这种情况按照下面顺序排查先查共地。目标板和Nucleo板之间的GND是否可靠连接。SWD信号是参考GND的如果GND接触不良信号就会漂移导致通信失败。我遇到过一次GND杜邦线插歪了只接触了一点点结果就是随机报错非常难查。再查供电。目标芯片是否已经上电VCC是否正常。用万用表量目标芯片的VCC引脚确认电压在芯片工作范围内。这里有个小技巧不要只看电源指示灯亮不亮要看芯片的实际供电电压。因为有些目标板有多个电源域指示灯接在5V上而芯片需要3.3V供电电源轨有问题时指示灯一样亮。最后查SWDIO和SWCLK是否接反。这里我提供一个快速判断方法用万用表二极管档测SWDIO和SWCLK到GND的压降通常SWDIO和SWCLK引脚在芯片内部都有ESD保护二极管测出来会有一个正常的二极管压降0.4-0.7V左右。如果两个引脚量出来的压降差异很大说明可能有一个引脚虚焊或者接错了目标芯片上的位置。5.3 目标芯片程序跑飞导致烧录失败这个情况在实际调试中太常见了你的目标芯片里已经烧了一个程序程序跑起来后把SWD引脚配置成了普通IO或者关闭了调试功能导致ST-LINK连不上。这种情况下普通的“Connect”模式会失败因为芯片运行时已经占了SWD引脚。解决办法是使用“Under reset”模式在CubeProgrammer里选择“Under reset”连接时ST-LINK会拉低目标芯片的NRST引脚让它保持在复位状态趁它复位时抢占SWD连接权。连上后马上执行全片擦除清掉那个跑飞的程序然后再烧新的。这个场景下NRST引脚的接线就变得必须了。前面我建议用四线接法这里升级为五线接法SWDIO、SWCLK、GND、VCC、NRST。NRST接到目标芯片的复位引脚ST-LINK就能在复位时序里精准抓取连接。另外还有一个高频出错点很多芯片有独立的SWD引脚复用配置比如STM32的AFIO重映射部分封装上PA13/PA14可能被重映射到其他引脚。如果目标芯片的程序做了重映射那SWD引脚就变了调试器自然找不到。这种情况下只能通过先擦除Flash的方式恢复用“Under reset”模式连接后有些工具还会要求在连接前按住目标板上的复位按键实测这个方法在STM32F103上很管用。5.4 读保护RDP解除实操可能有人还不知道这个坑有读保护的芯片ST-LINK能识别到ID但无法读取Flash内容更无法烧录。默认情况下STM32出厂RDP等级是Level 0即无保护。但如果你从二手市场买了芯片或者自己之前不小心设置了读保护那就得先解除。解除方法在CubeProgrammer里连接目标芯片进入“Option Bytes”页面找到RDP选项。当前等级如果是Level 1直接修改为Level 0点击“Apply”。此时工具会提示“这将擦除Flash所有内容”确认即可。注意从Level 1降回Level 0会触发Flash全片擦除这是芯片硬性规定无法避免。如果你的产品里还有需要保留的数据一定提前备份。如果是Level 2保护那就更麻烦了。Level 2是不可逆的最高级保护一旦设置任何调试接口都无法访问只能通过系统Bootloader或专用接口恢复。这种情况下要么用USB DFU模式擦除要么只能换芯片。所以平时量产或者调试时不要轻易设置Level 2保护除非你完全确定不再需要调试了。STM32 ST-LINK Utility里解除RDP更直观连接后在“Option Bytes”页面找到RDP下拉选择Level 0点击Apply即可。UTILITY针对老芯片的兼容性比CubeProgrammer更好一些。不过新出的STM32U0系列只能用CubeProgrammer操作Utility已经不支持那么新的芯片了。5.5 烧录中突然断电烧录过程中断电是非常致命的操作。我正在给一块STM32G0B1烧录时目标板电源不小心碰掉了。结果芯片的Flash进入了一种半擦除状态部分区域是0xFF部分区域是乱码重新烧录时总是报校验错误。这种情况下先用“Full chip erase”全片擦除一次如果能顺利擦除说明Flash控制器没坏重新烧录即可。如果擦除过程中仍然报错那就比较麻烦了。对于STM32可以尝试通过系统Bootloader的UART方式重新擦写。具体方法把BOOT0引脚拉高复位芯片进入系统Bootloader然后用CubeProgrammer的UART连接模式选择对应的串口号重新执行全片擦除。这个方法能救回大部分Flash写入中断的芯片。6. 进一步扩展从手动烧录到工程化方案6.1 用STM32CubeProgrammer命令行批量烧录如果你有批量生产的需求比如一次烧录几十片甚至上百片手动在GUI里点来点去效率太低。CubeProgrammer支持命令行模式可以通过脚本批量操作。命令行烧录的基本语句如下STM32_Programmer_CLI.exe -c portSWD modeUR resetHWrst -w firmware.hex -v -rst参数解析-c portSWD使用SWD协议。modeUR使用Under reset模式连接。resetHWrst烧录后硬件复位运行。-w firmware.hex写入固件。-v烧录后校验。-rst烧录完成后复位目标芯片。对于bin文件需要额外指定起始地址STM32_Programmer_CLI.exe -c portSWD modeUR -w firmware.bin 0x08000000 -v -rst把这个命令写成一个批处理脚本插入目标芯片后双击运行几秒钟就完成一片。如果再配合扫描枪读序列号自动改MAC地址等功能基本就是半个小型产线了。我用这个方式给朋友小批量烧过几十片ST7567驱动的LCD模组固件效率比手动高很多。6.2 板载ST-LINK固件升级注意事项板载ST-LINK和独立ST-LINK一样固件也需要不定期升级。ST会在发布新的CubeProgrammer时同步推出ST-LINK固件更新。升级固件的原因有时不只是功能增强还有对新型号芯片的调试支持。在CubeProgrammer里点击“Firmware upgrade”选择“Refresh”列表当前连接的ST-LINK会列出来。点击“Upgrade”即可升级。升级过程大概30秒到1分钟期间绝对不要断USB连接不要触发电脑休眠。升级完成后ST-LINK会自动重新枚举。这时之前所有连接都会断开需要重新点击“Connect”。升级失败的情况很少见但万一发生了ST-LINK会变成一个无法识别的USB设备。这时候可以尝试按住ST-LINK区域的BOOT0焊盘部分板型有预留重新上电再配合ST官方的“STM32 ST-LINK Utility”恢复工具通常能救回来。还有一个需要注意的点不要随意从网上下载来路不明的ST-LINK固件刷入板载ST-LINK。因为板载ST-LINK的Flash是专用的刷错固件可能导致调试器彻底变砖。只使用ST官方工具提供的固件升级功能是安全的。6.3 用脚本结合VCP串口输出做自动测试利用Nucleo板载ST-LINK自带的虚拟串口功能可以做一个简单的自动化冒烟测试。在给目标芯片烧录完成后打开串口工具监听ST-LINK虚拟串口目标芯片通过串口打印日志。脚本先触发烧录再等待串口出现预期的启动日志如果日志匹配就判定测试通过。这个方案的好处是不需要额外的USB转串口模块一根USB线搞定供电、烧录、串口打印三件事。我用这个方式做了个小工具发给产线人员使用反馈很好基本没有学习成本。只要把目标板插到工装上一键执行自动判定结果。这里要提醒一下Nucleo板载ST-LINK的虚拟串口默认只有一组且只能由ST-LINK芯片占用不能直连目标芯片的USART引脚。不过Nucleo板上有个串口桥接跳线通常是SB4/SB5等用于连接STM32F723的USART2到目标板把跳线保持断开然后把目标板的USART TX/RX通过杜邦线接到ST-LINK接口的对应的引脚位置就可以实现串口互通。具体引脚对应关系可以在Nucleo-U083RC的用户手册里查到实际操作时建议对照手册确认。写在最后的经验心得用Nucleo-U083RC板载ST-LINK调试其他MCU这套玩法表面看起来只是省了买调试器的几十块钱但实际工程意义远不止于此。它意味着你手里任何一块带ST-LINK的Nucleo板都可以变成一个通用调试器开发不同项目的硬件时不用再单独买调试器了。而且Nucleo板本身还自带虚拟串口本质上等于多了一个USB转串口模块出差时带一块板子就能应付大部分调试场景。踩过几次坑之后我现在的标准操作流程是动烙铁之前先拍板子照片确认SB2、SB3的位置接线之前用万用表量一遍ST-LINK排针的每个引脚确认引脚定义连上目标板之前先不插目标板电源只接GND和SWD两根线用CubeProgrammer试连一次确认ST-LINK能识别到目标芯片ID后再给目标板上电烧录。这个流程看起来多花了几步但能避免90%以上的硬件接线错误。如果你准备尝试这个操作最后提醒三点。第一断开SB2、SB3之前先确认你的板子型号和PCB版本不同批次的Nucleo板焊桥编号可能不同以板上的丝印和用户手册为准。第二外接目标芯片前务必确认目标芯片的供电电压最好先把全部接线检查一遍再上电。第三如果目标芯片是5V系统一定确认SWD引脚是否支持5V容忍不确定的话先查数据手册不要想当然。调试器是工具安全使用才是第一位的。