keil中 debug调试问题

这篇具有很好参考价值的文章主要介绍了keil中 debug调试问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

刚学debug时,出现了许多错误。选择将这些问题总结一下

1.调试方法

 2.仿真中必须进行的操作,也是各种问题的原因

(1)在MDK5中的逻辑分析窗口输入GPIO口时,出现Unknown signal的问题

(2)仿真无法连续运行,并且也运行不到主函数

选中Debug选项,Dialog DLL及其Parameter选项设置不正确,这里设置为DCM.DLL-pCM3

keil中 debug调试问题

 到Device选项查看芯片类型,复制过去就行

keil中 debug调试问题

keil中 debug调试问题

如果要用硬件仿真的话,改成下面这栏配置

keil中 debug调试问题

 

到这一步点击ok,重新仿真就可以了。 

随后再次点击仿真按钮,输入PORTX.i,成功识别到信号。

【一定要注意MDK5目前的版本,不支持F4、F7芯片。同样也不支持纯软件的串口空闲帧中断测试】

试了一晚上结果告诉我不可以,心态直接爆炸

3.没有开发板时,用虚拟串口进行虚拟串口软件仿真

用到了虚拟串口软件,网上很容易找到。

keil中 debug调试问题

 第一步,打开串口调试助手

keil中 debug调试问题

 第二步,开始debug,开始软件仿真。

keil中 debug调试问题

在命令窗口的输入行中分别输入下面两条命令,按回车键完成输入

将虚拟串口com7与虚拟开发板进行绑定。

MODE COM7 115200,0,8,1
ASSIGN COM7 <S1IN> S1OUT

 然后输入内容,发送到虚拟开发版,串口窗口就能打印接受到的内容。

keil中 debug调试问题

指令说明: 1、MODE COM2 9600,0,8,1 设置串口1。波特率为9 600,无校验位,8位数据,1位停止位。 MODE命令的作用是设置被绑定计算机串口的参数。 基本使用方式为:MODE COMx baudrate, parity, databits, stopbits 其中: COMx(x = 1,2,…)代表计算机的串口号; baudrate代表串口的波特率;parity代表校验方式; databits代表数据位长度; stopbits代表停止位长度。

2、ASSIGN COM2 < S1IN > S1OUT
命令2是将计算机的串口2绑定到单片机的串口1
COMx代表计算机的串口,可以是COM1、COM2、COM3或其他;
inreg和outreg代表单片机的串口。对于只有一个串口的普通单片机,即SIN和SOUT;对于有两个或者多个串口的单片机,即SnIN和SnOUT(n=0,1,…即单片机的串口号)。
例如:ASSIGN COM2 < SIN > SOUT
将计算机的串口2绑定到单片机的串口(针对只有一个串口的单片机)。
ASSIGN COM2 < S1IN > S1OUT
将计算机的串口2绑定到单片机的串口1(针对有多个串口的单片机,注意串口号的位置)。
需要注意的是,参数的括号是不能省略的,而outreg则是没有括号的。

 文章来源地址https://www.toymoban.com/news/detail-446938.html

到了这里,关于keil中 debug调试问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • pycharm的debug调试以及异常,Python 中错误的处理方式

    在b站看了详细的视频教程,做一个系统的总结。第一次写关于pycharm的debug调试以及python代码运行报错处理的帖子,错误地方请大家指出。 作为一个非科班出生的学生,平时看代码的时候特别的难懂,这时候对代码debug单步调试可以很好的看代码的具体信息。让我们能够更加清

    2023年04月19日
    浏览(44)
  • [WinError 10038] 在一个非套接字上尝试了一个操作,这是许多编程人员经常遇到的错误之一。本文将解释什么是套接字,为什么会出现 WinError 1...

    [WinError 10038] 在一个非套接字上尝试了一个操作,这是许多编程人员经常遇到的错误之一。本文将解释什么是套接字,为什么会出现 WinError 10038 错误以及如何解决该错误。 在计算机网络编程中,套接字是一个端点,用于发送和接收网络数据。它可以是客户端或服务器端,并与

    2024年02月16日
    浏览(59)
  • IDEA中快速定位源代码问题(Debug调试)

    视频讲解参考:https://www.bilibili.com/video/BV1EQ4y1y74Y?vd_source=67ae2f0684b162aef8c3f8826109285e 进入debug界面后,以上五个图标功能: 1.回到当前断点所在界面 2.从当前断点处逐行执行(碰到自己写的方法不会进入) 3.逐行执行(碰到自己写的方法会进入) 4.回退 5.运行到光标处

    2024年03月19日
    浏览(67)
  • VScode 调试python程序,debug状态闪断问题的解决方法

    0. Few words 之前一直在VSCode中debug C++和Python的程序没出过闪断的问题,但是最近在另一台电脑上debug,同样的方法,设置launch.json和CMakeList加debug状态等等操作,如我另一篇blog写的一样,可以点这里查看。 但是,就是同样的方法,debug C++的程序没问题,就是debug python的程序就会

    2024年02月10日
    浏览(44)
  • 在VS code中调试代码出现“launch: program ‘c: \build\Debug\outDebug‘ does not exist”的解决方法

    在vs code开发代码的途中,我们可能会在运行或调试的途中碰到“launch: program ‘c: buildDebugoutDebug‘ does not exist”的问题,如图所示。  这里我们按照提示打开“launch.json” 经过观察,我发现问题应当出现在program里 这里定位到了代码的具体位置,但是这个位置不够准确。 如

    2024年02月07日
    浏览(37)
  • STM32 keil烧录出现program algorithm出错问题

    近期使用工程代码进行烧录的时候出现program algorithm问题, Cannot Load Flash Programming Algorithm 针对此问题的解决方案做个记录。 情景复现: 这里报错我们看到是 No Algorithm found for:08000000H - 08006647H 尝试解决: 这里初始烧录算法是没有的,需要我们进行手动添加,我使用的板子是

    2024年02月08日
    浏览(61)
  • 【debug】OpenCV出现问题:undefined reference to ‘cv::Mat::Mat()‘

    参考:动手学ROS2 分析原因: undefined reference to \\\'cv::Mat::Mat()\\\' 原因在于g++找不到库文件,解决方法就是我们帮助它定位到库文件的位置,并通过-L参数指定库目录,-l(小写L)指定库的名字。 解决方法: 在执行命令时添加后缀参数

    2024年02月08日
    浏览(44)
  • STM32在Keil中使用串口助手打印中文字符出现乱码问题

     问题如下,中文字符显示乱码,但数字正常。 通常这种在串口助手打印出现乱码情况: 无非是 波特率设置错误 ,不对应。就像一个滴水的水龙头,水滴进一个循环开合的容器,双方速率不能很好匹配,一定会出现水滴不能完全滴进容器,或者完全滴进或者完全滴不进的情

    2024年02月09日
    浏览(45)
  • keil5编译中出现的错误(6):FCARM - Output Name not specified, please check ‘Options for Target - Utilities‘

    在导入其他文件进入工程中会出现这个错误:FCARM - Output Name not specified, please check \\\'Options for Target - Utilities\\\' 我在网上找了好多个博主的文章,试了好几个方法,花了几个小时一直解决不了,最后才发现是导入时导入文件的格式选错了。。。 本文将列出报这个错误的两个常见情

    2024年01月24日
    浏览(48)
  • 解决keil5.38编译stm32报四个错误问题

     以上为错误截图,一下为错误信息 Start/core_cm3.c(445): error: non-ASM statement in naked function is not supported   uint32_t result=0;   ^ Start/core_cm3.c(442): note: attribute is here uint32_t __get_PSP(void) __attribute__( ( naked ) );                                           ^ Start/core_cm3.c(465): error: paramet

    2024年02月08日
    浏览(60)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包