Vscode下载地址:
https://code.visualstudio.com/Download
vscode官网
WSL安装方法请移步:
https://docs.microsoft.com/zh-cn/windows/wsl/install
微软WSL安装帮助文档
arm-none-eabi-gcc编译器下载地址:
https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads
GNU Toolchain
jflash烧录工具下载地址:
https://www.segger.com/downloads/jlink/
jflash下载地址
按照上述地址,相信开发者都能轻松下载并安装成功,接下来,我将带领大家搭建嵌入式gcc开发环境。
- 解压 gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
- tar -xjvf gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz2
- 设置环境变量
- sudo vim /etc/profile
测试环境变量是否设置成功:
arm-none-eabi-gcc -v
至此,环境变量配置成功。
- 对于stm32来说,可以直接使用使用stm32cubeMx配置底层代码以及工具自动生成Makefile、芯片相关启动文件以及链接文件,在Makefile同级目录下,直接执行make,即可编译生成输出文件。
- 至此,我们已经可以编译嵌入式工程了,接下来,使用JFLASH将输出文件烧录进芯片,我们需要安装JFLASH烧录工具,可自行安装。
- 需要配置jlink与板子连接:新建脚本文件:gdbserver.sh,app.gdbinit,apprun.sh,appdown.shgdbserver.sh
"/mnt/f/Software/jflash/v680a/setup/JLinkGDBServerCL.exe" -USB -device STM32F030C8 -endian little -if SWD -speed auto -noir -LocalhostOnly;
app.gdbinit
target remote localhost:2331
monitor reset
monitor halt
monitor endian little
monitor speed auto
file build/XXX.elf
load
# set $pc=0x08000000
apprun.sh【单步调试】
#!/bin/bash
cp APP.gdbinit .gdbinit -f
arm-none-eabi-gdb -iex 'add-auto-load-safe-path/'
appdown.sh【下载】
#!/bin/bash
cp APPFLASH.gdbinit .gdbinit -f
arm-none-eabi-gdb -iex 'add-auto-load-safe-path/'
- 演示调试步骤:
- 执行脚本 ./gdbserver.sh
- 执行make
- 执行脚本 ./apprun.sh后进入调试状态,可使用gdb对代码进行单步调试分析
- 执行脚本 ./appdown.sh下载固件
- 结束