FastBond2阶段2-基于STM32超迷你DAPLink
一款超级迷你的 DAP-Link 调试器,兼容 ST-Link。有喜欢的小伙伴来制作一个吧!
标签
STM32
调试器
DAPLink
FastBond2
超迷你
Debugger
ST-Link
鲜de芒果
更新2023-09-18
1518

一、项目介绍

前段时间有个项目需要调试ARM7内核的芯片,由于手头没有合适的调试器以及对DAPLink调试器知识的匮乏,导致项目结束也未能调试成功。 在参考了STLink、DAPLink以及开源平台上众多大佬的项目之后,最终决定制作这样一款调试器。

在结合了各方的优缺点之后,期望制作的调试器具有以下特点:

  • 使用TYPE-C接口,并且支持 C to C 数据线。
  • 尺寸尽可能迷你小巧。
  • 支持虚拟串口。
  • 支持DAPLINK固件。
  • 兼容支持STLINK固件。

 

二、项目设计思路

2.1 硬件

硬件部分的设计参考 Arm 开源的 DAPLink 仓库,和开源平台上众多大佬开源的 ST-Link v2.1 。结合了其特点绘制了该版本DAPLink。

 

2.2 软件

软件代码参见 开源仓库 ,可以自己下载源码进行编译。也可以直接使用 DAPLink 编译好的固件即可。最新版本固件参考发布链接: https://github.com/ARMmbed/DAPLink/releases/latest

 

三、方案介绍

3.1 调试器系统连接框图

FvRa51omUQdFywrRRyYIUijNYs9D

 

调试器作为解释GDB的调试指令发送给目标处理器执行的中间设备。通过 USB TypeC 连接到PC端,并且使用接线端子连接到目标设备。从而执行解析GDB的调试指令并发送给目标处理器执行。

 

3.2 原理图

原理图设计主要组成部分由供电、MCU最小核心系统、指示灯、接口几部分。为了节约PCB尺寸,背面的虚拟串口座的两个PAD引脚是复用的。注意先不要焊接,烧录好固件后再焊接。

FjT23lGwsDBO6p8uK0s_gtooeajq

 

3.2 PCB效果图

FvYHNfgGetb5NgDwY3WT2x5s-qlA

 

正面放置的三大器件和指示灯,容易手工焊接,电阻和电容与其它器件统一放置在背面,方便进行回流焊。建议先贴片焊接完背面的器件,再使用烙铁或风枪焊接正器件。

注:有一些DRC错误是有意为之,可以忽略。

正面3D渲染效果图

Fgs8jsF9_qKAvyYG9Q-rzFqtheuJ

 

背面3D渲染效果图 

Fk2rPIwWOgydfJ0y99Q1WZrtV5QQ

侧面3D渲染效果图,可以直观感受到调试器的厚度,如果背面的虚拟串口接线座不焊接会更轻薄(我就是暂时没有焊接)。
FufkBL8XZRWqaLDD73K-n4XmIZcY

 

四、主要器件介绍

STM32F103CBT6

STM32F103CBT6 是一款中密度性能,ARM Cortex-M3 32位微控制器,采用 48 引脚的 LQFP 封装。它集成了 72MHz 运行频率的高性能RISC内核,高速嵌入式存储器,以及连接至2条APB总线的多种增强型I/O与外设。

STM32F103CBT6 具有12位模数转换器,计时器,PWM计时器,标准与高级通讯接口。多种省电模式允许用户设计低功耗应用。

FgMKLHlNPz2RrQ1A7LenEQUOIQ66

文档链接:https://www.st.com/resource/en/datasheet/stm32f103cb.pdf

 

AMS1117-3.3

AMS1117-3.3 是一种广泛使用输出电压为 3.3V 的正向低压降稳压器,适用于高效率线性稳压器。在该项目中用于电压转换,将USB输入的5V电压转换为 MCU 所需的 3.3V 输入电压。考虑到要制作迷你 DAPLink 因此采用 SOT-89-3 封装的版本。

FrpuwU5_a6iMZDk1s8esAZt5TYAH

文档链接:https://media.digikey.com/pdf/Data Sheets/UTD Semi PDFs/AMS1117.pdf

 

五、PCB绘制打板介绍及遇到的问题和解决方法

  1. 使用 KiCAD7 绘制板框时,由于四周有圆弧角,其中有一个圆弧角与线段有一点点重叠。导致设计规则检查时有错误。该问题搜索了好久也未能解决,最终无意间发现了这个问题是重叠导致的。有点儿坑人!

 

六、DAPLink固件烧写

刚焊接好的 DAPLink 是没有固件的,也就无法作为调试器来调试单片机。因此我们需要给焊接好的调试器烧写固件。烧写固件的步骤如下:

6.1 焊接SWD接口连线,只需要在调试器背面焊接4根线即可,即:3.3V、GND、DIO、CLK。如下图所示:

FhTILoMQ3d6pf5EtsvVJR6BOBsVo

 

6.2 将焊接好的SWD接口,连接至另一个调试器的输出口,例如我使用的是 JLink。当然您也可以使用 ST-Link、DAP-Link、WCH-Link等其它设备。这里不作展开,有需要自行搜索相应烧录教程。

6.3 将 JLink 插入电脑,运行 JFlash。

JFlash烧录教程可以参考 J-flash 的简易使用教程_开水烫白菜的博客-CSDN博客

6.4 使用 JFlash 新建工程,并加载 DAPLink 固件,如下图所示:

FmOTv4JQP8N80e6beV77iaW72JXR

注意:创建工程时目标芯片别选错,否则固件烧录会失败!!!

 

6.5 连接目标,选择 Targer -> Connect

如果能正常连接成功,则表示PCB焊接正常,否则需要检查PCB焊接是否有误。

 

6.6 选择 File -> Open data file... 选择下载的 DAPLink BootLoader固件。固件下载地址

FiHB5B0lVmdxzAWOhDj2aIO6wwWx

 

6.7 前面的步骤都成功的话,按下 F6 键即可开始烧录。烧录完成后,下方的 Log 窗口打印 烧录且校验成功的话表示成功。

 

6.8 到了这一步就可以取下焊接的 SWD 接线,并使用 USB-C 线接到电脑,这时电脑上会显示 有新的U盘插入 。接下来只需要将 DAPLink 固件的 bin 文件拖入 U盘根目录即可,以后都可以使用U盘更新固件了!

 

6.9 恭喜你,调试器可以正常使用了!尽情享用吧!

 

七、实物展示

7.3.1 正反面照片

Fu8IbEd3d_zNzVwUec61TwvJtTihFuvIApxUbQsJoV6b1KaIUIc1mzBK

 

7.3.2 全家福

Frk9YMIttylSEpxBoL7eSVnJ_RXV

 

八、结语

第一次使用 Scheme-it 网页版绘制的设计框图,初步体验下来感觉还是比较容易上手的。功能也比较丰富,可以绘制电路图,UML图等各种图表。希望得捷能进一步提升稳定性。

最后,感谢硬禾学堂联合 DigiKey 推出的这次活动!此次活动带给我许多宝贵实践经验和机会,在此表示感谢!

软硬件
物料清单
附件下载
DAPLink.tar.gz
KiCAD7工程
团队介绍
业余爱好者
团队成员
鲜de芒果
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号