我是靠谱客的博主 粗心小丸子,最近开发中收集的这篇文章主要介绍Protues与keil联调方法及用C书写一个HelloWorld程序,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

找到protues与keil的安装目录

1、需要把VDM51.dll文件(protues中可能没有这个文件,你可以从网上下载。)复制到proteus安装目录下MODELS文件中keil安装目录的 bin 文件中
我的目录:
protues: D:Proteus proMODELS
keil: D:keil_5_C51C51BIN

2、打开keil中的TOOLS.INI文件,并把**TDRV10=BINVDM51.DLL (“PROTEUS VSM MONITOR 51 DRIVER”)**复制到TOOLS.INI文件里。(注意这里的TDRV10不能与其他重合,如果重合的话,后面的10可以修改成11或更高)
在这里插入图片描述
(步骤1和步骤2只会在初次使用才需要设置)

3、新建keil工程。

进入keil,点击project,然后点击New uVision Project
在这里插入图片描述
在Search中输入89C51,在Microchip中选择AT89C51,然后点击OK.
在这里插入图片描述
4、设置仿真软件。

点击中间的小蓝点(Options for Target…
在这里插入图片描述
点击Target,在 Xtal(MHz) 框中改为 11.0592
在这里插入图片描述
点击Output,勾选 Create HEX File
在这里插入图片描述
点击Debug,在右边Use中,点击下拉框,选择PROTEUS VSM MONITOR 51 DRIVER
在这里插入图片描述
**选择后,会自动弹出一个方框。**对照下图,点击OK
我这里是同一台电脑
(如果用同一台机IP名为127.0.0.1,如不是同一台机调试则填另一台的IP地址。端口号一定为8000。注意:可以实现在一台机器上运行keil,另一台中运行proteus进行远程仿真调试的。)

在这里插入图片描述
最后点击OK

5、设置文件类型
我这里使用的是C File.
右击Source Group 1, 点击Add New Item to Group 'Source Group 1…, 点击C File,并为你的文件取一个名字。

在这里插入图片描述
在这里插入图片描述
6、现在可以在Keil书写代码了

#include <reg51.h> 
#include <stdio.h>

void initUart(void);
void delay(unsigned int x);

void main (void)
{
	unsigned int utime;
	initUart();
	while(1){
		printf("Hello World,2018A14118 Zhong yuann");
		delay(1000);
		for (utime=0; utime<10; utime++){}
		}
}
	
void initUart(void)
{
	SCON = 0x50;
	TMOD = 0x20;
	TH1 = 0xfd;
	TR1 = 1; 
	TI = 1;
}

void delay(unsigned int x)
{
	unsigned char i;
	while(x--)
	{
		for(i=0;i<120;i++);
	}
}

点击编译运行
在这里插入图片描述
编译成功后
在这里插入图片描述
在该文件目录下会生成一个object文件夹,其中有后缀为hex的文件,用于烧到protues软件上跑.
记住hex的路径,后面需要用到。
在这里插入图片描述

7、protues的配置
打开protues,点击Debug, 勾选Use Remode Debug Monitor

在这里插入图片描述
点击P,在Keywords输入89C51,在右侧点击AT89C51,然后点击OK

在这里插入图片描述

点击AT89C51,然后在右侧寻找合适的位置,点击两下,面板出现AT89C51单片机

在这里插入图片描述
点击左栏的一个图标,点击VIRTUAL TERMINAL,然后在右侧寻找合适的位置,点击两下,放到面板
在这里插入图片描述
进行连线
在这里插入图片描述
双击面板的单片机文件,Program File:选择Keil中烧录出object文件夹,其中有后缀为hex文件的路径。下面那张图是我的路径。在这里插入图片描述Clock Fiequency设置为11.0592Hz,与Keil相同的数。然后点击OK。

在这里插入图片描述
保存文件,点击运行。
在这里插入图片描述

效果图:
在这里插入图片描述
如果没有显示Virtual Terminal这个框框。
解决办法如下:
在Simulation中止后,进入工具栏Debug-Reset Debug Pop up Windows,并在弹出窗口中选“yes”。 再次运行Simulation,可以发现窗口可以正常弹出。

参考链接
参考链接

最后

以上就是粗心小丸子为你收集整理的Protues与keil联调方法及用C书写一个HelloWorld程序的全部内容,希望文章能够帮你解决Protues与keil联调方法及用C书写一个HelloWorld程序所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部