×
单片机 > 单片机程序设计 > 详情

基于STM32从零写操作系统系列---用GDB调试LED程序

发布时间:2020-09-02 发布时间:
|

目的

通过调试程序,观察程序的运行情况。主要是简单介绍程序的调试方法,当然相对于一些集成开发环境,这种调试方法就显得有点落后了。由于我坚持不使用集成开发环境,所以只能这样了。


要求

安装TrueSTUDIO for STM32,这是STM32官方免费的集成开发环境。安装这个IDE的目的只有一个,就是使用它的GDBServer。


实验步骤

1.使用《基于STM32从零写操作系统系列---点亮LED灯》这篇文章的源代码。


2.下载TrueSTUDIO for STM32。


3.安装TrueSTUDIO for STM32软件。正常安装就可以,没有特别的设置。


4. 在命令行中,进入led_proj文件夹,输入make,编译项目,获得boot.out和boot.bin文件。注意,Makefile中编译代码是要添加选项-g,表示生成调试信息。如图:

5. 使用ST-Link Utility软件将boot.bin文件下载到芯片


6.退出ST-Link Utility软件。打开GDBServer软件,(如果是默认安装)路径为C:Program Files (x86)AtollicTrueSTUDIO for STM32 9.2.0ServersST-LINK_gdbserver,双击文件夹中的ST-LINK_gdbserver。注意,开发板必须上电。如图:

7.在命令行中输入如图指令,使GDB连接到目标调试设备。红色圈着的是要输入的命令,划红线的表示已经连接上了。


8.设置断点,如图,具体的GDB命令在这里不详细叙述。


9.开始调试。如图输入的命令。注意观察开发板上的led灯变化。

小结

通过调试程序,我们可以验证程序的运行逻辑是否与自己设计的一样;同时,我们还可以通过查看寄存器和内存中的数据,了解程序的运行情况和状态。建议简单学习一下GDB调试的命令。关于TrueSTUDIO for STM32这个软件,可以自己了解一下。本系列文章,不关心如何熟练使用工具。只要简单了解一些工具的操作就可以了。




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
stm32 总线矩阵介绍