认识元器件 · 单片机(MCU/MPU/SOC) · 实战篇2

STLINK 常见三个版本:V2、V2.1、V3。V2.1 通常出现在 Nucleo 开发板上,带虚拟串口和拖拽烧录。V2 独立调试器便宜,常见几十元。V3 是新一代,桥接功能只在 V3SET 和 V3MODS 上提供,V3MINI 没有。

|--------------|----------|--------------------------|--------------------|--------------------------------------|-------------------|--------------|----------|------------------------------|
| 版本 | 推出时间 | 支持芯片 | 调试接口 | 目标电压 | SWD 最高时钟 | 虚拟串口 | 拖拽烧录 | USB 接口 |
| ST-LINK V2 | 2011 | STM32、STM8 | SWD、JTAG、SWIM | 1.65--5.5 V(SWIM),3--3.6 V(JTAG/SWD) | 约 4 MHz | 无 | 无 | USB 2.0 全速 |
| ST-LINK V2.1 | 2014 | 仅 STM32 | SWD、JTAG | 1.65--3.6 V | 约 4 MHz | 有 | 有 | USB 2.0 全速 |
| ST-LINK V3 | 2018 | STM32(V3SET 经适配板支持 STM8) | SWD、JTAG、SWV、cJTAG | 1.65--3.6 V | 约 24 MHz(V3MINIE) | 有,最高 15 Mbps | 有 | USB 2.0 高速(Type-C 或 Micro-B) |

STLINK官方没有公布源码,网上有bin文件可以使用,官网原理图

三种固件的引脚占用

ST-LINK V2.1、DAPLink、J-Link OB 三套固件,主控都用 STM32F103CBT6,引脚分配相同。可以刷入三种固件。

|--------|------------------|-------------|---------------|
| 信号 | ST-LINK V2.1 | DAPLink | J-Link OB |
| SWDIO | PB14/PB12 | PB14/PB12 | PB14/PB12 |
| SWCLK | PB13/PA5 | PB13 | PB13/PA5 |
| NRST | PB0 | PB0 | PB0 |
| VCP TX | PA2 | PA2 | PA2 |
| VCP RX | PA3 | PA3 | PA2 |
| USB DM | PA11 | PA11 | PA11 |
| USB DP | PA12 | PA12 | PA12 |

USB检测电路:

VBUS 检测

根据 USB 规范,USB 设备必须使用 VBUS 检测。当设备检测到主机存在时,会将上拉电阻连接到 D+ 或 D− 数据信号上,这样主机就能检测到总线上设备的存在。

有两种情况:

  • USB 设备为总线供电(bus-powered):此时 VBUS 检测不是强制的(因为设备一旦上电,USB 就始终处于连接状态);
  • 设备为自供电(self-powered):此时 VBUS 检测是强制的。

PA9 引脚是一个可耐受 5V 的引脚(5V-tolerant),其本身原生具有专门用于 VBUS 检测的附加功能。数据手册的绝对最大额定值表指出,5V 耐受引脚上的电压不得超过 VDD + 4 V。用户必须避免出现 MCU 未上电、而 5V VBUS 连接到 PA9 的情况:这违反了绝对最大额定值的条件,可能导致器件永久性损坏。

为此,必须将 PA9 上的电压降到 4 V 以下。为了实现可靠且安全的 VBUS 检测,建议使用电阻分压器,以确保满足绝对最大额定值的要求。原文:https://www.st.com.cn/content/ccc/resource/technical/document/application_note/group0/0b/10/63/76/87/7a/47/4b/DM00296349/files/DM00296349.pdf/jcr:content/translations/en.DM00296349.pdf

• For VDD in the 3.0-3.6 V range: 82 kΩ (to GND), 33 kΩ (to VBUS).

• For VDD in the 1.65-2.0 V range: 68 kΩ (to GND), 82 kΩ (to VBUS).

按照原理图处理即可,因为升级时可能会操作,没有D+的上拉可能STLINK升级比较困难。当然如果不使用STM32F103CBT6,国产一些兼容的型号芯片已经内置了1.5K上拉电阻,这样子外部电路是不起作用的。

USB 2.0 的 D+、D− 在空闲时都是低电平,两端各有一组电阻在确定这件事:

|-----------|----------|-------------------|
| 端 | 电阻 | 接法 |
| 主机/集线器下行口 | 15 kΩ ×2 | D+、D− 各自下拉到 GND |
| FS 设备 | 1.5 kΩ | D+ 上拉到 3.0--3.6 V |
| LS 设备 | 1.5 kΩ | D− 上拉到 3.0--3.6 V |

插入检测:设备端 1.5 kΩ 与主机端 15 kΩ 分压,3.3 V 经这对电阻分到约 3.0 V,D+ 从 SE0 变成 J 状态,主机判定 connect。

速度识别:只看哪根线被拉高。D+ 高是全速 12 Mbit/s,D− 高是低速 1.5 Mbit/s。高速设备也先挂 FS 上拉接入,再 chirp 握手切到 480 Mbit/s。

断开检测:反过来靠撤上拉,差分线回到 SE0,主机维持 2.5 µs 以上判断开。所以上拉不能焊死,要可控。

ST-LINK/V2-1 支持 USB 电源管理,可以向主机 PC 请求超过 100 mA 的电流。

STM32 Nucleo 开发板及其扩展板的所有部件均可由 ST-LINK USB 连接器 CN1(U5V 或 VBUS)供电。请注意,在 USB 枚举之前,只有 ST-LINK 部分获得供电,因为此时主机 PC 仅向开发板提供 100 mA 电流。在 USB 枚举过程中,STM32 Nucleo 开发板需要向主机 PC 请求 300 mA 电流。如果主机能够提供所需的电源,则目标 STM32 微控制器被供电,红色 LED(LD3)点亮,因此 STM32 Nucleo 开发板及其扩展板最多可消耗 300 mA 电流,不得超过此值。如果主机无法提供所需的电流,则目标 STM32 微控制器以及包含扩展板的 MCU 部分都不会被供电,结果是红色 LED(LD3)保持熄灭。在这种情况下,必须按照下一节 7.5.2《外部电源输入:VIN 和 E5V》中所述使用外部电源。

当开发板由 USB(U5V)供电时,必须在 JP5 的引脚 1 和引脚 2 之间连接跳线(短接),如表 8 所示。

JP1 是根据开发板由 USB(U5V)供电时的最大电流消耗来配置的。当开发板由 USB 供电、且 U5V 上的最大电流消耗不超过 100 mA(包括可能连接的扩展板或 ARDUINO® 扩展板)时,可以设置 JP1 跳线。在这种情况下,USB 枚举总能成功,因为向 PC 请求的电流不超过 100 mA。JP1 可能的配置汇总于下表。

|------------|----------------|-----------|
| JP1 状态 | 供电方式 | 允许电流 |
| 跳线 OFF | 经 CN1 由 USB 供电 | 最大 100 mA |
| 跳线 ON | 经 CN1 由 USB 供电 | 最大 300 mA |

说明:

  • 如果 NUCLEO 板连同扩展板的总耗电会超过 300 mA,就必须外接电源,接到 E5V 或 VIN,只靠 USB 口不够。
  • 如果板子接的是 USB 充电器,就不会发生 USB 枚举,红色 LD3 一直不亮,目标 STM32 也不上电;这种情况下把 JP1 短接到 ON,目标 STM32 照样能被供电。

我们设计是LDO直接给STLINK供电,不需要给MCU或者其他供电,所以直接下拉到地。E5V没有外部输入时浮空。其他直接照抄,STM32硬件设计注意事项等画STM32的时候再过一遍。

相关推荐
单片机仿真设计1 小时前
Proteus仿真51单片机的智能温控风扇调速系统设计(仿真图+程序)
单片机·嵌入式硬件·proteus
youcans_3 小时前
【嵌入式软件AI编程】22. STM32 基础实验:GPIO外部中断
stm32·单片机·嵌入式硬件·ai编程·claude
未来_攻城狮3 小时前
STM32F407VGT6 芯片详解:高性能 Cortex-M4 MCU 入门指南
stm32·单片机·嵌入式硬件
xcLeigh3 小时前
FreeRTOS实战:用STM32+SEGGER打造工业级实时嵌入式系统
人工智能·stm32·单片机·嵌入式硬件·ai
路上有只喵3 小时前
认识元器件 · 单片机(MCU/MPU/SOC) · 实战篇1
单片机·嵌入式硬件
芯岭技术郦4 小时前
XL4460 FSK 无线透传模组
stm32·单片机·嵌入式硬件
半导体憨包4 小时前
共源共栅(Cascode)功率器件:让 SiC / GaN “兼容“你的硅栅驱动
嵌入式硬件·生成对抗网络·硬件工程·半导体·dc-dc·半导体芯片
天空'之城4 小时前
单片机基础核心知识点汇总(五十)
单片机·嵌入式硬件
硅基造物主5 小时前
STM32 从 0 到 1 做智能家居(十):串口与 printf 重定向
stm32·单片机·智能家居·usart·中断