当前位置:懂科普 >

IT科技

> keil怎么软件仿真调试

keil怎么软件仿真调试

软件仿真:这时候是在你的计算机中有一个虚拟的单片机,代码在这个虚拟的单片机中运行。由计算机模拟单片机的运行过程,给出运行的结果。这个结果与实际运行的结果绝大多数情况下没有差别,所以可以仿真。但仿真与实际有时候也有差别,特别是有

在Keil编写好的代码,通过编译后,下载到单片机。我们只能看到两种结果:第一实验成功,展现出我们想要的效果;第二实验不成功,什么效果都没有看到。失败的原因是什么,通过硬件测试,我们无法看到代码在单片机内部里面如何运行、变量是如何传递、变量的变化情况等等。Keil软件里面是提供了软件仿真调试功能。下面由我带领大家来认识一下软件仿真。

keil怎么软件仿真调试

材料/工具

Keil uVision2

1、程序添加到工程中,编译通过。 2、进入软件仿真模式。 3、在外围设备peripherals一栏,选择相应端口。

方法

第一步:确认写好的程序能通过编译。然后点击“Debug”→"Start/Stop DebugSession"进入调试模式。如下图操作所示:

这是配置PLL的,需要从PLL寄存器获取PLL是否稳定的状态标志。 而软件仿真的时候这个标志是没人给置位的。 解决办法是手工将RCC_CR_HSERDY置位,或者手工跳过这一段代码(例如Run to cursor)。

keil怎么软件仿真调试 第2张

第二步:调出观察窗口(用来设置要观察变量的设置窗口);点击“View”→"Watch&Call Stack Window"。如下图操所示:

1. project -> option for target xxx -> debug -> 勾选左边的 use simulator -> OK. 2. ctrl + F5 启动 debug, 中间应有 logic analyzer, 如果没有,view -> analyse windows -> logic analyzer. 3. 在logic analyzer中点set up, 再点右上角的

keil怎么软件仿真调试 第3张

第三步:弹出的“Watch “窗口,如下图所示:

如何在KEIL 下使用仿真器 1. 在KEIL 下使用仿真器,首先设置软件右击Target1,选择Option for Target ‘Target 1’.如下: 2. 在Option for Target ‘Target 1’选项中点选DEBUG,如下: 3. 在DEBUG下选择USE KEIL Monitor—51 Driver ,其他选择项

keil怎么软件仿真调试 第4张

第四步:在弹出的”Watch“窗口中设置要要观察的变量,点击”Watch#1“→双击"type F2 to edit"→输入要观察的变量名,在这里我要观察的是P11,具体操作如下:

把keil编译产生的HEX文件导入Proteus里面的单片机中,就可以仿真运行了!新手还是玩板子好点

keil怎么软件仿真调试 第5张

第五步:点击”单步调试“按钮,点击一次,同时观察”Watch“窗口P11变量的变化情况。如下图所示:

Keil 与proteus 连接调试 Proteus 与Keil 联机 keil c51 v7.50 软件和 proteus 6.7 SP3 软件,分别进行安装。安装完毕以后进行如下置: 1、 系统安装上TCP/IP 协议 2 、把proteus 安装目录下 VDM51.dll ( C:Program FilesLabcenter Electroni

keil怎么软件仿真调试 第6张

第六步:再一次点击”单步调试“按钮。同时观察”Watch“窗口P11变量的变化情况。如下图所示:

进工程设置,debug,右边选use silicon……, 就那个地方有个setting, 点进去勾选第二项USB debug ……。再确认,再调试应该就好了。

keil怎么软件仿真调试 第7张

扩展阅读,以下内容您可能还感兴趣。

Keil uVision4在进行软件仿真时,能直接修改程序么?

不能。。。。。。。。。。。。。。。。。。你可以修改,但是修改之后不能更新,也就是说你只能修改已经运行的程序。未运行的不能修改。。而且你改了之后也会使调试信息不一致,比如说断点会移位。。等等。

关于keil 软件仿真

LZ这样的程序,出现这样的状况是完全正常的。因为这里的P1^百0完全没有定义。

LZ需要明确P0的地址是0x80,P1的地址是0x90

如果想在P0口上度keil软件仿真,那么版需要这样写:

sfr P0 = 0x80;

sbit P0_1 = 0x80;

如果想在P1口上keil软件仿真,那么需要这样写:

sfr P1 = 0x90;

sbit P1_1 = 0x90;

另外变量或常量的名权称最好是“顾名思义”的,这样读的时候比较好读一些。

mdk5软件仿真,pwm的例程,怎么仿真看到输出的波形?

这个很简单,Keil的逻辑仪,是基于Keil自带zd的仿真器来运行的。 而Keil自带的仿真器,是基于传统的51单片机来运行的,传统的51就是我们课本上讲的,只有串口,两个定时器,两个外中断一共五个设备,没有其他设备。 你用的STC单片机更多追问追答追问我用的stm32但是那个逻辑仪我不太会用它不是要setup一个io口吗,但是我填PB5、PORTB.5什么的都不对都提示unknown signal那应该填什么呢?求教(ಥ_ಥ)但是那个逻辑仪我不太会用

单片机89c51,帮我编个C程序,顺便说一下用KeiluVision3仿真调试软件的调试步骤

#include<reg51.h>

sbit p20=P2^0;

sbit p21=P2^1;

sbit p22=P2^2;

sbit p25=P2^5;

sbit p26=P2^6;

typedef unsigned char uint8;

code uint8 num[]={0xc0,0xf9,0xa4,0xb0,0x99,

0x92,0x82,0xf8,0x80,0x90,};

uint8 count,shi,ge,i;

delay()

{

uint8 i=1000;

while(i--);

}

display()

{

shi=count/10;

ge=count%10;

p25=0;

P0=num[shi];

p25=1;

p26=0;

P0=num[ge];

p26=1;

}

main()

{

while(1)

{

7a64e78988e69d8331333264663139if(p20==0)

{

delay();

if(p20==0)

{

count++;

}

}

if(p21==0)

{

delay();

if(p21==0)

{

count--;

}

}

if(p22==0)

{

delay();

if(p22==0)

{

count=0;

}

}

display();

}

}

求Keil软件编译仿真的步骤

点击工程(百project)->new project(新建工程),建立存在度E盘或其他盘里——>保存,知选择工程所道用芯片(专atmel 或其他)——>确定,target1, file——>new file-.text->保存(.c格式),target1右键,再左键add……选择刚才建的文件,就属可以在里面写了

标签: 软件 仿真 keil
  • 文章版权属于文章作者所有,转载请注明 https://dongkepu.com/itkeji/de9wyy.html