对于一个新设计的电路板,调试起来往往会遇到一些困难,特别是当板比较大、元件比较多时,往往无从下手。
但如果掌握好一套合理的调试方法,调试起来将会事半功倍。
对于刚拿回来的新PCB板,我们首先要大概观察一下,板上是否存在问题,例如是否有明显的裂痕,有无短路、开路等现象。
如果有必要的话,可以检查一下电源跟地线之间的电阻是否足够大。
然后就是安装元件了。
相互独立的模块,如果您没有把握保证它们工作正常时,最好不要全部都装上,而是一部分一部分的装上(对于比较小的电路,可以一次全部装上),这样容易确定故障范围,免得到时遇到问题时,无从下手。
一般来说,可以把电源部分先装好,然后就上电检测电源输出电压是否正常。
如果在上电时您没有太大的把握(即使有很大的把握,也建议您加上一个保险丝,以防万一),可考虑使用带限流功能的可调稳压电源。
先预设好过流保护电流,然后将稳压电电源的电压值慢慢往上调,并监测输入电流、输入电压以及输出电压。
如果往上调的过程中,没有出现过流保护等问题,且输出电压也达到了正常,则说明电源部分OK。
反之,则要断开电源,寻找故障点,并重复上述步骤,直到电源正常为止。
接下来逐渐安装其它模块,每安装好一个模块,就上电测试一下,上电时也是按照上面的步骤,以避免因为设计错误或/和安装错误而导致过流而烧坏元件。
寻找故障的办法一般有下面几种:①测量电压法。
首先要确认的是各芯片电源引脚的电压是否正常,其次检查各种参考电压是否正常,另外还有各点的工作电压是否正常等。
例如,一般的硅三极管导通时,BE结电压在0.7V左右,而CE结电压则在0.3V左右或者更小。
如果一个三极管的BE结电压大于0.7V(特殊三极管除外,例如达林顿管等),可能就是BE结就开路。
②信号注入法。
将信号源加至输入端,然后依次往后测量各点的波形,看是否正常,以找到故障点。
有时我们也会用更简单的办法,例如用手握一个镊子,去碰触各级的输入端,看输出端是否有反应,这在音频、视频等放大电路中常使用(但要注意,热底板的电路或者电压高的电路,不能使用此法,否则可能会导致触电)。
如果碰前一级没有反应,而碰后一级有反应,则说明问题出在前一级,应重点检查。
③当然,还有很多其它的寻找故障点的方法,例如看、听、闻、摸等。
“看”就是看元件有无明显的机械损坏,例如破裂、烧黑、变形等;“听”就是听工作声音是否正常,例如一些不该响的东西在响,该响的地方不响或者声音不正常等;“闻”就是检查是否有异味,例如烧焦的味道、电容电解液的味道等,对于一个有经验的电子维修人员来说,对这些气味是很敏感的;“摸”就是用手去试探器件的温度是否正常,例如太热,或者太凉。
一些功率器件,工作起来时会发热,如果摸上去是凉的,则基本上可以判断它没有工作起来。
但如果不该热的地方热了或者该热的地方太热了,那也是不行的。
一般的功率三极管、稳压芯片等,工作在70度以下是完全没问题的。
70度大概是怎样的一个概念呢?如果你将手压上去,可以坚持三秒钟以上,就说明温度大概在70度以下(注意要先试探性的去摸,千万别把手烫伤了)。
电路的调试具体步骤大致如下:1.通电观察:通电后不要急于测量电气指标,而要观察电路有无异常现象,例如有无冒烟现象,有无异常气味,手摸集成电路外封装,是否发烫等。
如果出现异常现象,应立即关断电源,待排除故障后再通电。
2.静态调试:静态调试一般是指在不加输入信号,或只加固定的电平信号的条件下所进行的直流测试,可用万用表测出电路中各点的电位,通过和理论估算值比较,结合电路原理的分析,判断电路直流工作状态是否正常,及时发现电路中已损坏或处于临界工作状态的元器件。
通过更换器件或调整电路参数,使电路直流工作状态符合设计要求。
3.动态调试:动态调试是在静态调试的基础上进行的,在电路的输入端加入合适的信号,按信号的流向,顺序检测各测试点的输出信号,若发现不正常现象,应分析其原因,并排除故障,再进行调试,直到满足要求。
以前觉得虚焊、短路、断路是很简单、很容易解决的问题。
虚焊、短路、断路虽然很简单,但是如果你碰到其中一种情况,可能要调试大半天才能发现问题所在,所以这些越基本的东西,更值得注意,无谓在这上面浪费调试时间。
而且如果遇到这些简单的问题解决不出来,去麻烦高手,小心被BS啊。
调试的步骤一般就是先弄清楚系统有多少组电源,电源由什么芯片供电、转换的,逐步检查每一组电源,使得它们正常输出。
如果没有正常输出,一般就是芯片的管脚配置问题。
那么碰到芯片没有正常输出的话,解决问题的思路要怎样呢?根据我的理解,首先要看芯片的datasheet,了解芯片不同功能有哪些管脚配置。
然后将芯片有哪些输入、输出管脚弄清楚。
一般配置成功,芯片就会正常工作的。
如果芯片输入没有问题,配置也没错,但是输出却有问题,那么很有可能是芯片挂了。
电源调试成功之后,接下来是调试系统的时钟。
数字系统靠时钟来保证各芯片可以有序的工作。
首先,要调试cpu(网关板的主芯片)的时钟,然后是总线(exp、pci等)的时钟,还有各个功能模块的时钟。
时钟不起来,对应的模块都无法正常工作,有时正常工作是高电压的管脚却输出了低电压(可以根据这个现象来猜测是否时钟没有起来)。
电源、时钟起来了之后,接下来就是对各个功能模块逐一调试。
我的调试的过程之中,纠结最久的是ddr2内存和norflash模块的调试。
ddr2内存对某一段地址进行读写总是出现问题,而对其他段的却没有问题。
最后解决的方法是,使用DDR2的ODT技术,不接外部VTT,才把问题解决。
而norflash的管脚电平一直不正常的原因是一个片选端没接好和exp总线的时钟没起来(本系统是利用exp总线读写norflash的)。
电源没有问题、时钟没有问题、各个芯片正常工作,那么系统一般都可以跑起来啦。
最后补充一点,遇到硬件问题,最好就是先看看原件,例如芯片管脚有没有短路、断路、虚焊等等……然后看看外部接线有没有问题(我好几次发现结果出不来是因为串口线没接好,或者某一个软件没有打开),最后才看芯片手册。
正确的硬件调试意识、良好的调试习惯,可以让你快速的解决硬件问题。
解决了硬件问题之后,别忘了要看一些理论知识,理论与实践结合,对问题的理解才可以更加深刻~~~~不论采用分块调试,还是整体调试,通常电子电路的调试步骤如下:1.检查电路任何组装好的电子电路,在通电调试之前,必须认真检查电路连线是否有错误。
对照电路图,按一定的顺序逐级对应检查。
特别要注意检查电源是否接错,电源与地是否有短路,二极管方向和电解电容的极性是否接反,集成电路和晶体管的引脚是否接错,轻轻拔一拔元器件,观察焊点是否牢固,等等。
2.通电观察一定要调试好所需要的电源电压数值,并确定电路板电源端无短路现象后,才能给电路接通电源。
电源一经接通,不要急于用仪器观测波形和数据,而是要观察是否有异常现象,如冒烟、异常气味、放电的声光、元器件发烫等。
如果有,不要惊慌失措,而应立即关断电源,待排除故障后方可重新接通电源。
然后,再测量每个集成块的电源引脚电压是否正常,以确信集成电路是否已通电工作。
3.静态调试先不加输入信号,测量各级直流工作电压和电流是否正常。
直流电压的测试非常方便,可直接测量。
而电流的测量就不太方便,通常采用两种方法来测量。
若电路在印制电路板上留有测试用的中断点,可串入电流表直接测量出电流的数值,然后再用焊锡连接好。
若没有测试孔,则可测量直流电压,再根据电阻值大小计算出直流电流。
一般对晶体管和集成电路进行静态工作点调试。
4.动态调试加上输入信号,观测电路输出信号是否符合要求。
也就是调整电路的交流通路元件,如电容、电感等,使电路相关点的交流信号的波形、幅度、频率等参数达到设计要求。
若输入信号为周期性的变化信号,可用示波器观测输出信号。
当采用分块调试时,除输入级采用外加输入信号外,其他各级的输入信号应采用前输出信号。
对于模拟电路,观测输出波形是否符合要求。
对于数字电路,观测输出信号波形、幅值、脉冲宽度、相位及动态逻辑关系是否符合要求。
在数字电路调试中,常常希望让电路状态发生一次性变化,而不是周期性的变化。
因此,输入信号应为单阶跃信号(又称开关信号),用以观察电路状态变化的逻辑关系。
5.指标测试电子电路经静态和动态调试正常之后,便可对课题要求的技术指标进行测量。
测试并记录测试数据,对测试数据进行分析,最后作出测试结论,以确定电路的技术指标是否符合设计要求。
如有不符,则应仔细检查问题所在,一般是对某些元件参数加以调整和改变。
若仍达不到要求,则应对某部分电路进行修改,甚至要对整个电路重新加以修改。
因此,要求在设计的全过程中,要认真、细致,考虑问题要更周全。
尽管如此,出现局部返工也是难免的。
ARM 硬件调试在网上的时候,看到不少人在问如何自己做ARM板,也有些人想联系网友一起做。
不管是哪种方式做,都是希望能自己做个ARM来玩一玩。
个人认为自己做一个ARM板并不是很难。
难度多在元件的购买和PCB 加工上。
但这两部分也很好解决。
做一个简单的、自己学习用的板,成本不过三、四百块钱。
不仅划算,还能享受其中的乐趣。
一、原理图的设计首先,你先要考虑自己打算做一个什么样的板,是为了完成某个项目,还是做个学习用的板。
明确目的后,开始设计原理图。
目前我们常用的ARM开发板多是三星的,也有PHILIPS的。
这两大类芯片在网上可以找到很丰富的资源,包括原理图和测试程序,尤其是44B0的芯片,资料几乎是满网飞了。
找一个芯片的原理图,在其基础上做些改动,使之更适合自己的实际应用。
ARM7的芯片使用起来会稍微简单些,毕竟其原理构造和普通的51单片机有些类似,不需要太费事就可以完成。
对于ARM9的,设计原理图会比较麻烦。
建议采用核心板的方式,把ARM芯片和存储器放在一个小板上,然后再做底板,这样即使设计出了问题,也方便重新修改设计。
原理图方面我就不多罗嗦了,网上大把参照图,DOWN下来自己修改就可以了,确定原理图无误后,就需要开始布板了。
对于ARM7,速度比较低的那种(100M以下的),板只要布的合适就可以了,没有什么特别值得注意的地方,有些信号线上可能需要串上一些小电阻,做高频电阻匹配用。
对于ARM9的板,最少需要4层板。
(如果双面能把线布下,双面板也可以的)。
这里也许有人会问,4层板是否够用。
我觉得是完全够的。
我自己设计过一个S3C2410核心板,用4层板做,在200M下也能正常工作。
另外,我从网上下了个6层板的PCB,我把它改成了4层板,虽还没来得及调试,我估计工作起来也不是问题。
为什么我这么说呢,因为看整个电路就可以大概知道一些,只要你布的板把电源和时钟处理的得当,其他逻辑信号线不是什么太大问题。
当然了,前提是逻辑信号不能乱布。
这里需要说明一点,做4层板完全是为了自己学习用,因为做6层板的价格太高了,个人承担不起。