这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 由一个硬件BUG引起的思考

共11条 1/2 1 2 跳转至

由一个硬件BUG引起的思考

助工
2012-05-05 17:48:04     打赏

昨天已经有网友总结了这次ARM DIY板子的一些瑕疵。而我想谈的并不是这些BUG,而是一个特例(当然是我板子上的问题),那我就分享一下我折腾了一个多小时的问题。
昨天晚上刚刚焊好板子,上电看到LED亮了,心里感觉挺高兴,时间已晚,又没有找到合适的例程,所以没有测试CPU是否好使。

今天下午,编了一个流水灯的程序,但是在下载的时候,出现了问题,KEIL提示“failed to halt cpu",下载失败。开始怀疑自己cpu的某些引脚没有焊好,用烙铁摁了好几遍,但是问题如故。仔细看keil的提示,发现有一句说reset引脚不能控制,于是乎用万用表查了一下reset脚的电平,果然啊,一直都是0V,竟然和地短接了!看原理图,发现在复位按键没按下时,复位引脚应该是高电平。可见有某个地方短路了。
对着PCB图,把reset这根线整个捋了一遍,没有发现有短路处。于是拆掉复位按键及其周边,问题如故。由于这根线从SD卡,串口,JTAG插座经过,但是这些器件焊上了显然无法拆。于是只能将该线断成三段,缩小包围圈了。

最后割了两刀,发现问题出在JTAG口和TFT插座之间。再经过我的仔细辨别,终于发现了一根毛刺(比头发丝还细,可怜我这深度的近视眼),将铺地和reset线连接了!
好了,问题找到了。修正后的板子也好使了,但是我在找问题的过程当中有几个大胆的想法:
第一,这个问题的直接原因当然是PCB加工厂的失误。鉴于论坛里也有其他兄弟板子出现了问题,所以可以推断这个PCB工厂的加工精度不高。而此次板子的线比较细,所以次品率较高。
第二,这个reset走线我认为不够好。大家可以看一下PCB图,这根线绕了大半个PCB板,而且很多情况下都是贴着PCB的边。这样干扰很容易进入,而reset对于单片机来说又是一个至关重要的引脚,因此容易造成单片机经常重启。我想起了我大三参加飞思卡尔智能车时设计的一块主控板,由于我把reset线引的太长,造成小车在行驶过程中频频无故复位。因此,我认为单片机的硬件设计中,reset按键应该尽量靠近单片机,而且引线一定要短。从另一方面来说,线越短加工中出现的问题就越少,至少我这次的经历就说明了这点。
第三,这个事情也告诉了我,拿到板子还是不要着急焊元件。先把所有的非地线都和地线检查一遍,确保无误再开工。因为由于大面积铺地,较容易发生某些信号线和地短路。
最后,希望我的这个经历对于那些焊板子的兄弟有所帮助。




关键词: 一个     硬件     引起     思考    

高工
2012-05-05 18:08:49     打赏
2楼
两个问题 rst引脚应该尽量短, 铺铜间距要比走线时的安全间距大一些,

高工
2012-05-05 18:20:18     打赏
3楼
学了一招,从来没弄过pcb的飘过

高工
2012-05-05 19:11:17     打赏
4楼
同意楼主的意见,我那个可能也有类似原因

工程师
2012-05-05 19:32:44     打赏
5楼
的确,其实我一直想知道这次PCB的线宽是多少mil

菜鸟
2012-05-05 20:20:53     打赏
6楼
学习了

院士
2012-05-05 21:05:05     打赏
7楼
不错,赞一个

高工
2012-05-05 22:03:11     打赏
8楼
每个BUG都是锻炼的机会

专家
2012-05-06 07:27:53     打赏
9楼
看来下次得换一个厂家做板子了!!

菜鸟
2012-05-06 09:20:27     打赏
10楼
恩,很好!!!!

共11条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]