虽然现在嵌入式的应用非常多,但是单片机的应用也还有非常多的应用之处。尤其是一些成本要求非常高的地方。本文将就常见的晶振问题加以说明和介绍。
单片机晶振不起振原因分析
遇到单片机晶振不起振是常见现象,那么引起晶振不起振的原因有哪些呢?
(1) PCB板布线错误;
(2) 单片机质量有问题;
(3) 晶振质量有问题;
(4) 负载电容或匹配电容与晶振不匹配或者电容质量有问题;
(5) PCB板受潮,导致阻抗失配而不能起振;
(6) 晶振电路的走线过长;
(7) 晶振两脚之间有走线;
(8) 外围电路的影响。
解决方案,建议按如下方法逐个排除故障:
(1) 排除电路错误的可能性,因此你可以用相应型号单片机的推荐电路进行比较。
(2) 排除外围元件不良的可能性,因为外围零件无非为电阻,电容,你很容易鉴别是否为良品。
(3) 排除晶振为停振品的可能性,因为你不会只试了一二个晶振。
(4) 试着改换晶体两端的电容,也许晶振就能起振了,电容的大小请参考晶振的使用说明。
(5) 在PCB布线时晶振电路的走线应尽量短且尽可能靠近IC,杜绝在晶振两脚间走线。
单片机晶振电路中两个微调电容不对称会怎样?相差多少会使频率怎样变化?我在检测无线鼠标的接受模块时,发现其频率总是慢慢变化(就是一直不松探头的手,发现频率慢慢变小)晶振是新的!
答:电容不对称也不会引起频率的漂移,你说的频率漂移可能是因为晶振的电容的容量很不稳定引起的,你可以换了试,换两电容不难,要不就是你的晶振的稳定性太差了,或者你测量的方法有问题.
51单片机时钟电路用12MHZ的晶振时那电容的值是怎样得出来的?拿内部时钟电路来说明吧!
答:其实这两个电容没人能够解释清楚到底怎么选值,因为22pF实在是太小了。
这个要说只能说和内部的振荡电路自身特性有关系,搭配使用,用来校正波形,没有人去深究它到底为什么就是这么大的值。
晶振为何被要求紧挨着IC,单片机晶振不起振?
答:原因如下:
晶振是通过电激励来产生固定频率的机械振动,而振动又会产生电流反馈给电路,电路接到反馈 后进行信号放大,再次用放大的电信号来激励晶振机械振动,晶振再将振动产生的电流反馈给电路,如此这般。当电路中的激励电信号和晶振的标称频率相同时,电 路就能输出信号强大,频率稳定的正弦波。整形电路再将正弦波变成方波送到数字电路中供其使用。
问题在于晶振的输出能力有限,它仅仅输出以毫瓦为单位的电能量。在 IC(集成电路) 内部,通过放大器将这个信号放大几百倍甚至上千倍才能正常使用。
晶振和 IC 间一般是通过铜走线相连的,这根走线可以看成一段导线或数段导线,导线在切割磁力线的时候会产生电流,导线越长,产生的电流越强。
现实中,磁力线不常见,电磁波却到处都是,例如:无线广播发射、电视塔发射、手机通讯等等。晶振和IC之间的连线就变成了接收天线,它越长,接收的信号就 越强,产生的电能量就越强,直到接收到的电信号强度超过或接近晶振产生的信号强度时,IC内的放大电路输出的将不再是固定频率的方波了,而是乱七八糟的信 号,导致数字电路无法同步工作而出错。
所以,画PCB(电路板)的时候,晶振离它的放大电路(IC管脚)越近越好。
单片机晶振与速度的疑问,执行一条指令的周期不是由晶振决定的吗。那么比如51单片机和MSP430,给51接高速晶振,430接低速的,是不是51跑的要快?是不是速度单片机速度仅仅与晶振有关,关键是单片机能不能支持那么大的晶振?我的理解对吗?
答:每个单片机的速度是受到内部逻辑门电平跳变速度影响的。
你说的没错,对于一个51,给他用更高的晶振,速度会快些。
但是对于高级的单片机就不一样了。高级单片机内部,一般都是有频率控制寄存器的,所以,简单的增加晶振,可能达到单片机的极限,导致跑飞。
单片机的运行速度和晶振大小的关系,若单片机的最高工作频率是40M,晶振是否可以选择24M或更高,但不超过40M,这样单片机的运行速度是否大增?长期在此工作频率下对单片机是否有不良影响?单片机对晶振的选择的原则是怎样的?谢谢!
答:当然是有影响的,单片机的工作速度越快,功耗也越大,受干扰也会越厉害,总之最高能跑40M的,跑不超过40M的是没有问题的,只是对相关的技术(如PCB的设计元件的选取等)会高去很多. |