proteus与keil联调

准备:

proteus 7(建议安装7.5版,低版本就不推荐安装了,因为proteus不能向上兼容)

keil uvision3

vdmagdi(proteus7和proteus6的联调区别就是不再提供现成vdm51.dll文件)

以上软件都可以在网上搜,在此就不提供链接了。

步骤:

安装proteus、keil和vdmagdi。

在proteus安装目录中找到vdm51.dll,复制到keil/bin下。

keil设置:

1.打开一个项目和文件,在左边目录树中右击,点击"options for target"target1",点击output选项,将creat hex勾上,选择hex生成的路径和文件名。

2.点击debug选项,选中右边的use,在下拉菜单中选择proteus vsm simulator(如果没有该选项则要确定有没有安装vdmagdi和将vdm51.dll放入keil/bin下,再重启keil,有些教程要打开keil目录下的tools.ini,在[C51] 栏目下加入 TDRV3=BIN\VDM51.DLL (“Proteus VSM Monitor-51 Driver” ) ,其中“TDRV3” 中的 “3”要根据实际情况写,不要和原来的重复,如果还是没有该选项的话可以试试上述方法),选择seting,如果同一台机IP 名为127.0.0.1,如不是同一台机则填另一 台的 IP地址。端口号一定为8000 。将run to main勾上。

proteus设置:

1,在 proteus 的 debug 菜单中选中 use remote debug monitor 。

联调设置就完成了,下面以一个简单的例子演示一次proteus与keil的联调。

51单片机最小系统,在proteus中画好下图:

打开keil,新建一个项目,新建文件步骤略,不懂的自己百度。

写入c程序,程序如下:

#include

sbit L1=P1^0;

void delay02s(void)               //延时0.2秒子程序

{

unsigned char i,j,k;

for(i=20;i>0;i–)

for(j=20;j>0;j–)

for(k=248;k>0;k–);

}

void main(void)

{

while(1)

{

L1=0;

delay02s();

L1=1;

delay02s();

}

}

编译后调试,再运行。如果在proteus中看到灯亮了,恭喜你,proteus与keil联调成功,看不到灯亮的就要继续努力了。

来源:  http://wangchenlin2000.blog.163.com/blog/static/56292571201059638102/