
嗨,极客时间!
今天,我想谈谈用烙铁完成中国ST-Link v2的过程。 您可以向其中添加SWO输出以接收调试信息,并为STM32微控制器添加复位控制脚(与STM8相同的复位脚)。 也许对于许多人来说,这不是发现,而是让初学者了解一些信息。 谁在乎,请在猫下。
为什么需要它?用于调试STM32微控制器的SWD接口支持通过SWO输出实时传输调试信息,这非常方便。 好吧,需要复位脚,以便在禁用SWD接口时使控制器闪烁更舒适。 原因肯定是牵强的,因为对于固件,您始终可以使用手柄按“复位”按钮,但不要打扰。 例如,当我刚接触STM32时,我从中国收到了一个调试板,其中演示程序闪烁,LED闪烁并且禁用了SWD,但我并没有立即了解如何连接它。
修订本身
我们需要手术刀,烙铁和几厘米长的细电线,我在这里有MGTF *一些*。 在这些编程器上,连接器分为两部分:左侧-用于STM8,右侧-用于STM32,因此那里存在的Reset不适合STM32,我们将自己做。
首先,切断去往不必要销的轨道。 在我的第一个经过修改的编程器上,由于我不打算使用STM8,所以我切断了Reset和SWIM的支路,但是现在我将使用额外的3.3和5 V引脚(它们在连接器上重复使用),以免破坏编程器的功能,它将派上用场。
电线必须焊接到微控制器的18(复位)和31(SWO)脚。 这是另一堂课,但是您可以借助一些技巧来做到。 我的电线很好地插入了板上的孔中,从而进行了额外的固定。 通常,以一种好的方式,您必须立即用胶水将它们固定在微控制器上。 通过小的电阻器(使它们为22欧姆)将自由端焊接到新切割的引脚上。
您可以结案并签署新的结论,因此您不会忘记哪个结论。
SWO检查

要使用
SWO,您必须:
-激活
SWD ;
-在
TRACESWO上启用相应的输出(对于STM32F103C微控制器为PB3);
-确保
SWO包含在编程环境中,而不是
半主机 ;
-在程序的头中连接库
#include“ stdio.h” ;
-在程序代码中使用
printf(“ Hello STM32 world!\ R \ n”) ;
您可以通过STM32 ST-LINK Utility程序中的终端查看这些消息,也可以直接在我的环境中调试期间查看这些消息(我使用IAR)。
重置检查假设由于某种原因,SWD在微控制器上被禁用:您在初始化期间忘记了将其打开,或者是一个带有有线演示程序的新板子。 当然,您可以通过将Reset腿拉到地面(通常在调试板上有一个按钮)来闪烁,但这并不总是很方便。 您只需连接编程人员的联系人并自动缝制即可。
在同一STM32 ST-LINK Utility程序中,选择“重置时连接”并连接到闪存或清除微控制器的存储器。
或在您的IDE中,选择适当的项目:
这将允许您刷新并进入调试模式,但是一旦外围设备初始化,SWD将断开连接,并且与控制器的连接也将消失。
谢谢您的关注,希望有人派上用场。