Keil软件仿真的使用

一、软件的初始化设置

        初始设置可以按照下图,这里我使用的是STM32F103C8T6,所以单片机型号为STM32F103C8,这个设置在Debug目录下。然后进行时钟的设置,我们板上晶振为8M,这里将时钟改为8.

或许有人想问如果是别的型号单片机如何找这些参数呢?如下图,点击文件,选Device Database.....

 

我这里可以选两种,一种为51系列的,我们直接选第一个,确定。 

进来后可以发现这里面还是可以选很多型号的,找到我们的STM32F103C8,将下面的框拉到底,如下:

  二、调试界面的介绍

1.菜单栏和工具栏

复位按钮点击这个按钮会使目标硬件复位,功能等同于硬件上的复位按钮。

全速运行/继续执行:开始或继续执行程序,用来快速执行到断点处。如果程序已经停在一个断点上,点击这个按钮将继续执行程序直到遇到下一个断点或程序结束。也就是说如果没有断点,程序会一直运行。

停止执行:停止程序执行。这个按钮将中止当前正在运行的程序。

单步执行:执行程序中的下一行代码。如果当前行调用了函数,将进入该函数内部。

单行运行:执行下一行代码,但是不进入函数内部。如果当前行调用了函数,将执行整个函数,然后停在下一行。

单步退出:当运行在函数内部时,这个按钮将执行完当前函数的剩余代码,并停在返回点之后的下一行。

运行到光标位置 :程序执行将继续进行,直到到达当前代码编辑器中光标所在的行。

跳转PC指针:这个按钮允许你在调用栈中上移一级,这对于检查函数调用的历史和来龙去脉很有用

2.主界面窗口设置

Command窗口:它显示与调试会话相关的信息,包括用户输入的调试命令和由调试器返回的消息。它允许用户直接输入命令,例如管理断点、控制程序执行等。

汇编窗口:显示当前执行的汇编代码,与源代码视图同步,有助于理解C/C++代码是如何转换为处理器指令的,以及在调试时实际执行的指令。

符号窗口:列出了所有编译后的符号,包括函数、变量和类型定义。这个窗口让你可以确认是否有符号未定义或检查变量的地址和值。

寄存器窗口:显示处理器内核的寄存器值。有助于理解程序的当前状态和执行流程,尤其是在硬件层面的调试中。

回调局部变量:当调试时停留在断点时,这里会显示函数的调用关系,以及压进的变量值,可以在这里看到函数的调用关系和传递给函数的参数值。这个一般和断点配合,反推异常调用以及查看局部变量,无需使用变量查看串口。

变量显示:用于查看单片机中某个变量的值,一般多用于查看全局变量以及外设寄存器数值、表达式显示变量,也可直接操作变量值。

内存查看窗口:显示内存地址以及地址处内存的数据,一般可查看变量以及寄存器数据、函数地址等。可以在里面输入你要查看的内存地址,然后观察这一片内存的变化情况。

逻辑分析窗口 :按下该按钮会弹出一个逻辑分析窗口, 通过 SETUP 按钮新建一些 IO 口,就可以观察这些 IO 口的电平变化情况 ,以多种形式显示出来,比较直观。

虚拟串口窗口:该按钮按下,会弹出一个类似串口调试助手界面的窗口,用来显示从串口打印出来的内容。  需要注意的是在硬件调试时无法使用,只能从硬件上获取串口信息。

三、进入调试

四、keil仿真常用的操作

1.  查看某变量的值:

或者点击Watch窗口调出显示栏,如下,在Watch中: 

这两种都可以查看,进去后如下:

运行一轮后,我们发现a的值加1了,如下图:

当然,这还可以查看数组等内容都可以,如下:

2.查看IO状态或控制IO输出

当然,如果你设置的为输入模式,还可以通过在相应IOI口框打勾来控制输入电平进行调试。

3.波形输出

假如要查看PC13,可以输入PORTC.13回车。

                  

关闭后,点击运行就可以看见波形输出了。

 注:如果运行后没波形而停止后才显示波形,解决方法:

还有一些其他功能这里不再一一叙述了,如下:

  • 29
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值