STM32开发 -- Keil使用(2)

发布者:数字火箭最新更新时间:2019-07-26 来源: eefocus关键字:STM32开发  Keil使用  工程调试 手机看文章 扫描二维码
随时随地手机看文章

STM32开发 – Keil使用(1) 用了很长的篇幅,主要介绍了keil的菜单栏、工具栏、工程配置等信息。但是很多时候拿到的工程示例,这些可是都配好了的。接下来开始讲解一下,工程调试过程中的一些技巧。


一、编译、调试

1、编译

调试之前先要编译

这里写图片描述

编译当前文件(单个) Ctrl + F7

编译目标文件(修改过的) F7

编译所有目标文件(重新编译) 无

编译多个工程文件(多工程) 无

停止编译 无

下载软件 F8


2、调试

打开调试

这里写图片描述

打开/关闭调试 Ctrl + F5

插入断点 F9

失能单个断点 Ctrl + F9

失能所有断点 无

取消所有断点 Ctrl + Shift + F9


二、调试工具栏

打开调试,出现了调试工具栏


这里写图片描述

1、复位,全速运行,停止运行

这里写图片描述


复位:让程序复位到起点,调试设置恢复到初始状态。

全速运行(F5):可以让程序运行常看运行状态,也可以在特定位置打断点,让程序运行到特定位置,查看运行状态。

停止运行:程序全速运行时(有效),点击该按钮可让程序停止运行。

2、运行光标

这些操作,与打断点和全速运行(F5)结合着使用。


这里写图片描述

单步调试

这里写图片描述**

单步调试(F11)也就是每点一次按钮,程序运行一步,遇到函数会跳进函数**执行。


逐步调试

这里写图片描述**

逐行调试(F10)也就是每点一次按钮,程序运行一行,遇到函数跳过函数**执行。


跳出调试

这里写图片描述**

跳出调试(Ctrl + F11)**也就是每点一次按钮,程序跳出当前函数执行,直到跳出最外面的函数(main函数)。


运行到光标行

这里写图片描述

**运行到光标处(Ctrl + F10)**即将光标放在某一行,点击该按钮(或Ctrl + F11),程序执行到光标的位置就会停止下来(前提是程序能执行到光标的位置)。


跳转到暂停行

这里写图片描述

这个功能在程序停止运行时有效,主要的作用就是我们打开了很多文件,不知道将程序翻到哪里去了,点击改按钮即可知道我们的程序暂停在那个位置。


3、调试窗口

有两种方式打开

这里写图片描述
这里写图片描述

这里只介绍几个常用的。


观察器窗口(Watch Windows)

这里写图片描述

常用于查看变量的窗口

这里写图片描述

存储器窗口(Memory Windows)

查看该存储器地址的值得变化

这里写图片描述
这里写图片描述

串口窗口(Serial Windows)

查看外设寄存器数值的窗口

这里写图片描述
这里写图片描述

关键字:STM32开发  Keil使用  工程调试 引用地址:STM32开发 -- Keil使用(2)

上一篇:STM32经keil mdk编译产生的.map文件分析
下一篇:使用gcc工具链进行Linux环境下的stm32开发

推荐阅读最新更新时间:2024-11-10 14:32

STM32高级开发(6)-makefile与调试器驱动
上一篇我们介绍了整套开发环境中的最重要的一环 :编译工具链。而在这篇中我们会介绍与其配合使用的makefile与调试器驱动,将这些工具结合,我们所需要的开发环境就简单的搭建完成了。最激动人心的:在这篇文章的最后我们将去尝试编译一个流水灯程序。 #Makefile Make可以说是在Linux下最出色的一个工具,也许在我们刚刚接触时觉得它晦涩难懂,用着也不方便。但当你渐渐熟悉了他的用法,你会发现原来它是那么的强大。 那么Makefile到底是做什么的呢?这里我们就可以顺带着解释之前我们提出的问题了,难道编译的指令要一个一个文件的敲吗?显然不是。而Makefile就是帮助我们来敲编译指令的工具。也许这样描述有些抽象,而直接看M
[单片机]
<font color='red'>STM32</font>高级<font color='red'>开发</font>(6)-makefile与<font color='red'>调试</font>器驱动
STM32开发笔记34:USB CDC驱动程序的详细移植过程
单片机型号:STM32F401 本文详细介绍USB CDC驱动程序的移植过程。 1、按照STM32F4 开发笔记8:解决USB CDC “该设备无法启动”问题介绍的过程生成驱动程序后,找到如下图所示的文件加入到自己的项目工程中。 2、打开usbd_cdc_if.c文件,可以看到其中有,如下4个函数,其中Init、DeInit和Control函数都不需要改变,关键是Receive函数。 static int8_t CDC_Init_FS(void); static int8_t CDC_DeInit_FS(void); static int8_t CDC_Control_FS(uint8_t cm
[单片机]
<font color='red'>STM32</font><font color='red'>开发</font>笔记34:USB CDC驱动程序的详细移植过程
stm32和电机开发(从架构图到文档编写)
很多同学不喜欢写文档,总觉得写文档耽误事,影响开发效率。实际上,不一定是那么回事。在实际开发中,编写文档的目的主要是为了厘清自己的思路,在开发代码前把所有的事情都考虑到,防止代码写了一半,需要推倒重来的情形发生。 当然,很多时候编写文档的确是枯燥的,那么有没有什么好的办法,可以让文档编写稍微变得容易一点,答案就是先写架构图。因为文档本身就可以看成是架构图+文字的格式。 1、先编写架构图 架构图是软件的魂。我们拿到软件开发需求后,第一步要做的就是模块拆分、流程抽象和接口设计。这部分可以找一些合适的软件来完成,比如visio、openoffice draw、processon都可以。总之,只要能达到目的就行。比如我们写一个网站
[单片机]
<font color='red'>stm32</font>和电机<font color='red'>开发</font>(从架构图到文档编写)
关于keil5使用注意事项(预定义、路径包含)
终于在不用keil5自带添加库的基础上0 error的新建了一个工程。磕磕绊绊搞了快一个下午,各种小问题搞到崩溃。 首先是库文件添加路径的问题 ,只要是你工程中用到的头文件,都需要在工程选项配置中添加相应的路径,另外,通过一个下午的挣扎,发现最好还是在学习的过程中逐渐构建自己的代码库,最好自己添加需要的库文件,这样便于程序的移植。也便于熟悉各种启动文件。 另外一定要注意程序中不能有汉语输入。 千万不要有汉语输入!千万不要有汉语输入!千万不要有汉语输入! 一开始我一直以为是keil坏了,谁知道最后还是发现是自己的错。所以一定要细心。跟着他提示的错误代码行去找,记住,一定要细心。不要老是怀疑别人。一点点汉语输入的空格导致我浪
[单片机]
STM32开发笔记68: keil使用ST-Link不能成功下载的真实原因
单片机型号:STM32F091RCT6 在STM32开发笔记67: 在keil中使用ST-Link不能成功下载的解决方法提到解决keil中使用ST-Link不能成功下载的一种方法,经仔细分析其实原因还在于程序上。 不能成功下载的程序中,包含如下程序,: CInit::CInit(uint8_t mode) { //底层初始化 HAL_Init(); //GPIO时钟使能 __HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOD_CLK_ENAB
[单片机]
STM32使用HAL库开发指南
准备内容 好奇心,耐心,细心 一台电脑,并安装keil5,以及STM32CUBEMX等开发应用。 JLINK或者ST-LINK模块。 STM32开发板或者最小系统板(我选用STM32F103RET6模块,配置与逻辑大同小异)。 01创建工程 步骤 1:在STM32CubeMX中创建一个项目 打开STM32CubeMX软件,在右上方的“Project”标签下,选择“New Project”。 在主界面上选择你需要使用的STM32系列芯片型号。 在左侧的选项树中,选择你需要的外设配置和时钟设置,并进行相应的配置。你可以根据自己的需求勾选或取消勾选相应的外设。 生成完成后,你可以选择打开生成代码所在
[单片机]
<font color='red'>STM32</font><font color='red'>使用</font>HAL库<font color='red'>开发</font>指南
STM32开发笔记94: 忽略PlatformIO中的特定警告
单片机型号:STM32F091RCT6 尝试在PlatformIO中使用STM32Cube进行项目的开发工作,第1次编译,即出现如下图的警告。 该警告在GCC中有详尽的解释: Allows the compiler to assume the strictest aliasing rules applicable to the language being compiled. For C (and C++), this activates optimizations based on the type of expressions. In particular, an object of one type is ass
[单片机]
<font color='red'>STM32</font><font color='red'>开发</font>笔记94: 忽略PlatformIO中的特定警告
stm32keil开发环境搭建
本篇内含工程建立以及JLINK设置,内容借鉴了前人经验,在此感谢各位前人的贡献。 1 下载stm32F10x的官方库 http://www.st.com/web/en/catalog/tools/PF257890 2 新建工程 工程名设为stm32_demo,选择芯片型号为STM32F103B,如图, 因为下载的stm32库中有启动代码,所以这里选择 否 ,不拷贝启动代码。 在工程文件下,新建Startup 、Headers、User、Libraries、CMSIS、Lists、Output文件夹。 文件夹 用途 Startup 启动文件,Flash在16~32Kb小容量,64~128Kb中
[单片机]
<font color='red'>stm32</font>之<font color='red'>keil</font><font color='red'>开发</font>环境搭建
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved