(无源晶振时钟信号:正弦波)
单片机内部时钟
指使用芯片内部振荡电路,精度不高且温飘较大(在温度变化下频率偏差很大,百分之几)。有时为了节省成本、不需要精确定时及计数的情况下可以不用外部时钟。仅使用内部时钟的电子产品常见于低端电子产品,如电子玩具等。
单片机外部晶振时钟
由RC振荡和石英晶振两部分构成。RC精度低,同样成本也很低,但石英晶振精度高且稳定性好(百万分之几十)。石英晶振的应用常见于绝大多数智能数码产品中,如RTC实时时钟、GPS定位模组、WiFi模组及蓝牙模组等。
通常情况下,智能数码产品的单片机时钟信号由外部振荡和内部振荡两种方式取得。其工作原理如下:
把单片机引脚X1和X2外接晶振(这里指无源晶振),构成单片机的内部振荡方式。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器,并产生振荡时钟脉冲。
单片机在选择外部振荡方式时,将把晶振输出的频率时钟信号引入单片机内,这种方式适宜使单片机的内部时钟与外部更精准的时钟信号保持一致。
由以上可知,单片机外部时钟是外接晶振(时钟精准),单片机内部时钟一般是RC振荡器(误差较大)。一般在系统复位之后都是内部振荡器先开始工作,让系统运转起来,等到外部晶振稳定之后再切换到外部晶振时钟信号。这里有时会出现一个问题:当外部晶振工作不正常时,如频偏严重或停振,单片机将无法捕捉到外部时钟信号,此时系统可能会发生紊乱问题,导致进入系统失败及开机不良。
另外,在低温环境下振荡电路阻抗也会发生变化,当阻抗增加到一定程度时,晶振就会发生起振困难或不起振现象。如果您的产品在低温下出现晶振不起振或者MCU运行不正常的情况(有的芯片外部振荡电路不起振时可能会自动切换为内部时钟),我们就需要给晶振并联一个1M欧的电阻来测试一下。