0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于Keil的软件仿真和硬件仿真步骤

GReq_mcu168 来源:博客园 作者:张凌001 2021-05-03 10:04 次阅读

一、软件仿真

Keil有很强大的软件仿真功能,通过软件仿真可以发现很多将要出现的问题,Keil的仿真可以查看很多硬件相关的寄存器,通过观察这些寄存器值的变化可以知道代码有没有正常运行。这样可以避免频繁下载程序,延长单片机Flash寿命。

开始仿真之前,先配置一些选项。

在工程设置里设置好芯片型号和晶振频率。

第一步:

9322e868-9e2c-11eb-8b86-12bb97331649.png

第二步:

在“Debug”选项卡中选择“Use Simulator”,表示使用软件仿真;选择“Run to main()”则表示跳过汇编代码,直接跳转到main函数开始仿真。设置下面的“Dialog DLL”项为“DARMSTM.DLL”和“TARMSTM.DLL”;parameter项为“-pSTM32F103C8”,用于设置支持STM32F103C8的软硬件仿真。

932bcdfc-9e2c-11eb-8b86-12bb97331649.png

第三步:

点击开始仿真,这个时候会多出来一个工具条,就是Debug工具条。

9337f7a8-9e2c-11eb-8b86-12bb97331649.png

1:复位,其功能等同于硬件上按复位按钮,相当于实现了一次硬复位。按下该按钮后,代码会重新从头开始执行。

2:执行到断点处,按按钮用来快速执行到断点处,有时候并不需要观看每步时怎么执行的,而是想快速执行到程序的某个地方看结果,这个按钮就可以实现这样的功能,前提是已在查看的地方设置了断点。3:停止运行,此按钮在程序一直执行的时候变为有效,可以使程序停止下来进入到单步调试状态。4:执行进去,该按钮用来实现执行到某个函数里面去的功能,在没有函数的情况下等同于执行过去按钮。

5:执行过去,在碰到有函数的地方,通过该按钮就可以单步执行过这个函数,而不进入这个函数单步执行。6:执行出去,该按钮是进入了函数单步调试的时候,有时候可能不必再执行该函数的剩余部分了,通过该按钮就直接一步执行完函数余下的部分,并跳出函数回到函数被调用的位置。7:执行到光标处,该按钮可以迅速使程序运行到光标处,与执行到断点处按钮功能类似。

8:汇编窗口,通过该按钮可以查看汇编代码,这对分析程序很有用。9:堆栈局部变量窗口,通过该按钮可以显示Call Stack+Locals窗口,显示当前函数的局部变量及其值,方便查看。10:观察窗口,MDK5提供2个观察窗口(下拉选择),该按钮按下则弹出一个显示变量的窗口。输入想观察的变量或表达式,即可查看其值,是很常用的调试窗口。

11:内存查看窗口,MDK5提供4个内存查看窗口,按下按钮,则弹出一个内存查看窗口,可以在里面输入要查看的内存地址,然后观察这一片内存的变化情况。12:串口打印窗口,MDK5提供4个串口打印窗口。按下该按钮,则弹出一个类似串口调试助手界面的窗口,用来显示从串口打印出来的内容。13:逻辑分析窗口,该图标下面有3个选项,一般用第一个,也就是逻辑分析窗口。通过SETUP按钮新建一些IO口,于是可以观察这些IO的电平变化情况,并以多种形式显示出来,比较直观。14:系统查看窗口,该按钮可以提供各种外设寄存器的查看窗口(通过下拉选择),选择对应外设即可调出该外设的相关寄存器表,并显示这些寄存器的值,方便查看设置是否正确。

二、硬件仿真

硬件仿真则是程序下载到单片机中,进行的仿真,是程序实际在单片机中运行的情况。

93436d2c-9e2c-11eb-8b86-12bb97331649.png

需要选择后面那个选项,然后在下拉单里选择自己的仿真器。然后后面步骤和软件仿真一样。

注:要在逻辑硬件仿真里使用逻辑分析仪之类的工具,要开“Trace”

934d1340-9e2c-11eb-8b86-12bb97331649.png

935bfcb6-9e2c-11eb-8b86-12bb97331649.png

原文标题:Keil的软件仿真和硬件仿真

文章出处:【微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 仿真
    +关注

    关注

    50

    文章

    3884

    浏览量

    132372
  • keil
    +关注

    关注

    68

    文章

    1196

    浏览量

    165571

原文标题:Keil的软件仿真和硬件仿真

文章出处:【微信号:mcu168,微信公众号:硬件攻城狮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    请问使用keil软件仿真功能不能对stm32的SPI进行仿真

    最近有个项目,使用SPI接口对某芯片进行通信,已经没有问题,可以进行正常读写。最近闲来无聊想使用keil软件仿真功能即simulator观察SPI时序(使用示波器直接观察管脚波形就另当别论),SPI
    发表于 05-08 08:29

    电路仿真软件如何使用 电路仿真软件有哪些好用

    电路仿真软件的使用方法,并列举一些常用的好用软件。 使用电路仿真软件的基本步骤如下: 创建电路图
    的头像 发表于 05-04 10:51 682次阅读

    电路仿真软件有哪些类型 电路仿真接线app软件哪个好

    电路仿真软件有以下几个类型:电子数字仿真软件、电子模拟仿真软件、电源电气
    的头像 发表于 05-04 10:49 744次阅读

    电路仿真软件如何使用 电路仿真软件操作流程

    电路仿真软件是一种用于设计、测试和验证电路的工具,它可以模拟实际电路的行为和性能。本文将详细介绍电路仿真软件的使用流程,包括软件的安装、电路
    的头像 发表于 05-04 10:39 492次阅读

    STM32CUBE生成的工程如何进行KEIL软件仿真

    通过STM32CUBE生成的工程如何进行KEIL软件仿真有异常,做了很多的尝试,没能成功 1、根据网上的资料,进行魔术棒的相关修改,如下图 2、能顺利进入仿真界面,但是全速
    发表于 03-13 06:04

    两种仿真软件仿真结果有差异吗

    两种仿真软件仿真结果在某些情况下可能存在差异。具体来说,仿真软件是通过模拟现实世界中的某个系统或过程来产生结果的工具。不同的
    的头像 发表于 12-28 15:37 574次阅读

    用proteus和keil实现串口通信仿真

    前面一课讲述了串行口通信的威廉希尔官方网站 原理,本课通过安装虚拟串口,用proteus和keil实现串口通信仿真
    的头像 发表于 11-27 16:42 2394次阅读
    用proteus和<b class='flag-5'>keil</b>实现串口通信<b class='flag-5'>仿真</b>

    PCB仿真软件有哪些?PCB仿真软件是如何进行LAYOUT仿真的?

    PCB仿真软件有哪些?PCB仿真软件是如何进行LAYOUT仿真的? PCB仿真
    的头像 发表于 11-24 14:51 7406次阅读

    keil 4可以硬件仿真51单片机吗?

    keil 4可以硬件仿真51单片机吗?具体怎么设置
    发表于 11-08 06:51

    仿真系统软件的架构是什么

    仿真软件的架构可以包括以下几个部分: 硬件驱动部分:负责驱动硬件,向上一层提供底层硬件的操作接口。仿真
    的头像 发表于 10-16 16:56 572次阅读

    单片机Proteus仿真及案例分析

    软件进行单片机的设计和仿真步骤如下:(1)用ISIS软件设计应用系统的硬件电路(2)用Keil
    发表于 09-22 07:06

    硬件仿真开课啦!国产EDA威廉希尔官方网站 公开课等你来

    面对复杂的设计代码,确保其准确性至关重要,功能验证就是非常重要的一环。通常使用的验证方法包括软件仿真硬件仿真和原型验证等。虽然软件
    的头像 发表于 09-13 08:28 453次阅读
    <b class='flag-5'>硬件</b><b class='flag-5'>仿真</b>开课啦!国产EDA威廉希尔官方网站
公开课等你来

    如何创建51单片机KEIL工程步骤

    多种文件格式和数据交换方式;可支持单片机程序的在线仿真,或通过仿真器进行实物仿真,大大方便开发人员的工作。 其中,我们常用的Keil软件有两
    的头像 发表于 09-11 10:49 1853次阅读
    如何创建51单片机<b class='flag-5'>KEIL</b>工程<b class='flag-5'>步骤</b>

    软件仿真硬件仿真、原型验证是如何工作的?

    面对复杂的设计代码,我们如何确保其准确性?功能验证就是这场战斗的关键过程。工程师们通常使用的验证方法包括软件仿真硬件仿真和原型验证等。这些不同的验证方法都有各自的优点,也有各自的不足
    的头像 发表于 06-11 14:24 566次阅读
    <b class='flag-5'>软件</b><b class='flag-5'>仿真</b>、<b class='flag-5'>硬件</b><b class='flag-5'>仿真</b>、原型验证是如何工作的?

    讲讲仿真软件的文件导入

    仿真软件识别导入的设计文档是有区别的,实际的使用经历,ADS只是用于搭建Channel通道仿真,那本文以Cadence的Sigrity和Ansys的SIwave为例,讲讲仿真
    的头像 发表于 06-10 10:15 2269次阅读
    讲讲<b class='flag-5'>仿真</b><b class='flag-5'>软件</b>的文件导入