类似于众人帮的做任务赚佣金网站,wordpress 简洁文章主题,网络营销和推广的方法,品牌建设流程图第0章#xff1a;准备工作
基本想法#xff1a;利用汇编和gdb调试#xff0c;来学习cortex-m3汇编指令#xff0c;以及一些寄存器的功能。
软件和硬件#xff1a;
硬件#xff1a;韦东山瑞士军刀中的最小核心板#xff08;STM32F103C8T6#xff09; STLINK-V2#…第0章准备工作
基本想法利用汇编和gdb调试来学习cortex-m3汇编指令以及一些寄存器的功能。
软件和硬件
硬件韦东山瑞士军刀中的最小核心板STM32F103C8T6 STLINK-V2调试器 软件 ubuntu操作系统 22.0.4 openocd(用来将二进制文件下载到开发板中 gdb-multiarch(用来进行调试) arm-none-eabi系列软件(对汇编代码进行编译链接 vim(文件编辑器)
Demo工程模板后续的工作都会基于该工程模板 当前章节对应的代码在template文件夹中
运行程序
利用STLINK-V2将开发板与电脑进行连接进入到下载文件的根目录下执行make download显示如下结果说明程序编译下载成功。
同时如果使用的开发板和之前介绍的一模一样可以观察到LED灯在不断闪烁。
调试程序步骤 首先根据之前的’运行程序’中的步骤将程序下载到开发板中 打开两个ternimal分别运行如下命令 ternimal 1: openocd -f /usr/share/openocd/scripts/interface/stlink-v2.cfg -f /usr/share/openocd/scripts/target/stm32f1x.cfg ternimal 2: gdb-multiarch Demo.elf 通过gdb调试程序并观察寄存器变换 执行如下命令 source debug.gdb 得到的结果如下 通过输入命令ni可以观察每一行汇编代码执行完之后stm32中寄存器的变化情况。