keil软件调试(Debug)仿真教程(软件调试和硬件调试的区别)及常用调试按键详解

文章目录

  • 前言
  • 一、什么是软件调试(Debug),有什么用?
  • 二、keil Debug常用按钮
  • 总结


前言

单片机的调试分为两种,一种是使用软件模拟调试,第二种是硬件调试,两种调试方式各有不同,软件模拟调试有误差,而硬件调试,借用仿真器调试是嵌入式开发中常用方法。
keil软件调试(Debug)仿真教程(软件调试和硬件调试的区别)及常用调试按键详解_第1张图片

一、什么是软件调试(Debug),有什么用?

单片机的调试分为两种,一种是使用软件模拟调试,用开发单片机程序的软件(IDE)去模拟单片机的指令执行,并模拟单片机片内资源,从而实现调试的目的,但是计算机无法准确的模拟单片机的时序,不可能像真正的单片机运行环境那样执行的指令在同样一个时间能完成(往往要完成的比单片机慢)。
为了解决软件调试的问题
第二种是硬件调试,硬件调试其实也需要计算机软件的配合,大致过程是这样的:计算机软件把编译好的程序通过串行口、并行口或者USB口传输到硬件调试设备中(这个设备叫仿真器),仿真器仿真全部的单片机资源(所有的单片机接口,并且有真实的引脚输出),仿真器可以接入实际的电路中,然后与单片机一样执行。
仿真的作用:
仿真器也会返回单片机内部内存与时序等情况给计算机的辅助软件,这样 就可以在软件里看到真实的执行情况。不仅如此,还可以通过计算机断的软件实现单步、全速、运行到光标的常规调试手段。

二、keil Debug常用按钮

在这里插入图片描述
单击窗口上的调试按钮快捷图标(上图红色框内图标),进入到软件模拟调试模式。
在这里插入图片描述
RST上图红色框内图标)将程序复位到主函数的最开始处,准备重新运行程序。
在这里插入图片描述
全速运行(上图红色框内图标),运行程序时中间不停止。
在这里插入图片描述
停止全速运行(上图红色框内图标),全速运行程序时激活该按钮,用来停止正全速运行的程序。
在这里插入图片描述
进入子函数内部(上图红色框内图标)。
在这里插入图片描述
单步执行代码(上图红色框内图标),它不会进入子函数内部,可直接跳过函数。
在这里插入图片描述
跳出当前进入的函数(上图红色框内图标),只有进入子函数内部该按钮才被激活。
在这里插入图片描述
程序直接运行至当前光标所在行(上图红色框内图标)。
在这里插入图片描述
keil软件调试(Debug)仿真教程(软件调试和硬件调试的区别)及常用调试按键详解_第2张图片

显示/隐藏编译窗口(上图红色框内图标),可以查看每句 C 语言编译后所对应的汇编代码。

keil软件调试(Debug)仿真教程(软件调试和硬件调试的区别)及常用调试按键详解_第3张图片
显示/隐藏变量观察窗口,可以查看各个变量值的变化状态。

总结

在软件调试模式下,我们可以设置断点、单步、全速、进入某个函数内部运行程序,同时还可以查看变量变化过程、模拟硬件 IO 口电平状态变化、查看代码执行时间等。

你可能感兴趣的:(51单片机,单片机,stm32,嵌入式硬件)