为STM32开发板创建SWD适配器(第1部分)

几乎每个开发板都带有内置的编程工具。取决于供应商,可能是PE Micro,SEGGER J-Link OB甚至供应商’自己的工具,例如ST-Link。在大多数情况下,机载编程器的功能受到很大限制,因此使用外部编程器非常有意义。连接编程器通常需要使用从编程器到开发板的跳线,这可能导致错误的布线,掉线甚至是老鼠的电线嵌套,如下图所示:

有一天,当我与IAR的美国东海岸FAE 亚伦·鲍赫(Aaron Bauch)交谈时,他提到他是如何创建一个板子来使其I-Jet程序员JTAG / SWD连接适应ST Microelectronics所采用的6针单行连接的他们的大部分董事会。我以为这是个好主意,但不幸的是,亚伦无法分享他的板子或设计。因此,在本文中,我将引导您逐步了解如何创建自己的适配器。

该过程的第一步是选择一个带有6针连接器的开发板。我在几个课程中都碰巧使用了STM32F429I-Disco开发板,因此该开发板是最佳选择。由于该适配器板非常简单,只不过是从一组引脚到另一组引脚进行路由跟踪,因此我决定启动Altium并使用一张原理图创建一个SWDAdapter项目。

It’始终从某个地方开始是很有必要的,我觉得在开发板上查看6针SWD连接器是一个不错的起点。单看连接器,我就知道它是1×6,.100断开标题。我的标准连接器’看过一百万次。我从零件库中放了一个到原理图上。此时,我还打开了STM32F429I-Disco板的用户手册,并在文档中搜索了描述SWD标题的页面。我发现下表描述了每个引脚的作用:

通过快速浏览此表,您是否发现任何问题?一世’给你一个提示,看一下引脚1…. it’s VDD_Target,即应用程序的VDD。该引脚不为程序员提供检测的目标电源,而是充当内置ST-Link的检测线!这意味着这些引脚实际上是为不在开发板上的零件编程的!

如果我们要创建一个外部编程器适配器,那么该适配器也将需要一种检测微控制器电压的方法。由于VCC不是’在6针连接器上,我决定将另一个2针连接器添加到适配器。这将为我提供一个未使用的引脚,然后还为将MCU VCC跳到外部编程器提供了一种方法。这不是一个理想的解决方案,但是比跳6根电线更干净。为了确保我不会忘记引脚分配或引脚1将不被使用,我复制了引脚分配表并将其粘贴到我的原理图图纸上。

此时,剩下的唯一调查是弄清楚我的J-Trace Pro的ARM Cortex-M处理器的引脚排列。我找到了程序员的数据表,然后添加了2×将5个标准.100连接器连接到我的原理图,然后再次粘贴引出线的副本。您可能想知道为什么我要使用10针接头而不是第一张图片中的20针。之所以这样做,是因为我有一个20针至10针的适配器,使用这种较小的尺寸可以使我的PCB保持较小。

现在所有连接器都已安装好,我花了几分钟时间为所有连接线布线。将原理图放在一起时,我总是喜欢遵循一些建议。这些包括:

  • 留下很多评论,以便我能记得自己为什么做事
  • 用易于识别的信号描述标记每个网络
  • 自动指定零件
  • 用No ERC符号标记所有未使用的引脚

结果是以下示意图:

正如您所看到的,结果是不错的,直接的并且易于阅读。下一步是开发PCB,然后对构建这些简单适配器板的成本进行一些分析。 (应该首先完成的事情,而不是稍后完成的事情)。由于那将花费一些时间,因此我们稍后将其保存为第2部分。

4 thoughts 上 “为STM32开发板创建SWD适配器(第1部分)”

    1. 您’re welcome! I’一旦所有部分都准备好,我就计划了第3部分,我确认它确实有效。当时我’还将为任何想要发布的人发布gerber和文件!

    1. 感谢您让我们知道!当我们最后一次交谈时,我没有’没有意识到这是我可以从IAR购买的,否则我会这样做的!

发表评论

您r email address will not be published. 必需的地方已做标记 *

该网站使用Akismet减少垃圾邮件。 了解如何处理您的评论数据.