单片机上运行的结果和用仿真软件运行的结果为什么不一样

仿真时,流水灯1
跳到流水灯2用时比较短,几乎是闪一下就到了第二个,接下来则是一秒循环一个,但是我把程序下到单片机里运行时,流水灯1跳到流水灯2的间隔是1秒,然后逐个循环下去??哪位高人能告诉我这是什么原因呢?
为什么仿真的现象和在AT89S52单片机上运行的现象不一样?我觉的应该不是程序错了·····是不是单片机里的硬件和仿真的不一样呢?用的是proteus仿真,求帮忙啊,实验老师问了我这个问题,答不出来不给过啊····

嗯 这是正常情况,因为仿真软件毕竟是虚拟的,proteus主要是用来学习的,真正的时间还是要靠自己去在实际中去调整。从一个很明显的例子中可以看出:郭天祥的单片机教学视频中有个定时器一秒的例子,如果把那个程序原原本本的复制到proteus,结果显然不是一秒。要追其根本原因,是因为晶振的原因,尽管在软件中设置的是3.57M单实际运行并非如此,proteus重要用来学习熟练成程序就可以了
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-11-11
proteus仿真不是实时仿真,就是说proteus仿真的速度是比不上单片机实际运行的速度的,所以一般只是用proteus检验程序是否符合预期,但是精确的测试还是要在单片机上完成。
当然,proteus到现在也不是完美无缺的,多少还有些bug没有发现和纠正,所以有偏差也是正常的。

建议单片机的试验直接在单片机硬件上进行,这样最准确。本回答被网友采纳
第2个回答  2012-11-10
仿真和真实上机差的一般是时间问题,时间问题一般都是上机后再调试!
因为仿真软件是通过仿真硬件运算的,所以同真际上机一定会有时间上的差别。
例如你买一个100u的电容,它的容实际不一定就是100u,可能是98u、102u都不一定

单片机上运行的结果和用仿真软件运行的结果为什么不一样
嗯 这是正常情况,因为仿真软件毕竟是虚拟的,proteus主要是用来学习的,真正的时间还是要靠自己去在实际中去调整。从一个很明显的例子中可以看出:郭天祥的单片机教学视频中有个定时器一秒的例子,如果把那个程序原原本本的复制到proteus,结果显然不是一秒。要追其根本原因,是因为晶振的原因,尽管在软件...

单片机上运行的结果和用仿真软件运行的结果为什么不一样
proteus仿真不是实时仿真,就是说proteus仿真的速度是比不上单片机实际运行的速度的,所以一般只是用proteus检验程序是否符合预期,但是精确的测试还是要在单片机上完成。当然,proteus到现在也不是完美无缺的,多少还有些bug没有发现和纠正,所以有偏差也是正常的。建议单片机的试验直接在单片机硬件上进行,这样...

单片机的软件仿真和实验有什么区别 单片机仿真和实际不符是什么原因
3、实际工作环境与软件环境有差别 单片机的负载对电源的影响、电源的纹波干扰、通讯的误码率、电机干扰等问题,是软件无法模拟的。走线方式对电路稳定性也有影响,特别是在高频元件如晶振、DCDC电源等,不同布线方式会产生不同的结果。二、单片机仿真和实际不符是什么原因 单片机仿真和实际操作存在差异是正...

单片机的软件仿真和实验有什么区别 单片机仿真和实际不符是什么原因
p>软件仿真与实际操作存在差异是正常的,因为两者所处的环境和条件有所不同。在实际操作中,可能会遇到元件质量问题、线路设计问题,甚至程序本身也可能存在问题。因此,了解这些差异对于提高单片机设计和调试能力具有重要意义。

...仿真器调试和实际烧进单片机内运行有什么区别啊?
不一样的在于程序调试的结果,因为在调试的时候你可以控制程序的单步运行,就相当于把每条语句之间的时间拉了很长,而且整个系统的运行速度会比正常运行要低。而单片机运行的时候是全速跑的,由于这两个时间的差别就决定了在你调试时序方面的程序的时候会比较麻烦,可能在仿真器调试的时候很正常,烧进片子...

...中的软件仿真和在单片机中的实际运行有什么异同?
很重要的区别是程序利用软件延时上是不同的,仿真和实物的延时在时间长短上是有差别的,特别是读\/写一些要求时序很严格的器件的程序两者就明显了,可能在仿真时能正常工作的程序,但在实物上就不能工作了,或者相反。如果有实物,最好还是直接在实物上调试程序,不要先仿真后,再到实物上运行程序,一旦...

51单片机程序运行和仿真器运行有啥区别
有仿真器运行可以实时看到单片机内部寄存器的值,方便调试用。而且还可以控制程序执行到哪步停止,更好的解释程序运行原理,也更加容易找出出错的地方。

单片机时钟为什么实际和仿真上的时间不一样
计时的误差就很小。仿真时间误差很大,这很好理解,因仿真是用软件来模拟的,并不真的,软件运行就受电脑的各种因素影响,不可能与实物一样。用软件能模拟出这么逼真的动画效果,已经很不容易啦,也相当不错啦,就别再那么荷刻啦。仿真不过是学习的一种方法和手段,最终还是要以实物为准哪!

单片机仿真和实际上板不符合
#0FFH LOOP: RL A DEC A MOV P1, A LCALL DELAY LJMP LOOP DELAY: MOV R5, #5 DELAY01: MOV R6, #200 DELAY02: MOV R7, #250 DELAY03:DJNZ R7, DELAY03 DJNZ R6, DELAY02 DJNZ R5, DELAY01 RET END 此外,硬件上检查复位电路,检查晶振,检查供电电源,都正确后,不会有问题的。

keil模拟单片机延时汇编程序执行,显示的运行时间为什么和理论不一...
仿真模拟 与 电脑速度有关,不可能达到和理论不一样,只有 在 实际单片机上 运行,才会与 计算理论值一致。

相似回答