请教单片机程序暂停问题?

[复制链接]
3754|10
 楼主| buchuencheng 发表于 2008-3-13 08:11 | 显示全部楼层 |阅读模式
请教89c54在上电显示版本号后就不动了,轻轻毃一下电路板后就继续自检。运行后偶尔也出现暂停再毃电路板后又继续运行。怀疑电路板接触不良,请问那个管脚开路可造成此现象?电路板上的每个焊点几乎都从新焊过不见效,不知是否是双面板的过孔有问题?这种情况可能吗,请高手支招。谢谢!
xwj 发表于 2008-3-13 08:13 | 显示全部楼层

那就得看你里面写了什么程序和在哪里死等了...

  
 楼主| buchuencheng 发表于 2008-3-13 08:36 | 显示全部楼层

你的意思是程序有问题?

你的意思是程序有问题?我觉的跟电路板接触不良有关,此产品为一电子秤,前面是一A/D转换后面是显示驱动,能是那个管脚引起的呢?<br />
mohanwei 发表于 2008-3-13 08:37 | 显示全部楼层

莫非里面有传说中的震动传感器作为操作输入……?

<br />可能是晶振停振,LCD排线接触不良,而你程序里又有Check_Busy();一类的函数……<br /><br />上图上代码是最快的解决方法。
 楼主| buchuencheng 发表于 2008-3-13 08:46 | 显示全部楼层

晶振已经换过

晶振已经换过,器件接触不良已排查了呀
pigjiang 发表于 2008-3-13 08:56 | 显示全部楼层

还是应该以程序为主线,判断哪里是最可能卡死的地方。

相应的地方与外界有什么联系,这样有目的性一些。
liudewei 发表于 2008-3-13 08:59 | 显示全部楼层

不敲有没有自动重新运行的情况?

如果有电源的可能性最大。<br />敲的时候才有接触的可能性最大。
 楼主| buchuencheng 发表于 2008-3-13 12:58 | 显示全部楼层

不毃板,他停在那里

不毃板,他停在那里不动,不从新运行,毃板后继续运行。
zgl7903 发表于 2008-3-13 13:23 | 显示全部楼层

那就不停的敲吧

看看关键词处的语句检查下<br />while,for,do,<br />还有Sleep等待机语句<br /><br />是否有打开了的中断,而又没有中断服务<br /><br />监控晶振<br />在主循环中加入一个管脚反转的语句,监控这个管教
liudewei 发表于 2008-3-13 18:44 | 显示全部楼层

基本是机械开关、焊接、接插件接触、电缆内部断线的问题

  
yewuyi 发表于 2008-3-13 19:29 | 显示全部楼层

都在绕圈^^

简单一招就判断了:<br />看到这个问题后,拿示波器看一下OSC的波形,如果心脏停了,请检查复位电路和振荡电路,如果心脏没停请检查程序.<br /><br />如果没有示波器,请找一个质量好点的数字万用表,量一下OSC输出脚,如果没有停振,其上会有一定的平均电压,否则,电压基本接近于0,一定要质量好点的万用表,例如我常用的胜利的表就还可以,太烂的万用表,等效电容太大,上去后会造成OSC停振,最好是用示波器,把探头打到*10档测试OSC波形.<br /><br />我的直觉:软件问题,焊接问题的话,不会那么频繁出现,如果真是软件问题,估计你能弄好的可能极小,赶快掏钱找高人重新给你做把.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

67

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部