基于八位微控制器AN96103的X-tal振荡器应用指南摘要所设计的八位微控制器有时会对有关晶体振荡器电路提出疑问,在应对这些客户问题上,那些在Eindhoven和 Zuerich的技术组已经积累了许多经验。
这篇报告就反映了一些这方面的经验知识。
在该领域的工程师以及参加研发与微控制器有关产品的工程师缺乏具体的振荡器知识,如果他们阅读了这篇文章,将会对振荡器知识有更新的认识,解决这个领域上的问题将会变的更容易。
1.需要注意和避免的问题在早期的电子业上,想要设计一个不震荡的电路的确是具有挑战性的,没有可供参考的电路构成特性材料以及有限的震荡现象知识是造成这种结果的主要原因。
电子业的发展已经走了漫长的道路,直到今天,这种构成这种电路的特性终于被定义出来了。
震荡现象以及集成振荡器已经发展成为了一门科学。
关于震荡电路和一体化晶体振荡器的问题,目前有许多科学出版物和教材针对这方面为你提供更高层次的知识。
本文章不再赘述。
在许多数字电路中,振荡器电路也集成在同一个芯片上为数字电子产品提供时钟信号,通常只有振荡器的灵活部分是嵌入式,但这一部分却不是被动频率的决定部分。
这些部件的构成部分通常是由其他制造商所提供的。
这种形式通常也是目前提供微控制器的最有效途径。
“怎样确保振荡?”从应用的观点看,这是一个非常有法律性的问题。
这篇文章是根据应用领域的反馈,提供一些背景和实践知识,以确保接近解决问题的最佳答案。
(在电路图中,x-tal往往表示石英晶体)2.振荡器电路大多数微控制器设备都包含一个振荡器电路((Xtal1,Xtal2),通过部晶振和外部电容器来实现振荡。
振荡器基本上是由一个N沟道和一个P沟道的晶体管构成的逆变型门。
它们的主要区别是在数字式逆变阶段中连接输入和输出之间的是一个集成偏置电阻(也称为:反馈电阻)。
该器件(半导体)将输出电压反馈到输入部分,其目的是在模拟工作阶段使其达到平衡。
在静态状态下,将产生一个直流输入和输出,其数值大约是CMOS器件中电压的1/2。
2.1 跨电导当一个电压变量驱动该振荡器,系统通过一个输出外部负载输出一个电流变量。
dVi/dIo关系(输入电压/输出电流)定义为振荡阶段的跨电导,用符号购gm表示跨电导,输入电压的变化造成输出电流的变化,单位是A/V或是S(西门子)。
如图3所示为振荡器的标准电路。
输出(Xtal2)部分和输入(Xtal1)部分通过一个石英晶体相连接,并且输入和输出通过电容器接地。
这是一个基本的皮尔斯振荡器。
在Xtal2输出引脚上产生一个正弦波,跨电导是影响振荡阶段的相关参数。
gm的一个定值是保证启动的重要参数。
在电源启动噪音信号或是在瞬态期间都会把一定的能量输入到x-tal振荡器中,使之启动并发生谐振。
这是任何一个振荡阶段基本需求之一。
3.外部组件在外部器件中,频率的决定性因素是石英晶体。
基本上是石英晶体使得LC 电路产生串联谐振,如图4所示,是一个常用的等效电路。
电感值和电容值决定着谐振频率,因此成为串联谐振。
C0代表并联电容的晶体,其数值要比电容值大。
但其影响的共振频率非常小。
晶体频率是10 MHz时,其相应的等效组分的值为:L = 0.01 H, C = 0.026 pF, Rx = 10Ω,Co = 8.5 pF。
在图3中基本的皮尔斯振荡器电路中,外部的两个电容值影响着CO等效值。
事实上,两个电容器串联分流晶体,这意味着CO值增加了。
4.振荡条件假设振荡器和外部元件都产生时钟信号。
难道连接的外部件就是振荡器震荡的唯一条件吗?再次,振荡条件定理和巴克豪森规则涵盖了振荡条件基础。
然而在实际情况下有许多电路参数决定是否有电路展示可靠的振荡。
其电路参数如下:- Vdd, 电源电压- fosc, 振荡频率- gm, 振荡器跨电导- Rx, 等效电阻值- C0, 总并联电容等效值- 闭环增益。
对于晶体元件的参数要超过10个,首先是对于一个实际部件的评价不可能包括所有的参数。
第二个原因是有些工程人员并不知晓某些参数应用在哪些部件上。
难道这就意味着振荡现象就是运气的事情吗?没有太多详尽的理论中说明阻抗方法可以用来表明预期振荡。
如图5所示,其作者的想法是有小的跨导至少能够补偿电阻,图中表明电容值、电阻和振荡器之间的关系,当电阻和电容的坐标在上面的区域时,表明不满足振荡条件。
当电容值和电容值交叉点接近特征值或在其下面的区域,则说明此时有合适的振荡。
现在的困难是确定Rx轴和CO轴上的实际值以及确定正确的图形和位置的特点。
然而在实际上,如图3中的电路图表明:当C0约为10 pF和Rx为100欧姆或更小时。
并且C1=C2=30Pf时,设备工作在安全区域。
较小的电阻值允许一个较大的电容值,反之亦然。
5. 驱动问题我们也曾担心振荡会发生别的问题?到目前为止,大部分知识是以标准电压为5伏的微控制器为基础的,其振荡器阶段的目的是要推动约1兆瓦的晶体。
这就意味着,当电压值达到驱动值时晶体本身立即动作。
这个晶体参数称为驱动级并且是指定的晶体参数。
6.实际的振荡器电路所有的5V的微控制器都由一个皮尔斯振荡器(Xtal1,Xtal2)组成并且通过外部X-tal和两个电容器实现振荡。
在大多数数据表中,此电路为标准电路。
在某些情况下,大部分数据表能更方便的修改标准电路以减少干扰和或补偿外部影响。
6.1 减小幅度如在减少干扰过程中,降低振荡器振幅是一个经常使用的办法。
在图5中的电路图,引用“建议减小558振荡器的干扰”(见参考),在此电路中,在管脚Xtal2上产生一个正弦波信号。
此过程是通过使用非对称的电容器并在输入中(XTAL1)使用最大的电容器来实现。
在这种形式下,XTAL的电压将减小,当放大器的输入电压很小时,此时不会进入饱和,因此会产生一个谐波信号。
一用户修改了图5的电路,如图6所示。
很显然回路增益是通过交换两个电容器改变的,并且通过分流对X-tal进行补偿。
但是却产生了一个失真的信号。
增加了输出电容器,这电容通过XTAL2产生更大的电流。
6.2直流偏移修改电路时利用一系列的电容器,其主要原因是要考虑湿度对振荡电路元件的影响(见图7),也能影响图5的基本电路。
由于水分的传导,造成振荡阶段的非对称偏差,恰恰这些偏差会影响振荡,从而电路引进了直流偏移。
这是由于印刷电路板或是振荡器电路外部元件造成的,这个故障能被消除掉,其方法是使用一个无临界值的外部电容器且该电容器值大于C1和C2的值(见图7)。
类似于直流偏移的另一种降低敏感的外界环境的可能性的方法是:用一个电阻对振荡器分流。
利用这种方式环增益和输入灵敏度都会降低这个也可用于幅度减少。
另外修改C1的值是很有必要的(见图8)。
对559设备和那些电路例子进行了测试,他们大约在3V左右发生振荡。
6.3 其它驱动电路另外的常见问题是增加更多的微控制器用于同一应用程序中,或者是许多微控制器与需要时钟信号的IC同时使用时,所有这些情况中可能要使用晶体。
如图9中展示了应用标准的振荡器电路应用在上面的情况中。
微控制器1的输出端Xtal2直接与微控制器的输入端Xtal1相连。
第二个微控制器输出端Xtal2不与任何端子相连。
正如前文所述,这个电路中的微控制器1就是所改后的。
在这些情况下,微控制器2的输入端总与微控制器1的输出端相连而不是直接与X-tal 相连。
这在振荡电路中能够减小外部负载的影响。
为避免微控制器2的直流偏移(直流偏移可能导致X-tal的更多分对称占空比信号),两微控制器通过电容器相连直接解耦,如图10所示。
两电路图在大多数微控制器中都有所应用。
然而有些微控制器有两个板载振荡器,一个直接是时钟信号,一个是PLL时钟。
在最后一种情况中,X-tal的频率通常是32kHZ。
此振荡器在输入和输出中有下拉装置。
这就意味着增加晶体管,这些晶体管在一定条件下导通。
当振荡器不能工作时,那些晶体管通过Xtal1和Xtal2接地。
为了避免太大的电流流入下拉晶体管中,建议在互连Xtal4输出端接一个电阻,如图11。
7.仿真和X数字振荡器开发应用微控制器通常在微控制器中使用。
在仔细设定振荡器周围微控制器的值,微控制器将被移除,取而代之的将是一个连接仿真装置的连接器,期望的结果也产生相同的振荡特性。
甚至在插入电缆后,会大大影响振荡(特别是在高频下),两个低成本的仿真器用不同的方式处理这个问题。
7.1 PDS-51方法在PDS系统中解决问题的方法是不使用振荡器的目标硬件,该系统有一个单独的振荡器电路且从应用中将目标X-tal中移除,然后插到PDS51的子板上。
当应用程序需要信号 Xtal2,在目标程序中存在该信号(驱动其他电路),这里需要一个跳线设置,注意从PDS-51中的信号通常是方波信号。
当目标微控制器不使用本身的振荡器,而在输入Xtal1获得信号是通过另外的来源,当具有TTL 驱动能力时,这个信号可用于仿真器。
7.2 DS-750 /EB-51方法另外两种常用的模拟器是DS-750 /EB-51,这两种系统安装了几个固定的内部振荡器,其频率可供用户选择。
在大多数应用程序中,这将可能包括可用的所有频率。
当应用程序使用一个不可用的频率,这时将有一个去外部的选择键,这意味着仿真微控制器将在目标应用程序中使用振荡器部件。
如前所述,这意味着在振荡器和外部件之间插入一根电缆。
在这两种情况下(一种情况是频率较高,另一种情况是Xtal2驱动其它电路)连接器和电缆的感应值和电容值都会大大影响振荡器的动作。