总是看到有些网站卖什么编程器、仿真一体的东西。感觉这仿真做得比较厉害。
前两天在网上买了一片sst89e564rd,20元。准备研究下它的iap(在应用编程功能)。可无意间竟然发现了所谓仿真模块的秘密。
目前市面上一些仿真器,就是用sst89e564rd做的。而里面的监控程序其时并不是他们自己开发的,而是sst为了方便用户做的。
现在我就告诉你怎样自己做一台可以和keil联机使用的51仿真器。
首先,你要买一块sst89e564rd和一块max232,并把它们接好。再准备一条连接到pc的连接线。(如果你已经有一个实验板并且上面带了max232,那就容易多了,真接搞一块89e564rd,然后按下面的方法写模块)注:目前市面上的成品实验板,基本上都已经这么做了(所以如此容易地就可以把你的实验板变成仿真器,何乐而不为啊?)。
到sst网站或其他网站下载一个sst easy iap软件。
然后在pc上运行这个easyiap软件,在菜单中选择download softice(这个就是市面上所谓仿真模块里的程序本来的名字),pc就会更新89e564中的程序,更新好后,你这个芯片就是“仿真模块了”。
使用时,把芯片接在你的目标系统上,并且把串口通过max232接到电脑(所以,这个仿真模块实际上在仿真串口时还是有些限制的),或者,从你实验板直接接个40脚插头出来,接到目标板上(串口的线不要接过来),外然后打开你的keil,在项目option的debug菜单中,选右侧的keil monitor-51 driver。
然后你就可以在写程序的时候,按仿真图标,进行仿真了,连编程器都不用了,爽吧?
乱七八糟说了一大堆,可能没说太明白,不清楚的步骤可以询问,我会详细解释。
注意:sst89e564rd,在出厂时,里面就已经有引导代码了。如果芯片中的代码已经被擦除了,就不能用上面这个方法了。不过,你可以使用编程器,把这段代码烧到芯片中,效果也是一样的。附件这个文件就是softice代码(只是sst89e564rd用的,下载到你的电脑后,把.txt改成.hex即可)。这个文件,64k以前都是空的,从10000h才开始有代码,因为这段代码本来就是要从10000h开始的。编程时注意,所有的配置位都不要选。