准备:
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/