笔者在这次电路板测试时,发现一块电路板总是烧不进程序。遂予以检查:
1、电源,地都没有问题
2、用示波器测晶振是否起振,发现了一个奇怪的问题,XOUT端的24MHz类正弦波出现,而XIN就是没有?是何缘故,没有找出来原因。
于是就不得换了颗主芯片,QFP128以前不会,现在拆装起来已经很轻松了,感谢同事的指导(小得意一把,要知道以前最普通的贴片我都不敢装)。
但是换过芯片后,虽然可以烧写程序了,但是我又量了一下晶振,还是XIN没有,XOUT有。可以确认芯片已正常工作了,为什么量不出晶振起振呢?电路无误,只能检查示波器是否有问题。
用探头在示波器上做自校正,5V 1KHz方波正常。那问题出在哪儿呢?难道不能量晶振?不可能,我以前都是量过的。
发现探头用的X1档,我试着换了X10档,突然发现有了,起振波形有了。奇怪了,为什么X1时,XIN没有,而X10时有呢?
从探头看起,我从泰克的网页上查到,原来是与探头的电容有关。
示波器探头的特征参数有:
对应:
P2200 x 10X/1X 200MHz/6MHz 10MO/1MO 16pF/95pF 300V/150V
这里Typical input C很重要,1X时为95pF,这样的电容大小影响了晶振的起振,晶振的匹配电容为30pF,所以XIN测不出来波形是正常的,不会影响芯片工作。如果要测量是否起振,应用电容较小的探头,如选择10X这档。当然晶振本身产品的质量也很关键。
同样,由上面分析可知,从准确度上讲,严格地讲,示波器测出来的波形都是有失真的,不是实际值。当然对于晶振来说,不管是否加电容,以及加多大电容,影响的是波形的形状质量,不会影响频率大小的。所以系统会正常工作。