蓝桥杯嵌入式之 Keil 仿真与调试

简介: 蓝桥杯嵌入式之 Keil 仿真与调试

前言


一、调试器的准备工作:


1.在 Keil uVision集成开发环境下,选择CMSIS-DAP Debugger调试器。

cd16706ecc6ddecbba3d0f1582dbda9.png


(在此之前要将开发板接口连接仿真器再连上电脑。)



82d111cecebb9066cce55b3bc4f6b2e.png

2.在Setting 下,选择SW模式。


045e4dc446035a24064f316ce977055.png

3.在Flash选项卡下,勾选 Reset and Run。

164cf8538dc0acf0981e2df1b9ab3c0.png

最后点击 OK 即可。


二、Keil 仿真与调试:


点击这个 “放大镜” 进入调试阶段。


d4fc59314c3f32ffb2908dc3360129d.png

1. “复位” ,“全速运行”。


① 是 Reset 复位,点击即可回到程序的最初位置。

② 是 Run 全速运行,如果不设置断点,则程序将运行完毕。


9407ac25826b237e25010b92da07007.png

2. “停止”,“单步运行”。


① 是 Stop 停止,即若全速运行一程序,点击就可让程序停止当前的进程。

② 是 Step 键,即单步运行。此键可进入函数内部逐句运行。

d57689ec49517ba44983cdb3e3c4ea5.png


3. “以函数为单位单步运行”,“退出当前函数”。


① 是 Step Over ,即以函数为单位单步运行,此键不可进入函数内部逐句运行。。

② 是 Step Out ,即跳出函数。若使用 Step 键 进入函数逐步运行后,可点击 Step Out 跳出函数。

fa482fd5ab4ac89e9c58df4eca02f61.png


4.“运行到指定位置”。


此键 是 Run to Cursor Line ,即 将鼠标点击程序某处,点击后程序就运行到刚刚鼠标点击的某行。


1a1d4d3c74cd4369caa47d7374639f9.png

三、设置断点:


在程序某处设置了断点,点击 全速运行 程序后,程序运行到设置断点的某行。(之后可点击Step 键单步运行程序,逐步调试)


1 是设置断点,2 是 禁用某个断点,3 是禁用全部设置的断点, 4 是销毁所有的断点。


7a8a2e4b4af5b6a1212776191fd7e6c.png

注意:禁用断点不是销毁。(可以自己尝试一下)


四、使用窗口观察变量,寄存器值:


1. watch 窗口。(观察变量)

(1)点击这个小眼镜 右边的黑色倒三角即可看到有两个 watch 窗口。

dfa0a23adbb90db7176af8e794d127f.png


(2) 点击watch1 窗口即可在里面输入自己想到观察的变量,再回车即可。


a833ed7cd19b9468355c3a1613bf5a4.png

(3) 右击你的变量名即可出现值的不同进制,可随意选择。


ff171e36107459cb50f2dd8c11d7f05.png

此 watch 窗口多用于观察全局变量的值,也可观察局部变量。不过局部变量在其函数结束就释放了,观察意义不大。


2. 观察寄存器值。

我们可以看到点击后可以看到很多的寄存器,我们以GPIOB为例。

4cfb44e5d07408f295b784b15a66ca7.png


我们可以在里面找到 GPIO ,点击选择 GPIOB 即可 。

f7361c2f2c89beb29e0ecc70a846ef6.png


观察 IDR 即可。运行程序后可观察到寄存器值的变化。


2124afcd3a36e3f5658b622389de468.png

相关文章
|
6月前
|
C语言
蓝桥杯嵌入式零基础如何准备
蓝桥杯嵌入式零基础如何准备
|
6月前
|
缓存 网络协议 算法
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
[蓝桥杯嵌入式]hal库 stm32 PWM的使用(随时修改占空比,随时修改频率)
|
6月前
蓝桥杯嵌入式第十一届(第一场)省赛
蓝桥杯嵌入式第十一届(第一场)省赛
182 1
|
6月前
蓝桥杯嵌入式第十二届省赛
蓝桥杯嵌入式第十二届省赛
104 0
|
6月前
蓝桥杯嵌入式第十一届(第二场)省赛
蓝桥杯嵌入式第十一届(第二场)省赛
117 0
|
6月前
|
芯片
蓝桥杯嵌入式创建第一个工程(点亮led灯)
蓝桥杯嵌入式创建第一个工程(点亮led灯)
94 0
|
存储 数据采集
【蓝桥杯嵌入式】蓝桥杯嵌入式第十四届省赛程序真题,真题分析与代码讲解
【蓝桥杯嵌入式】蓝桥杯嵌入式第十四届省赛程序真题,真题分析与代码讲解
1229 1
|
存储 数据采集 数据格式
【蓝桥杯嵌入式】蓝桥杯第十三届省赛程序真题,真题分析与代码讲解
【蓝桥杯嵌入式】蓝桥杯第十三届省赛程序真题,真题分析与代码讲解
732 0
【蓝桥杯嵌入式】蓝桥杯第十二届省赛程序真题,真题分析与代码讲解
【蓝桥杯嵌入式】蓝桥杯第十二届省赛程序真题,真题分析与代码讲解
372 0
【蓝桥杯嵌入式】蓝桥杯第十二届省赛程序真题,真题分析与代码讲解