keil5仿真相关配置,解决相关bug

2023-05-16

** 一、 keil5仿真时,添加动态数值至观察窗口(watch X),但是值不变化或提示错误。**
原因分析:
1.1 未将观察的变量配置为全局变量,需要将观察的变量配置为全局变量,且不能为static变量。
1.2 最主要的原因:
是在debug模式界面下,没有选择VEIW中的【periodict window update】,此选项没有选择的话,会导致debug时的变量不动态变化。
在这里插入图片描述
1.3 使用方法:
在debug模式下,鼠标左键点击观察变量,然后点击鼠标右键,选择Add 【变量】to,然后选择【watch】,即可将该变量添加至变量观察窗口处.
二、逻辑分析仪使用方法:
2.1 使用逻辑分析仪可以观察任意管脚,或者任意变量的波形变化。
使用方法:
2.2 逻辑分析仪位置:
逻辑分析仪位置
2.3 添加【任意变量】至逻辑分析仪看波形,步骤:
在debug模式下,鼠标左键点击观察变量,然后点击鼠标右键,选择Add 【变量】to,然后选择最后一个选项【logic analyzer】,即可将该变量添加至逻辑分析仪波形观察窗口处.
在这里插入图片描述
2.3.1 成功添加界面:
在这里插入图片描述
2.4 添加任意管脚至逻辑分析仪处,观察管脚输出波形:
在这里插入图片描述
2.4.1 若为添加成功,或提示unknow signal,原因为此处配置问题,需将此处配置为如下图:
在这里插入图片描述
2.4.1.1 这种情况是Debug的设置不正确导致的。
在这里插入图片描述
2.4.1.2 需修改为如下图所示:
相关指令:DARMSTM.DLL和-pSTM32F103ZE在这里插入图片描述
三、当一切都成功之后,点击debug模式下,全速运行,即可看到数值和波形动态变化啦。【**最重要的就是debug模式下选择VEIW下的最后一个选项**
在这里插入图片描述
三、debug界面处的相关按键介绍:
在这里插入图片描述

  1. 复位,其功能等同于硬件上按复位按钮,相当于实现了一次硬复位。按下该按钮后,代码会重新从头开始执行。
    在这里插入图片描述
  2. 执行到断点处(或全速运行),按按钮用来快速执行到断点处,有时候并不需要观看每步时怎么执行的,而是想快速执行到程序的某个地方看结果,这个按钮就可以实现这样的功能,前提是已在查看的地方设置了断点。
    在这里插入图片描述
  3. 停止运行,此按钮在程序一直执行的时候变为有效,可以使程序停止下来进入到单步调试状态。
    在这里插入图片描述
  4. 执行进去,该按钮用来实现执行到某个函数里面去的功能,在没有函数的情况下等同于执行过去按钮。
    在这里插入图片描述
  5. 执行过去,在碰到有函数的地方,通过该按钮就可以单步执行过这个函数,而不进入这个函数单步执行。
    在这里插入图片描述
  6. 执行出去,该按钮是进入了函数单步调试的时候,有时候可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行完函数余下的部分,并跳出函数回到函数被调用的位置。
    在这里插入图片描述
  7. 执行到光标处:该按钮可以迅速使程序运行到光标处,与执行到断点处按钮功能类似。
    在这里插入图片描述
  8. 观察窗口,MDK5提供2个观察窗口(下拉选择),该按钮按下则弹出一个显示变量的窗口。输入想观察的变量或表达式,即可查看其值,是很常用的调试窗口。
    在这里插入图片描述
  9. 串口打印窗口,MDK5提供4个串口打印窗口。按下该按钮,则弹出一个类似串口调试助手界面的窗口,用来显示从串口打印出来的内容。
    在这里插入图片描述
  10. 逻辑分析窗口,该图标下面有3个选项,一般用第一个,也就是逻辑分析窗口。通过SETUP按钮新建一些IO口,于是可以观察这些IO的电平变化情况,并以多种形式显示出来,比较直观。
    在这里插入图片描述
    四、仿真自带的串口打印窗口使用方法,可以执行程序里面串口需要打印的内容:
    4.1 使用方法:在程序里面添加了需要打印的内容,【如:printf()】
    在这里插入图片描述
    4.2 进入debug界面,在debug界面点击串口窗口
    在这里插入图片描述
    五、debug中断点功能介绍:
    5.1 断点功能共2~5之间,4个按钮。
    在这里插入图片描述
    分别功能为:
    在这里插入图片描述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

keil5仿真相关配置,解决相关bug 的相关文章

随机推荐

  • Turtlebot3 Gazebo仿真环境下深度强化学习DQN开发环境构建

    1 Anaconda2 安装 2 Tensorflow安装 ubuntu18系统anaconda安装tensorflow qq 39429669的博客 CSDN博客 3 下载并编译源码 本文先使用github中开源的机器学习的源码进行学习
  • Python数据挖掘 - 第一部分

    文章目录 第一章 数据挖掘库的安装第二章 Matplotlib2 1 matplotlib简介2 2 折线图 xff08 plot xff09 与基础绘图功能2 3 散点图 xff08 scatter xff09 2 4 柱状图 xff08
  • TortoiseGit解决冲突

    TortoiseGit解决冲突 问题概述场景重现解决冲突 问题概述 在项目实施过程中 xff0c 多人维护同一份文件或代码时经常会在本地Commit完再从远程仓库Pull时出现冲突 这时需要保留自己的内容 xff0c 同时也保留远程仓库原来
  • axios的简单封装

    前言 在每次使用原装的axios发送 http请求时 如果需要token验证 xff0c 则都需要创建拦截器 xff0c 添加 39 token 39 请求头 xff0c 或者在config中具体的请求体中添加 xff0c 是一个非常麻烦的
  • 【操作系统】RT-Thread 入门学习

    一 嵌入式操作系统 1 1 软实时与硬实时 强实时操作系统 xff1a 严格限定在规定时间内完成任务 xff0c 否则就会导致灾难性的发生 xff0c 例如导弹拦截系统 汽车引擎系统等 弱实时操作系统 xff1a 可以允许偶尔出现一定的时间
  • windows10安装NVIDIA显卡驱动+cuda10.0教程

    windows10安装NVIDIA显卡驱动 43 cuda10 0教程 1 安装个鲁大师2 确定本机是否支持GPU加速3 更换至匹配的显卡驱动4 下载和安装cuda和cudnn5 验证6 游戏加速7 分享个漂亮的壁纸 1 安装个鲁大师 查看
  • 生成小批量数据集

    shell脚本随机筛选一个目录下后缀为2 4 6 8的 mp4文件 span class token function find span mnt sdb dataset 20181217 RX5 zheA5MV46 name mp4 sp
  • mapreduce二次排序案例

    为什么需要二次排序 在MapReduce操作时 xff0c 我们知道传递的 lt key value gt 会按照key的大小进行排序 xff0c 最后输出的结果是按照key排过序的 有的时候我们在key排序的基础上 xff0c 对valu
  • 浏览器缓存致使修改的样式不生效,解决方式

    我们使用缓存的资源越多 xff0c 网站的响应能力和性能就会越好 为了优化缓存 xff0c 过期时间设置得尽量长是一种很好的策略 对于定期或者频繁更新的资源 xff0c 这么做是比较稳妥的 xff0c 但是对于那些长期不更新的资源会有点问题
  • 数据清洗的步骤

    1 数据清洗的基本过程 S1 xff1a 数据分析 在数据清洗之前 xff0c 对数据分析 xff0c 对数据质量问题有更为详细的了解 xff0c 从而选择更好的清洗方案 S2 xff1a 定义清洗规则 通过数据分析 xff0c 掌握了数据
  • html前端之css绘制形状

    纯CSS绘制的图形 xff0c 有最简单的矩形 圆形和三角形 xff0c 也有各种常见的多边形 xff0c 甚至是阴阳太极和网站小图标 xff0c 非常强大 Square 正方形 square width 100px height 100p
  • 解决docker 运行standard_init_linux.go:219: exec user process caused: exec format error报错

    使用mac M1 build image 在linux上运行会报standard init linux go 219 exec user process caused exec format error 这个问题出现的主要原因是golang
  • 解决upstream prematurely closed connection while reading response header from upstream问题(nginx)

    问题描述 xff1a 使用docker部署了前端和nginx 前端有需求要使用websocket 所以在nginx中配置了websocket转发 xff0c 配置如图 xff1a server listen 80 server name 1
  • 解决Cannot start service XX: OCI runtime create failed: container_linux.go:348问题

    问题描述 xff1a 最近在做一个国际化方案的时候 xff0c 发现使用envsubst动态更改nginx模板中变量会报错 xff0c 但是直接在镜像执行envsubst的命令是没有问题的 ERROR for doge viewer dr
  • nginx location使用问题记录

    问题描述 想通过nginx实现一个功能 xff1a 当前缀为 app aaa或者是 app bbb的时候 xff0c 将其转发到front aaa或者front bbb xff0c nginx配置如下 xff1a span class to
  • 使用auto-gpt来写一篇技术文章(如何部署autogpt+遇到的问题+如何使用)

    文章目录 前言一 autogpt本地部署1 clone代码2 启动虚拟环境3 运行项目 二 使用aotogpt生成文章1 人设描述2 设置目标3 文章的生成过程4 文章的生成内容 总结 前言 最近AI技术的发展非常迅猛 xff0c 尤其是和
  • 如何使用bingChat(使用方法+遇到的问题+感受)

    文章目录 前言一 如何使用Bing Chat1 下载new Bing2 重新注册一个microsoft xff08 此步骤可略过 xff0c 如有问题再操作此步骤 xff09 3 使用 Bing Chat 二 常见问题1 Chat mode
  • MapReduce编程模型

    如图所示 xff0c 上图就是mapreduce的编程模型 MapReduce的流程分为5个阶段 xff1a 输入文件 gt Map gt 中间文件 gt Reduce阶段 gt 输出文件 步骤1 启动子进程 xff1a 用户程序会启动两类
  • 安装mysql8.0 https://dl.bintray.com/ 网址被禁用问题

    安装mysql8 0下载不了https dl bintray com 的文件 需要自己下载boost 1 70 0 tar gz文件 xff0c 亲测可用 链接 xff1a https pan baidu com s 1qyeQ6Qfexg
  • keil5仿真相关配置,解决相关bug

    一 keil5仿真时 xff0c 添加动态数值至观察窗口 xff08 watch X xff09 xff0c 但是值不变化或提示错误 原因分析 xff1a 1 1 未将观察的变量配置为全局变量 xff0c 需要将观察的变量配置为全局变量 x