1、前天安装的proteus8.5,但是打开手上的一个proteus8.7版本的工程,发现打不开,同时点击原有proteus8.5首界面里的8.7下载界面,出现下载失败,所以就有了下面的proteus8.7安装过程。

2、首先发现与安装proteus8.5安装的不同在于license选择界面已经存在内容,是之前破解proteus8.5所带来的影响。

prometeus监控nginx proteus启动远程编译监视器_引脚

3、下面是keil和proteus联调的方法。

prometeus监控nginx proteus启动远程编译监视器_引脚_02

关于第4点, 一开始,不清楚“ISIS 7 Professional”这个东西在哪,因为刚装完的proteus初始界面是下面这样的,只有三个最初始的选项卡,分别是“文件、系统、帮助”。

prometeus监控nginx proteus启动远程编译监视器_引脚_03

后面经过网上搜索,想要找到“调试”这一选项卡,需要先打开一个工程,然后“调试”选项卡才会出现,并且一开始的时候,在图中“启动远程编译监视器”这一功能前是没有被勾选的,而proteus和keil联调方法里的第4点目的就是为了让你将这一选项勾选上。

prometeus监控nginx proteus启动远程编译监视器_prometeus监控nginx_04

prometeus监控nginx proteus启动远程编译监视器_晶振_05

关于第5点,操作方法如下。

prometeus监控nginx proteus启动远程编译监视器_prometeus监控nginx_06

4、真正打开工程进行联调时,首先出现了下面图示的错误,首先猜到的可能原因是由于proteus工程因为是从别处拿来的,已经被设置好了获得.hex的路径,但是keil工程已经被自己放到一个新建的文件底下,所以会出现.hex路径找不到,所以解决办法就是从网上搜索如何更改proteus工程的.hex获取路径。

prometeus监控nginx proteus启动远程编译监视器_prometeus监控nginx_07

操作办法如下,首先找到proteus工程所用的主芯片,在下图中使用的就是AT89C52了。

prometeus监控nginx proteus启动远程编译监视器_选项卡_08

然后双击主芯片弹出一个编辑窗口,如下图,在红框位置处重新选择keil工程所生成的.hex文件所在路径。

prometeus监控nginx proteus启动远程编译监视器_选项卡_09

5、下一步,运行仿真后出现新错误,如下图,这时候的错误就真的开始牵扯到程序功能设计方面的了。

prometeus监控nginx proteus启动远程编译监视器_选项卡_10

经过查看“Logic conection(s) detected on net...”的错误提示,发现是proteus工程里LCD的引脚连线和keil里的引脚定义对应不上,如下图。

prometeus监控nginx proteus启动远程编译监视器_晶振_11

经过比对可以发现,在keil工程这边,LCD的en、rs、rw引脚和proteus工程那边的连线是完全对不上的,为了方便起见,并且不对proteus工程做太大变动,所以我选择了修改keil工程这边引脚定义,修改完如下图所示。

prometeus监控nginx proteus启动远程编译监视器_prometeus监控nginx_12

但是,修改完之后再运行仿真发现还是出不来现象,也就是LCD上面还是没有内容显示,所以我的思路是重新对proteus中所有器件的设置进行检查,因此,首先就对主芯片AT89C52进行了检查,发现它的原本设置里头,晶振的值设置成了12MHz,起初我也没有想要不要就不改这个了吧,因为平时使用时是直接上硬件晶振的,keil即便按照12MHz编译其实影响不了什么,但是我想起来了,这次是完完全全软件仿真,前面修改完LCD引脚定义之后运行的那遍,proteus工程里点开示波器是只有两条平行线的,所以到了这里我才会决定将晶振按照原原本本的11.0592MHz填上去,然后保存proteus工程,再重新运行仿真的,然后后面显示结果就成功了。