Library Search
结果页命令行烧录与 GDB 调试 STM32
在 知识库 中找到 8 个匹配结果。
知识库
知识库
8 个 命令行烧录与 GDB 调试 STM32 # OpenOCD:命令行烧录与 GDB 调试 STM32
## 目标
使用 OpenOCD + arm-none-eabi-gdb 通过 ST-Link 对 STM32F4 进行命令行烧录和源码级调试。
## 硬件
- STM32 Nucleo-F407ZG 开发板(内置 ST-Link/v2-1)
- 或任意 STM32 + ST-Link 连接
## 一、烧录固件
### 1.… 3% ST-LINK V2 使用与配置代码例程 # ====== 一键命令 ======
openocd -f openocd_stlink.cfg \
-c "program build/firmware.bin 0x08000000 verify reset exit"
```
### GDB调试
```bash
# 启动OpenOCD
openocd -f openocd_stlink.cfg &
# 连接GDB
a… 3% 进阶:Flash 编程与批量烧录脚本 ```cmake
# CMakeLists.txt 末尾添加烧录目标
add_custom_target(flash
COMMAND openocd
-f ${OPENOCD_SCRIPTS}/interface/stlink.cfg
-f ${OPENOCD_SCRIPTS}/target/stm32f4x.cfg
-c "program… 3% 入门篇:GDB 调试基础与断点策略 # OpenOCD 调试实战手册
## 本章目标
深入掌握 OpenOCD 的调试技巧:硬件断点、条件断点、RTOS 感知调试、Flash 操作。
---
## 1. OpenOCD 架构理解
```
GDB Client ──TCP:3333──> OpenOCD Server ──USB──> 调试探针 ──SWD/JTAG──> MCU… 3% MN316 NB-IoT驱动代码 — STM32 UART+DMA+IDLE · MQTT物模型上报 /**
* @brief 在stm32f1xx_it.c的USART2_IRQHandler中调用此函数
* 实现UART IDLE中断 + DMA接收
*
* stm32f1xx_it.c 示例:
*
* void USART2_IRQHandler(void)
* {
* if (__HAL_UART_GET_FLAG(&huart2, UAR… 3% STM32 代码例程 int main(void) {
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_TIM2_Init();
MX_USART2_UART_Init();
// 启动编码器模式
HAL_TIM_Encoder_Start(&htim2, TIM_CHANNEL_ALL);
printf("STM32 EC1… 2% STM32G070RB Nucleo-64 代码例程 > Nucleo G070 同样支持 STM32duino,Board 选择 `Nucleo-64 G070RB`
```cpp
/* Arduino 风格 - 完全兼容 Shield 生态 */
void setup()
{
pinMode(PA5, OUTPUT); // D13 用户 LED
pinMode(PC13, INPUT_PULLUP); // B1 用… 2% ST-LINK V2 调试烧录器技术文档 1. **先接好线再上电**:插拔连线时务必断开USB,避免静电或短路损坏。
2. **确认目标板供电**:如果目标板已经独立供电,ST-LINK的3.3V引脚不要连接。
3. **SWD引脚复用**:PA13(SWDIO)和PA14(SWCLK)默认是SWD调试引脚,如果程序中将其配置为普通GPIO,可能导致后续无法连接调试器。解决方法:
- 使用RST引脚连接ST-LINK的RST,在连… 2%