编好的C51程序用仿真器运行一切正常,但写入片子独立运行时,运行结果却是错的。这是为什么?
编好的C51程序用仿真器运行一切正常,但写入片子独立运行时,运行结果却是错的。这是为什么? 问题点数:100、回复次数:16Top
1 楼duxn(嘟嘟)回复于 2006-03-03 23:00:58 得分 0
怎么没有人理我,自己顶一下Top
2 楼yongkyoko(小鱼吹浪花一朵)回复于 2006-03-04 08:08:47 得分 5
顶
——————————————————————————————Top
3 楼tyj_3()回复于 2006-03-04 11:03:58 得分 5
仿真全面吗,什么错?Top
4 楼pgg820427(地铁)回复于 2006-03-04 17:33:02 得分 5
检查以下你的硬件部分,Top
5 楼tanlim(sunsos.net sunsos.cn)回复于 2006-03-04 19:09:27 得分 10
仿真器都一般跳了地址的,比如运行的始址:AT 0 或者AT 8000H
等需要做简单的调整的,再者是检查的你的硬件电路了。这是最不确定的事情Top
6 楼peipeiguo(Percy)回复于 2006-03-04 19:48:28 得分 10
如果仿真通过,那可能的原因就是芯片有问题,请重新检查,或者换一块片子Top
7 楼duxn(嘟嘟)回复于 2006-03-04 22:01:05 得分 0
我用C编的程序,应该不会运行始址错误吧。
我的电路用仿真器时没有问题呀Top
8 楼NeoZero(龙王零式)回复于 2006-03-04 22:15:32 得分 10
烧写有问题or片有问题or仿真机有问题。问下你晶振是用仿真器上的还是板上的。Top
9 楼duxn(嘟嘟)回复于 2006-03-04 22:57:47 得分 0
仿真器上的,当板子上的晶振没有问题呀,是好的Top
10 楼tyj_3()回复于 2006-03-04 23:20:09 得分 10
确定你仿真时测试的项是否和程序烧入后实际测试的项相同或者至少比后者多,那就检查硬件,
反之检查软件.例如,有可能烧入后程序执行的任务比仿真时多要多,堆栈溢出或者任务之间冲突而程序中判断错误等等
Top
11 楼duxn(嘟嘟)回复于 2006-03-04 23:23:02 得分 0
是一段很短的程序,驱动7219的,为什么用仿真器就正常呢?Top
12 楼flowercity(菜农)回复于 2006-03-05 09:37:39 得分 10
检测硬件电路的驱动能力是否够
晶振工作正常吗?Top
13 楼duxn(嘟嘟)回复于 2006-03-05 10:02:03 得分 0
晶振工作正常Top
14 楼ppcust(@小猪&毛毛虫@)回复于 2006-03-06 15:30:58 得分 15
有可能你的哪个变量没有初试化,,在仿真的时候就自动给值,,
但在单独执行的时候就出错。。。。
先确保你仿真着运行是的硬件环境是一样的,驱动电平也很重要
Top
15 楼wanyeye(助人者天助)回复于 2006-03-06 15:52:29 得分 20
这个问题太笼统了
具体的现象呢?
51 下 通常是 晶体不工作了
或是 哪个电路部分供电 不对Top
16 楼duxn(嘟嘟)回复于 2006-03-07 09:09:33 得分 0
问题解决了,是我的串行通讯有问题Top




