我的PCB板上有2个石英晶体谐振器:32.768 kHz和20 MHz。它们连接至飞思卡尔MC12311收发器IC,后者内嵌有HCS08微控制器。我想测试这些晶体是否正常工作。
可用工具:示波器,频率计(数字计数器),数字万用表。
我应该如何使用这些工具来测试板上的晶体?
- 注意:应该考虑探头的电容性负载效应。否则,测量结果将不准确,甚至更糟,晶体将根本无法工作。
Edit1:我同时使用了示波器和频率计(带有x10探头),但是不幸的是根本没有监控任何东西。
我的PCB板上有2个石英晶体谐振器:32.768 kHz和20 MHz。它们连接至飞思卡尔MC12311收发器IC,后者内嵌有HCS08微控制器。我想测试这些晶体是否正常工作。
可用工具:示波器,频率计(数字计数器),数字万用表。
我应该如何使用这些工具来测试板上的晶体?
Edit1:我同时使用了示波器和频率计(带有x10探头),但是不幸的是根本没有监控任何东西。
Answers:
如我所见,没有答案被接受。让我提供另一个答案。
大多数现代IC使用所谓的Pierce振荡器来使用晶体产生稳定的时钟。这是主电路配置:
可以看到,电路不是对称的:右侧是某个驱动器的输出(通常称为XO),而左侧是输入到反相放大器(通常称为XI)。因此,只要探针具有相对较高的阻抗,探测XO(输出)端是相对安全的。输入阻抗为1M的普通1:10无源探头应该可以完成这项工作。实际上,电路放大器中的输出驱动器被故意设置为弱,通常不超过1mA负载能力,以防止Xtal被过驱动,但是1mA应该足以驱动1M示波器探头。
探头电容会改变振荡频率20-50ppm,因为它会改变电路调谐(Xtal负载,C1与C2串联)。但是,除非整个电路的边界太小并且不符合稳定性标准(放大器的负阻抗应比Xtal ESR大3-5倍),否则XO上的探头负载不应破坏振荡。如果探针这样做,则将Xtal测试视为失败。
永远不要尝试用100 MOhm探针探测XI输入,并且仅出于好奇。原因不在于尖端电容(2-8-12pF或华特),而是由于有限的探头阻抗而在XI引脚上造成了直流偏移。皮尔斯振荡器是一个非常精密的非线性电路,它具有非常重要的直流反馈分量R1,它可以将输入直流电平有效地调节到最大放大点,通常约为从地到Vcc的一半。分量R1通常为1MOhm以上,并且振荡变得集中在自选DC点上。甚至连一个10MOhm的探头都可以使该点下降,放大倍数下降,并且振荡消失。
而且,当然,测试振荡的最佳方法不是用探针接触它,而是要有一个内部缓冲器,该缓冲器的输出将输出到其他GPIO测试引脚。
我的Atmel ATMEGA328P控制器曾经遇到过类似的调试问题,但8Mhz陶瓷谐振器似乎无法正常工作。我有一台Rigol双通道chechato示波器,并确定了我之前制作的工作板的范围,并且很容易看到8Mhz信号,并且由于探头加载而没有问题。您不必担心探针对晶体的影响。
我发现的主要问题是用于驱动晶振的控制器没有正确设置保险丝以使用外部晶振。一旦烧完保险丝以选择外部晶体,谐振器就会显示出生命迹象!
因此,确保已将连接至晶振的微控制器设置为使用晶振实际上是个好主意,否则,没有驱动力来使其振荡。一旦确定是这种情况,就可以开始查看是否是PCB或其他走线问题,接地问题,错误的引脚等。
外部元件使振荡器看起来对称,但是芯片上没有放大器。位于输出侧的振荡器引脚将具有较低的阻抗,并且将示波器探头放在那里不会像探测输入引脚那样受到太大的影响。
如果振荡,则输出的幅度将大于输入的幅度。它可能也不是一个很好的正弦波。输入端将较低,应为正弦波(已被晶体滤波)。
如果它不振荡,则输入会产生较大的噪声,应该是电源电压的一半左右。输出引脚看上去更干净,可能处于VDD或接地状态。其中一些将随芯片的设计(和配置)而变化。