硬件仿真的话,仿真器可以让程序单步执行,还能够设置断点,看程序运行的时候相应的寄存器的值是否跟设计的一样,对调试软件很有帮助。
软件仿真的话常用的就是protues,我一般直接用KEIL的软件仿真,功能没有protues强大,但是方便;
硬件大致仿真器分两种,一种是用FGPA或者特殊的CPU来模拟单片机,程序每次是烧在RAM里面运行的,网上有用SST89E516做51单片机仿真器的,就是这个原理,每执行一次单步,就重新烧写一次程序,只不过SST89E516是烧在FLASH里面的,单步用多了的话,SST89E516很快就挂了,这种仿真器效果要比上面的软件仿真效果好,但是也有问题,它是用别的东西模拟的单片机,跟真实的还是有差异;现在用的很多的都是叫做JTAG的嵌入式仿真,这种仿真让单片机自己仿真自己,只是使用者可以随时把程序运行停下来看寄存器,效果就好多了,现在很多单片机都具有这个功能,像C8051F,AVR,ARM都有,仿真器的硬件也比上面的一种简单很多,便宜许多
初学51的话,硬件仿真成本太大,可以多用用软件仿真,但是肯定不能完全只用软件仿真,还是要实际运行一下看效果的;不用仿真器,用串口帮助调试也是很不错的选择,在感觉有问题的地方用串口发点数据,证明前面没有卡死或者直接就发单片机的状态,调试起来也很快
1,找到需要的元件,芯片。
2,根据原理图,画出仿真图。
3,写程序,并编译出HEX代码文件。
4,把HEX代码文件加载到单片机中。
5,运行仿真,就看到结果了。
如下图,就是一个仿真的实例。
更详细的 *** 作步骤,可上网下载有关的教程看一下。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)