0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Keil(MDK-ARM) 使用教程(三)_在线调试

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-04-07 14:30 次阅读

Ⅰ、概述

该文章总结Keil(MDK-ARM)在线调试相关的内容,详情请往下看。

Ⅱ、下载

Keil集成开发工具和支持包,可以到官方网站下载,也可以到我的360云盘下载。现在(2016.06)MDK-ARM最新版本是5.20,支持包根据自己MCU的型号选择下载,由于我总结是基于ST芯片的,在云盘保存了ST的支持包,我会定期在360云盘更新。

Keil下载地址:

官方网站:http://www.keil.com/download/product

360云盘:https://yunpan.cn/cPYaeY23RSsbb访问密码 9aba

支持包下载地址:

官方网站:http://www.keil.com/dd2/Pack

360云盘:https://yunpan.cn/cxWnPxniRXTMS访问密码 9a98

演示参考的软件工程:

https://yunpan.cn/cSnTMev59yXmU访问密码 f9ff

Ⅲ、调试功能描述

由于我是直接使用(打开现有的软件工程),如果跟着需要下载上面演示参考的软件工程才行。工程默认是使用硬件在线调试,接下来按照每一点来讲述。

1.编译+调试

打开软件工程 -> 编译 -> 调试

这里的编译建议使用Build Target(第2个按钮)编译工程(如下图动画),也就是使用快捷键F7。Translate(第1个按钮)是编译当前活动文件。Rebuild all Target files(第3个按钮)是重新编译所有目标文件。

在线调试分类:软件在线调试和硬件在线调试;由于现在硬件成本比较便宜,一般我们都使用硬件在线调试,也就是软件直接下载到芯片,我们查看运行状态。

2.复位+全速运行

复位 -> 全速运行

复位,使程序复位到初始;

全速运行F5,我们可以在很多地方打断点,让程序运行到断点位置,此时程序就停止下来了。

3.单步调试

【单步调试】也就是每点一次按钮,程序运行一步。遇到函数会进入函数。

点击图标按钮,或者按快捷键F11。

(这里取消上面的断点)

4.逐步调试

【逐步调试】即逐行调试,也就是每点一次按钮,程序运行一行。遇到函数不会进入函数。

点击图标按钮,或者按快捷键F10。

5.跳出调试

【跳出调试】即挑出函数调试,也就是每点一次按钮,程序跳出一个函数,直到跳出最外面的函数(main函数)。

点击图标按钮,或者按快捷键Ctrl + F11。

6.运行到光标处

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

7.跳转到暂停行

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

8.调试窗口

【调试窗口】是在调试的时候可以查看的窗口,这里有别于平时编辑状态下的窗口。平时编辑时View菜单下面的选项很小,但是进入调试模式,这里就多了很多选项,这些选项就是调试时查看的窗口(见下图)。


下面着重讲述一下常用的一个调试窗口吧

A.内存窗口,也就是我们查看变量的窗口

B.系统外设窗口,也就是外设寄存器数值查看的窗口

Ⅳ、说明

以上是基于Keil开发工具中的MDK-ARM来进行总结,Keil C51等或许有些地方存在差异。每一种工具的功能都是需要自己亲自实践,并长期使用才能达到灵活运用的地步,不建议死记硬背。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ARM
    ARM
    +关注

    关注

    134

    文章

    8925

    浏览量

    364524
  • keil
    +关注

    关注

    68

    文章

    1201

    浏览量

    166032
  • MDK
    MDK
    +关注

    关注

    4

    文章

    207

    浏览量

    31887
收藏 人收藏

    评论

    相关推荐

    keil5怎么把程序烧到板子上

    安装 Keil MDK-ARM: 从 Keil官网下载 Keil MDK-ARM安装包。 按照安装向导完成安装。 连接开发板: 将开发板通过USB
    的头像 发表于08-22 09:30 207次阅读

    如何用keil给单片机烧录程序

    以下是详细的步骤: 安装 Keil软件 : 首先,您需要从 Keil官网下载适合您单片机型号的 MDK-ARM软件。 安装过程中,请按照提示操作,选择适合您的开发板和单片机型号。 创建新项目 : 打开
    的头像 发表于08-22 09:28 229次阅读

    stmf32f334r8在MDK中没有支持,不能在线调试怎么解决?

    stmf32f334r8 在 MDK中没有支持,不能 在线 调试
    发表于05-15 07:36

    stm32cubemx生成mdk-armv4项目文件无法打开是什么原因导致的?

    stm32cubemx 生成 mdk-armv4 项目文件无法打开
    发表于05-14 06:43

    如何在KeilMDK-ARM环境下开发STM32L011K4T6?

    Keil MDK-ARM环境下开发STM32L011K4T6
    发表于04-22 06:49

    怎么啦?你的KeilC51和KeilMDK还无法共存吗?

    路径设置为:D:\software\ Keil\ Keil_MDK\ ARM\PACK 、KeilC51与KeilMDK共存打开C51与 MDK的安
    的头像 发表于03-24 08:09 2163次阅读
    怎么啦?你的<b class='flag-5'>Keil</b> C51和<b class='flag-5'>Keil</b> <b class='flag-5'>MDK</b>还无法共存吗?

    M451在Keil中,打开仿真器调试老是自动断开怎么解决?

    开发环境: Toolchain: MDK-ARMProfessionalVersion: 5.24.1 Toolchain Path: D: Keil_v5ARMARMCCBin C
    发表于01-16 06:43

    keil5在线调试的时候能不能看到外设的时钟频率?

    使用 keil4 在线 调试F1的时候可以看到时钟频率,今天第一次在 KEIL5上用 在线 调试F4,但是没
    发表于11-08 08:25

    KeilC和MDK是否冲突?

    KeilC和 MDK是否冲突?以前写51装的是KeilC,现在STM32装的是 MDK,我没有将他们装在一个目录里,怕出问题
    发表于11-07 06:48

    关于KEIL5中在线仿真watch窗口的问题求解

    使用 MDK5版本进行 在线仿真 调试,将需要观察的变量通过右键add xxxx to watch1,将变量添加到watch窗口中进行实时查看。同一个程序在编译 在线仿真后,总能看到之前添加的
    发表于11-03 07:34

    keil在线调试无法设置断点怎么解决?

    使用的是 KeilIDE及Jlink仿真器,但是 keil启动 在线仿真时无法设置断点,仿真前设置的断点在仿真时会无效,仿真仅能全速运行,如下图: 请问大家有没有遇到类似的情况,是怎么解决的。
    发表于11-03 06:11

    请问keilC51和MDK高版本如何共存?

    keilC51和 MDK高版本如何共存?按照网上方法装同一个目录结果只能看到的51芯片选择,高等级 arm找不到!
    发表于10-19 08:24

    Keil修改ARM编译器及配置方法

    Keil MDK自 V5.36 版本之后,默认就不带 ArmCompiler V5版本编译器。如果需要使用 V5 版本编译器,就需要自己下载并安装。
    发表于09-19 10:41 3402次阅读
    <b class='flag-5'>Keil</b>修改<b class='flag-5'>ARM</b>编译器及配置方法

    CW32F030x6/x8用户手册

    的 Microcontroller Development Kit for ARM®( MDK-ARM)本手册并未涵盖与软件开发环境相关的所有主题,但是演示了编译器 / 调试器入门所需的基本步骤,并提供了全面理解每个步骤所需的文档
    发表于09-14 07:37

    ARMKEILMDK工具包的操作流程

    本笔记介绍了 ARM® KEILMDK工具包的操作流程,该工具包采用了μVision®和MicroSemi(Actel™)包含嵌入式 ARM®Cortex™-M3处理器的全新智能融合2(S
    发表于09-04 06:16