使用STM32F103CBT6自制ST LINK V2-1多功能烧录器

基于STM32的ST LINK V 2-1多功能烧录器制作

  • 前 言
    • 根据官方相关文档可知 ST LINK V2-1拥有以下四大功能:
  • ST LINK V2-1制作教程和资料说明
      • 主空部分原理图(参考):
      • 打样回来的PCB如下:
    • 给ST LINK V2-1下载器烧录固件
      • 1. 在MDK 中升级更新固件
      • 2. 在升级工具中手动操作
  • 测 试
      • 1. 对ST LINK V2-1在MDK中烧录测试:
      • 2. 串口功能测试:
  • 结 语
      • 最 后 附 上 资 料 [ST LINK V2-1固件 以及PCB文件 ](https://download.csdn.net/download/Guard_Byte/85090678)
        • 哔哩哔哩视频: https://www.bilibili.com/video/BV1tt4y1g79q?share_source=copy_web
        • 码云仓库: https://gitee.com/pick-up-light/utility-set

前 言

根据官方相关文档可知 ST LINK V2-1拥有以下四大功能:

  • ST LINK Debug

  • Flash Download烧录程序

  • USB - TTL 串口功能

  • U盘功能 可拖拽源文件烧录
    使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第1张图片
    根据官方给的图纸,本人只是对原理图稍作修改重新规划PCB布局,将愿USB A口更换为 type-C接口,通过数据线延长接入,使用更加灵活。

  • 主控推荐 CBT6,意法半导体 贵的话,可以考虑CKS32和其他国产芯片代替(注意兼容性),试验C8T6也可以使用不过看具体,因为C8T6官方给出为64K,与CBT6属于同一批次,规格相同,因内部封装ID不同,实际就是你买到的C8T6可能有64K的也可能有128K的,只不过平时使用基本没有任何感知,但用软件进行读写测试所得实际大小一致,而在官方软件进行写入或程序烧录时,默认64K,而CBT6是128K。

  • 因为要给STM32烧程序,虽然我的板子上有串口,可以通过ISP模式将编译好的程序烧进开发版,但每次重新进烧录软件(尽管有个下载条件选项叫:当目标文件发生变化时或编程后执行)总觉得麻烦。再说,速度也不如直接在MDK中一键下载来的快,最关键的原因就是,串口它不能仿真啊,Debug功能就没了吧。

  • 以前 ST LINK V2版本的烧录器,存在的问题也挺多,主要某宝大量10几块的,U盘型ST LINK ,本人有有幸买过两个,一个莫名 无法烧录程序,另一个勉强还能用,但其使用主控非,ST官方推荐芯片。拿起手里的,ST LINK V2 U盘模样,但这都要什么年代了,插个杜邦线直接再怼到电脑USB口甚是不方便,时不时还因为手里的ST LINK坏的无法烧录程序而影响创作心情。原因就是第三方芯片做的烧录器,你一个不注意在MDK里弹出来的升级界面中点了个确定,那么 恭喜你 它废了。。。。。

  • 后面在某宝购无意买了一款开源DAP-LINK ,但个人使用后的感受就是:没有ST LINK 稳定,虽然有串口功能,省去了再另外使用 USB转串口工具的麻烦,但是当多次烧录后,会莫名地出现烧录失败的情况,只有重新拔插后先擦除数据后再烧录才行,你受得了?

ST LINK V2-1制作教程和资料说明

主空部分原理图(参考):

使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第2张图片

打样回来的PCB如下:

使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第3张图片购置好材料(bom清单或PCB文件文末会提供)自行焊接,有条件的可以使用焊台,可以使用风枪 但 不太建议使用风枪,因为温度高了的话会烤坏LED灯珠的,当然电烙铁用的 ‘6’ 的也可以用电烙铁,自行想办法,别焊错了元件就行。

给ST LINK V2-1下载器烧录固件

下面的教程的前提是, 你必须有一个SW的下载器(我是用自己还能用的旧版ST LINK V2下载器给焊好的新板子烧固件的),原因就是烧录器嘛就第一次烧固件使用一次,以后再也不用该接口,也就没有将ISP 或串口烧录对应引脚引出。
如果你是用JLINK下载器的,自己去JLINK那边下载hex格式的固件文件,如果你是用DAP下载器的,自己去找野火那边问下怎么烧hex文件,相关教程一搜就有。

解压我提供的资料 打开文件夹后你会看到教程所需得所有文件:使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第4张图片
其中ST-LINK_USB_V2_1_Driver 是电脑端ST LINK的驱动程序,如果你电脑已近安装了keil MDK的话就不需要再安装了,若没有,则根据电脑选择安装对应驱动:使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第5张图片
ST-LINK Utility文件夹中:使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第6张图片
准备好焊好的板子(多功能烧录器)和软件工具后,按照以下方式将ST LINK连接下载器的预留下载端口(如下图),对应接 3V3 , SWDIO, SWCLK以及GND 四根线就行: 顺便强调一下,新焊接的板子一定要检查无短路,焊接正确后再上电测试
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第7张图片有这个东西的话直接对上烧录,没有的话找四根杜邦线暂时焊在板子上,完事后拆了就行。使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第8张图片

连接好后 打开STM32 ST-LINK Utility.exe ,先连点击 Target目标 ->Connect 连接,识别出芯片信息后(蓝色字体,包含内存大小等信息),点击File文件 ->open file打开文档 选择ST-LINK V2-1固件 文件夹中的大小为128K的固件进烧录如下图:
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第9张图片
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第10张图片
然后点击Target -> Vrogram & Verify 烧录即可 (大概3秒烧完)使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第11张图片
烧录成功之后,把你的旧版ST LINK拔掉, 然后把制作好的板子的ST LINK 2-1 通过Type-C数据线插入电脑USB口, 在设备管理器出现下面内容即为已经成功烧录了v2.1固件了:使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第12张图片
模块接入电脑后 会弹出存储设备接入( U盘功能 ) 如下。当连接上目标芯片时此容量会发生变化,可以通过把编译好的程序文件直接粘贴进去。其中已有的两个文件存放了当前ST LINK V2-1的固件版本信息。
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第13张图片
关于固件升级_两种方式: 这款烧录器是根据官方相关文档资料制作,可以直接更新ST 官方固件

1. 在MDK 中升级更新固件

ST Debug 里面勾选 检查升级 Check version on start 检查版本选项,进行升级更新:
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第14张图片

2. 在升级工具中手动操作

使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第15张图片
当然,烧录的固件 STLINK-V2-1-J28.M18STLINK-V2-1-J31.M21 这两个版本,不更新升级也是可以正常使用 的。完了之后就可以仅使用一个ST LINK V2-1并通过一根数据线对你心爱的开发板进行 程序烧录,串口通信 和Debug操作了。

测 试

1. 对ST LINK V2-1在MDK中烧录测试:

打开keil MDK ,我这里随便找了一个STM32F030C8T6的最小系统板进行测认结果如下:
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第16张图片
效果:个人使用感觉,下载速度比ST LINK V2和DAP LINK 快了许多许多!,你们可以试试。

使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第17张图片

2. 串口功能测试:

我这里使用的串口软件工具是正点原子的 XCOM V2.6,和另外一个USB-TTL CH340串口模块 同时打开两个 XCOM,进行 收/发 测试:
使用STM32F103CBT6自制ST LINK V2-1多功能烧录器_第18张图片

结 语

  • 工具制作纯属日常使用遇到问题,一时兴起,找资料,画板子不知不觉间凑齐材料做出来的,完了就根据制作过程随便写了点东西。欢迎感兴趣的小伙伴可以一起交流。
  • 最后是整理的文件包含PCB文件,可直接在嘉立创下单打样。

最 后 附 上 资 料 ST LINK V2-1固件 以及PCB文件

哔哩哔哩视频: https://www.bilibili.com/video/BV1tt4y1g79q?share_source=copy_web

码云仓库: https://gitee.com/pick-up-light/utility-set

====================================================================

你可能感兴趣的:(STM32,嵌入式,单片机,arm,stm32,串口通信)