keil和Proteus联动调试实现Hello world

所用软件:
1、keil_5_C51(c51v957)
2、proteus pro 7.8 sp2和谐版
链接:https://pan.baidu.com/s/1odIoE502gj1PjOMVBVITfg
提取码:yz9o

一、keil的安装注册
1、安装:以管理员身份运行keil,根据提醒一直【next】。(注:安装路径可自主选择,填写信息可随意)
2、注册:以管理员身份打开keil,在【File】下选择【License Management】,复制【CID】内容;打开注册机粘贴CID的内容,按【Generate】得注册码然后复制,把注册码粘贴到【LIC】按【Add】再按【Close】完成。
参考(有汉化):https://blog.csdn.net/weixin_45636052/article/details/103951079

二、proteus的安装
1、安装:以管理员身份运行proteus,根据提醒点击【next】或【Yes】。有一步选择【Use a locally installed Licence Key】再点击【next】,弹出框时点击【Browse For Key File】从安装包中找到LICENCE.lxk文件点【打开】再点击【Install】、【是】、【Close】。(注:安装路径可自主选择,但一定要记住) 破解:点击(Proteus Pro 7.8 SP2 1.0.exe破解.exe)软件,粘贴proteus安装路径再点【升级】,完成。
汉化:解压Proteus Pro 7.8 SP2汉化包.zip,将“ARES.DLL”和“ISIS.DLL”两个文件复制到安装路径的BIN目录下(替换)。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
三、keil和Proteus联动调试
1、将VDM51.dll文件复制到keil安装目录的 C51\BIN文件夹和Proteus安装目录MODELS\文件夹里。
2、打开keil目录里的名为Tools.ini文件,在C51列表中加入新的一行:TDRV10=BIN\VDM51.DLL (“Proteus VSM Monitor-51 Driver” )。
在这里插入图片描述
3、keil的新建工程配置:在安装目录新建文件夹【proj】(注:路径不能有中文)用于存放新建的keil工程文件,打开keil选择【Project】选择【New uVsion Project】选择【proj】文件夹路径并填写工程文件名,搜索89C51,选择AT89C51,点击OK,创建完成。右键【Source Group 1】文件夹,点击【add new item to group …】,选中【C File(.c)】。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
keil配置:点击【Options for Target…】
在这里插入图片描述
点击【Target】:(注意设置为 11.0592, 否则会出现乱码或其他情况)
在这里插入图片描述
点击【Output】:
在这里插入图片描述
先点击【Debug】选择,后点击setting:
在这里插入图片描述
最后点击【OK】保存。

4、protues配置
打开protues软件,勾选【debug】里的【Use Remote Debug Monitor】选项,使得等下进程可以串口显示。
在这里插入图片描述
左侧栏点击P按钮,输入89C51,找到该芯片:
在这里插入图片描述
点一下89C51,再点一下右侧面板就能放置,在左侧栏找到VIRTUAL TERMINAL放到面板然后连线:
在这里插入图片描述
四、实现Hello world
1、打开keil软件,在新建的工程里填入hello world代码,点击【Rebuild】编译:
在这里插入图片描述
提示无错误,无警告,则编译成功,此时在该工程文件目录下会生成一个object文件夹,其中有后缀为.hex的文件,用于烧到protues软件上跑,要记住.hex文件的路径。
在这里插入图片描述
代码(C):

#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\n");
		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++);
	}
}

2、打开protues软件,双击C51芯片,点击【小文件夹】导入刚才那个后缀为.hex的文件。(注:下面的设置成和keil软件相同的11.0592)
在这里插入图片描述
点击左下角运行:
在这里插入图片描述

五、出现错误
1、解决proteus仿真时出现的错误 Cannot open ‘C:\User***(中文)\AppDate\Local\Temp\LISA4832.SDF’。
在这里插入图片描述
方法:更改环境变量
右键【此电脑】>【属性】>【高级系统设置】>【环境变量】, 在【用户变量】栏里,找到【TEMP】与【TMP】,对其进行编辑,将变量值都改为【%SystemRoot%\TEMP】。然后下面的【系统变量】栏里,同样的操作步骤。(注:如果变量栏里没有TEMP和TMP,自己新建即可)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

念芯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值