DAP下载程序(在MDK上配置DAP)以及程序调试(Keil uVision5软件的使用)

目录

1.  在MDK上配置DAP

2.  了解不同开发板不同的下载算法

3.  DAP调试程序

3.1  JTAG/SWD调试原理概述

3.2  基础执行控制按钮

3.3  查看程序段/函数执行时间

3.4  结束仿真报错解决方法

3.5  工具栏常用窗口按钮介绍

3.5.1  Call Stack窗口:查看函数调用关系&局部变量

3.5.2  Watch窗口:查看函数首地址&变量值,设置全局变量在被读或写后自动停止运行

3.5.3  Memory窗口:内存查看窗口

3.5.4  Peripheral窗口:查看寄存器的值

4.  仿真时需要注意的点

4.1  仿真时使用MDK的Level 0等级优化

4.2  调试停止在断点处时,只是内核停止,外设会继续运行

4.3  断点的设置要有时间观念,考虑到是否会打断正常通信


1.  在MDK上配置DAP

        首先随便打开一个工程,找到下图方框位置点击;

        点击完后,进入如下界面,点击“Debug”,进入下图界面,将2中的选项勾选后,点击“Settings”;

        点击完进入如下界面,按照图示进行选择。

        操作完后返回如下界面,找到“Utilities”点击,勾选2所示的内容“Use Debug Driver”。

2.  了解不同开发板不同的下载算法

        首先随便打开一个工程,找到下图方框位置点击;

        点击完后,进入如下界面,点击“Debug”,进入下图界面,点击“Settings”;

        进入如下界面,其中2按照,如图进行勾选,3是STM32F103C8T6的算法下载。

3.  DAP调试程序

3.1  JTAG/SWD调试原理概述

        Cortex-M内核含有硬件调试模块,该模块可在取指(指令断点)或访问数据(数据断点)时停止。

        内核停止时,可以查询内核的内部状态和系统的外部状态。完成查询后,可恢复程序执行。

        灵活的SWJ-DP引脚分配。

3.2  基础执行控制按钮

        对于断点相关按钮

        点击开始/停止仿真按钮,进入如下界面:

        对于相应按键功能介绍

3.3  查看程序段/函数执行时间

        首先,点击魔术棒按钮,如下:

        进入到如下界面:

        按照顺序点击,进入如下界面:

        将“Core Clock”改为72MHz(使用的STM32F103C8T6,其他型号根据时钟频率进行相关更改)。

3.4  结束仿真报错解决方法

        我们在使用过程中可能在结束仿真时可能会遇到如下情况:

原因:MDK5.23以后对中文的支持不友好

解决方法:

1、仿真结束前将所有断点清除

2、将工程路径改浅,并改成全英文路径

3.5  工具栏常用窗口按钮介绍

3.5.1  Call Stack窗口:查看函数调用关系&局部变量

其中1是函数的类型名,2是函数的首地址,3是函数的返回类型

3.5.2  Watch窗口:查看函数首地址&变量值,设置全局变量在被读或写后自动停止运行
3.5.3  Memory窗口:内存查看窗口
3.5.4  Peripheral窗口:查看寄存器的值

4.  仿真时需要注意的点

4.1  仿真时使用MDK的Level 0等级优化

4.2  调试停止在断点处时,只是内核停止,外设会继续运行

4.3  断点的设置要有时间观念,考虑到是否会打断正常通信

Visual Studio编辑器左侧菜单栏不小心关掉如何打开(左侧解决方案资源管理器不显示如何打开)、C语言中int main和void main的区别以及C工程的创建_visual studio2022左边栏怎么打开-CSDN博客

Visual Studio编辑器中C4996 ‘scanf‘: This function or variable may be unsafe.问题解决方案-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/476066.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ChatGPT实战100例 - (17) 用ChatGPT实现音频长度测量和音量调整

文章目录 ChatGPT实战100例 - (17) 用ChatGPT实现音频长度测量和音量调整获取音频长度pydub获取音频长度获取时长精确到秒格式设定 mutagen获取音频长度 调整音量视频音量调整注意事项 ChatGPT实战100例 - (17) 用ChatGPT实现音频长度测量和音量调整 老王媳妇说上次那个pip挺好…

多模态基础--- word Embedding

1 word Embedding 原始的单词编码方式: one-hot,维度太大,不同单词之间相互独立,没有远近关系区分。 wordclass,将同一类单词编码在一起,此时丢失了类别和类别间的相关信息,比如class1和class3…

按键控制LED和光敏传感器控制蜂鸣器

按键控制LED 把两个按键分别接在PB11、PB1上面,两个LED接在PA1和PA2上面 main.c#include "stm32f10x.h" // Device header #include "Delay.h" #include "LED.h" #include "Key.h"uint8_t keynum; //全局…

Linux下HTTP隧道技术的应用场景与优势分析

亲爱的Linux侠们,今天我们来聊一聊Linux下HTTP隧道技术的应用场景与优势。在这个网络时代,HTTP隧道技术就如同一位神秘的“魔法师”,为我们解决了许多棘手的网络问题。 首先,让我们来看看HTTP隧道技术在哪些场景下能大展身手。 …

深度学习之pytorch实现线性回归

度学习之pytorch实现线性回归 pytorch用到的函数torch.nn.Linearn()函数torch.nn.MSELoss()函数torch.optim.SGD() 代码实现结果分析 pytorch用到的函数 torch.nn.Linearn()函数 torch.nn.Linear(in_features, # 输入的神经元个数out_features, # 输出神经元个数biasTrue # 是…

刷题Day2

🌈个人主页:小田爱学编程 🔥 系列专栏:刷题日记 🏆🏆关注博主,随时获取更多关于IT的优质内容!🏆🏆 😀欢迎来到小田代码世界~ 😁 喜欢…

2024.2.18 C++QT 作业

思维导图 练习题 1>定义一个基类 Animal&#xff0c;其中有一个虛函数perform&#xff08;)&#xff0c;用于在子类中实现不同的表演行为。 #include <iostream>using namespace std;class Animal { public:virtual void perform() {cout << "这是一个动…

Github 2024-02-18 开源项目日报 Top10

根据Github Trendings的统计&#xff0c;今日(2024-02-18统计)共有10个项目上榜。根据开发语言中项目的数量&#xff0c;汇总情况如下&#xff1a; 开发语言项目数量Python项目5PowerShell项目1Rust项目1PHP项目1Jupyter Notebook项目1TypeScript项目1 Black&#xff1a;不妥…

GZ036 区块链技术应用赛项赛题第6套

2023年全国职业院校技能大赛 高职组 “区块链技术应用” 赛项赛卷&#xff08;6卷&#xff09; 任 务 书 参赛队编号&#xff1a; 背景描述 近年来&#xff0c;食品安全问题层出不穷&#xff0c;涉及到各种食品类别&#xff0c;如肉类、水果、蔬菜等。食品安全事…

宝塔安装MySQL、设置MySQL密码、设置navicat连接

1、登录宝塔面板进行安装 2、设置MySQL连接密码 3、安装好了设置navicat连接 登录MySQL [roothecs-394544 ~]# mysql -uroot -p Enter password: 切换到MySQL数据 mysql> use mysql Database changed mysql> 查询用户信息 mysql> select host,user from user; ---…

尾矿库排洪系统结构仿真APP助力尾矿库本质安全

1、背景介绍 尾矿库作为重大危险源之一&#xff0c;在国际灾害事故排名中位列第18位&#xff0c;根据中国钼业2019年8月刊《中国尾矿库溃坝与泄漏事故统计及成因分析》的统计&#xff0c;在46起尾矿库泄漏事故中&#xff0c;由于排洪设施导致的尾矿泄漏事故占比高达1/3&#x…

mmap映射文件使用示例

mmap 零拷贝技术可以应用于很多场景&#xff0c;其中一个典型的应用场景是网络文件传输。 假设我们需要将一个大文件传输到远程服务器上。在传统的方式下&#xff0c;我们可能需要将文件内容读入内存&#xff0c;然后再将数据从内存复制到网络协议栈中&#xff0c;最终发送到远…