
2.5 Proteus软件中的C51程序运行与调试
通过Proteus设计出一个单片机应用系统原理图,通过µVision2编辑与编译完成了一个单片机的C51应用程序,两者之间可以采用离线调试和在线调试。
离线调试非常简单。通过µVision2编辑与编译生成了一个单片机应用程序的的文件,其扩展名为.hex,在Proteus中对CPU进行如图2-29所示的设置,在Program File选择框中选择扩展名是.hex的文件,这样,在Proteus环境中就可以离线调试硬件和软件了。

图2-29 .hex文件选择图
下面主要就在线调试进行说明。
2.5.1 驱动的安装
在进行在线调试过程中,要做到Keil和Proteus的联动,必须安装联动驱动程序。联动驱动程序为vdmagdi.exe(早期的版本称为keilheproteus.exe)。
在Proteus文件夹中执行vdmagdi.exe后,出现如图2-30所示的安装界面,根据安装界面的提示就可以顺利完成驱动的安装。

图2-30 驱动安装界面
在安装过程中,将要进行如下几步:
① 选择是对 µVision2的启动还是对 µVision3的驱动(µVision2针对单片机的环境,µVision3可针对单片机和ARM);
② µVision2安装路径的选择;
③ 确认要安装的驱动和文件夹;
④ 最后安装完成,如图2-31所示。

图2-31 选择安装µVision2驱动界面
2.5.2 Keil和Proteus的配置
驱动程序安装完毕之后,需要对Keil和Proteus进行一些配置工作,具体工作如下。
① 启动Proteus,在Debug菜单下选择Use Remote Debug Monitor;
② 调出编辑单片机属性的对话框,将其Program File框设置为空;
③ 启动Proteus对应的Keil µVision2中的工程,通过Target 1中的Option for Target 1对MCU、Debug进行设置,如图2-32所示。

图2-32 Debug选项的设定
在图2-32中,单击Settings按钮,出现如图2-33所示的话框。如果Proteus和Keil安装在同一台计算机上,则要使用本地回环地址127.0.0.1,如果不在同一台计算机上,则要设定为Proteus所安装的计算机的IP地址,默认的端口号位8000。设定完毕后确认退出。

图2-33 IP地址设定
以上是对Keil和Proteus的设定,是使用之前必须完成的工作,否则将不能正常工作。
2.5.3 Keil和Proteus的调试过程
完成了驱动的安装和软件的配置之后,就要进行系统的调试。
① 启动Keil和Proteus;
② 编译工程通过;
③ 进入Keil的调试环境。此时Keil调试系统启动,同时Proteus中仿真功能也启动,等待执行命令;
④ 在调试过程中可以全速执行、执行到断点处、单步执行。
关于Proteus软件中的C51程序运行与调试,在这里只是进行了入门说明,详细内容读者可以参阅有关书籍。