当前位置:首页 > 技术心得 > 正文内容

用反相器和晶振做晶体振荡电路

xjtudll14年前 (2012-08-04)技术心得61710

采用下图所示电路可以实现方波时钟信号输出的功能:

clip_image001

电路分析:

时钟信号为CMOS电平输出,频率等于晶振的并联谐振频率。

(1) 74HC04在这里相当于一个有很大增益的放大器;

(2) R2是反馈电阻,取值一般≥1MΩ,它可以使反相器在振荡初始时处于线性工作区,不可以省略,否则有时会不能起振。

(3) R1作为驱动电位调整之用,可以防止晶振被过分驱动而工作在高次谐波频率上。

(4) C1、C2为负载电容,实际上是电容三点式电路的分压电容,接地点就是分压点。以接地点即分压点为参考点,输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反馈以保证电路持续振荡。C1、C2会稍微影响振荡频率

74HC04可以用74AHC04或其它CMOS电平输入的反相器代替,不过不能用TTL电平输入的反相器,因为它的输入阻抗不够大,远小于电路的反馈阻抗

实际应用:

(1)要处理好R1和R2的值,经试验,太小的R1或太大的R2会有可能导致电路工作在晶振的高次谐振频率上(常见的是3次谐波,10MHz的晶振会产生30MHz的频率输出)。对于10MHz的晶振,采用R1=220Ω、R2=1MΩ可以使电路稳定输出10MHz的方波时钟信号。

(2)C1和C2如果太小的话,晶振有可能不起振。

(3)74HC04中未使用的输入引脚要接地或VCC,以免造成耗电过大。

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/240/

分享给朋友:

“用反相器和晶振做晶体振荡电路” 的相关文章

Keil得到C编译之后的汇编代码

Keil得到C编译之后的汇编代码

在Options for Target --> Listing标签页下 在C Compiler Listing: \*.lst部分中勾选Assembly Code,这样生成的LST文件中就会包含汇编源码了。 找到相应的lst文件,如图所示: 用记事本打开,里面就有汇编代码了...

二极管电容效应

二极管电容效应

二极管具有电容效应。它的电容包括势垒电容CB和扩散电容CD。 半导体二极管等效模型 1、势垒电容CB PN结内缺少导电的载流子,其电导率很低,相当于介质;而PN结两侧的 P区、N区的电导率高,相当于金属导体。从这一结构来看,PN结等效于一个电容器。 事实上,当PN结两端加正向电压时,PN...

请确保此文件可访问并且是一个有效的程序集或COM组件

核心:重新注册dll 在项目中添加一个dll的引用时出现错误: 请确保此文件可访问并且是一个有效的程序集或COM组件 解决方法:运行--cmd--regsvr32 dll的绝对路径名(路径实例:c:/dll/xxx.dll) 如果是.NET的COM组件,要用Regasm注册...

Xcode Warning:No rule to process file xxx 解决

Xcode Warning:No rule to process file xxx 解决

在编译程序的时候,Xcode给出了警告:warning: no rule to process file '$(PROJECT_DIR)/xxx.h' of type sourcecode.c.h for architecture armv7。如图所示: 从warning中我们可以看出是某个.h...

C#中实现VB中的CreateObject方法

经常看到有些VB的例子中直接用个CreateObject就可调用系统功能(大多是COM对象),像用户设定,网络设定等等。虽然C#中可以通过使用VB的命名空间的方法来调用CreateObject函数,但是这样比较没什么用,因为生成的对象的所带有的方法都不能使用。C#中还可以直接用添加引用的方式来调用一...

error 65: access violation at 0x40021000 : no 'read' permission

error 65: access violation at 0x40021000 : no 'read' permission

经过测试发现,该办法仅仅适合STM32F103,对于STM32F107,即使这样修改,还是提示同样的error的。 我是在Win7 64bit下实验的 以下是参考资料: https://blog.csdn.net/beready/article/details/24668529 开发环境:keil...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。