背景:
传统的嵌入式行业从业者基本会使用MDK KEIL进行开发,首先说明该软件是一个出色的IDE集成开发软件,编译器是ARMCC,并提供debug的功能。但是在Mac用户和Linux用户却没办法原生使用该软件,所以只能依靠其他方法进行调试。本文介绍利用openocd 在win环境下调试的方法,Mac和linux环境下方法基本类似
硬件:
- 硬件所需stm32开发板一个,本文使用的是正点原子stm32f407。
- 调试器一个,本文使用的是stlink v2
通过swd接口连接起来。
所需软件:
本文是用GCC交叉编译的,所以需要安装交叉编译工具链,arm-none-eabi-gcc
将安装路径放到环境变量里,打开终端或者POWERSHELL会显示如下:
安装路径在这里 把下面路径要提前放到环境变量里。
openocd 下载网址为:https://gnutoolchains.com/arm-eabi/openocd/
解压到固定位置即可
同理openOCD也是:
将OpenOCD路径包含到环境变量里
调试步骤:
打开两个powershell或者两个cmd终端, linux和mac一样。
openocd -f D:\OpenOCD\share\openocd\scripts\interface\stlink-v2.cfg -f D:\OpenOCD\share\openocd\scripts\board\stm32f4discovery.cfg
出现上述代表运行正常。其中第一个cfg文件为stlink接口文件 因为用的硬件为stlink
第二个cfg文件为板子对于芯片文件。stm32f407
打开另一个cmd或者powershell
arm-none-eabi-gdb .\rt-thread.elf
详见下图:
这个时候第一个窗口会显示:
这个时候你在第二个窗口就可以gdb了。