Linux安装ST-Link GDBServer

从TrueSTUDIO提取ST-Link GDBServer,然后在Ubuntu下安装使用。

mingdu.zheng at gmail dot com
http://blog.csdn.net/zoomdy/article/details/79259093

获取ST-Link GDBServer

没有找到单独的ST-Link GDBServer,但是Atollic TrueSTUDIO包含了ST-Link GDBServer,所以可以从TrueSTUDIO中提取。我下载到的版本是Atollic_TrueSTUDIO_for_STM32_linux_x86_64_v9.0.0_20180117-1023.tar.gz。
下载链接:https://atollic.com/resources/download/linux/。

从TrueSTUDIO中解压然后拷贝出ST-Link GDBServer

tar -xf Atollic_TrueSTUDIO_for_STM32_linux_x86_64_v9.0.0_20180117-1023.tar.gz
cd Atollic_TrueSTUDIO_for_STM32_9.0.0_installer
tar -xf install.data
cp Servers/ST-LINK_gdbserver/ ~/ -R

ST-Link GDBServer仅有x64版本,所以要选择x64的Linux发行版。

安装ST-Link GDBServer

将ST-Link的配置文件拷贝到系统目录。

sudo cp ~/ST-LINK_gdbserver/49-stlinkv2.rules /etc/udev/rules.d
sudo cp ~/ST-LINK_gdbserver/49-stlinkv2-1.rules /etc/udev/rules.d

拷贝完成后重启系统。

使用ST-Link GDBServer

打印命令行选项使用说明

~/ST-LINK_gdbserver/ST-LINK_gdbserver -h

使用默认选项打开GDBServer,默认监听端口为61234

sh ~/ST-LINK_gdbserver/ST-LINK_gdbserver.sh

GDB连接到GDBServer

arm-none-eabi-gdb -ex "target remote localhost:61234"
### 设置和使用STM32调试工具 #### 工具准备 为了能够在Linux环境中顺利地进行STM32的开发与调试工作,需要先准备好必要的软件包。这些软件通常包括但不限于`STM32CubeMX`, `GNU Arm Embedded Toolchain`(GCC), 和`OpenOCD` 或者官方提供的`ST-Link GDB Server`用于连接目标板并执行程序加载以及断点设置等操作[^1]。 #### 配置GDB服务器 对于大多数开发者来说,在Linux平台上最常用的方案之一就是通过安装来自意法半导体官方网站发布的`ST-LINK Utility`中的`ST-LINK GDB server`来进行在线仿真器的支持。此服务端能够很好地兼容多种型号的STM32系列单片机,并支持命令行方式启动[^2]。 ```bash $ cd ~/st/stm32cubeclt_1.16.0/ $ ./STLink-gdb-server -p 61234 & ``` 上述脚本会以后台进程的形式运行gdbserver监听指定端口等待客户端连接请求。 #### 编辑器的选择与配置 虽然Keil MDK提供了便捷的一站式解决方案,但在Linux平台上有更多灵活的选择。例如Visual Studio Code (VSCode),它是一个轻量级却功能强大的源代码编辑器,配合特定插件如C/C++扩展、PlatformIO IDE或Remote Development套件后可构建完整的嵌入式项目管理流程;另外还有Eclipse CDT这样的IDE也十分适合处理复杂的工程项目[^4]。 #### 调试过程概述 当一切就绪之后,便可以在所选IDE内创建新工程或将已有项目导入进来。接着按照提示完成编译链接步骤得到最终二进制文件(.elf/.hex)。此时借助于之前提到过的GDB client(`arm-none-eabi-gdb`)即可发起远程调试对话框: ```bash (gdb) target extended-remote :61234 (gdb) load Loading section .isr_vector, size 0x8e lma 0x8000000 ... Start address 0x80005cc, load size 7984 Transfer rate: 1 KB/sec, 1596 bytes/write. (gdb) monitor reset halt (gdb) continue Continuing. ``` 以上交互表明已成功将固件映像上传至MCU内部Flash存储区,并允许其正常启动运行直至遇到第一个硬件中断事件为止.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值