晶振30MHz.PLLcr=5.定时10秒,写出定时函数?

oscillator)的简称,也称有源晶振,它能够产生中央处理器(CPU)执行指令所必须的时钟频率信号,CPU一切指令的执行都是建立在这个基础上的,时钟信号频率越高,通常CPU的运行速度也就越快。只要是包含CPU的电子产品,都至少包含一个时钟源,就算外面看不到实际的振荡电路,也是在芯片内部被集成,它被称为电路系统的心脏。

如下图所示的有源晶振,在外部施加适当的电压后,就可以输出预先设置好的周期性时钟信号,

这个周期性输出信号的标称频率(Normal Frequency),就是晶体元件规格书中所指定的频率,也是工程师在电路设计和元件选购时首要关注的参数。晶振常用标称频率在1~200MHz之间,比如32768Hz、8MHz、12MHz、24MHz、125MHz等,更高的输出频率也常用PLL(锁相环)将低频进行倍频至1GHz以上。

输出信号的频率不可避免会有一定的偏差,我们用频率误差(Frequency Tolerance)或频率稳定度(Frequency Stability),用单位ppm来表示,即百万分之一(parts per million)(1/106),是相对标称频率的变化量,此值越小表示精度越高。

比如,12MHz晶振偏差为±20ppm,表示它的频率偏差为12×20Hz=±240Hz,即频率范围是(~Hz)

另外,还有一个温度频差(Frequency Stability vs Temp)表示在特定温度范围内,工作频率相对于基准温度时工作频率的允许偏离,它的单位也是ppm。

我们经常还看到其它的一些参数,比如负载电容、谐振电阻、静电容等参数,是神马情况?这些与晶体的物理特性有关。我们先了解一下晶体,如下图所示

石英晶体有一种特性,如果在晶片某轴向上施加压力时,相应施力的方向会产生一定的电位

相反的,在晶体的某些轴向施加电场时,会使晶体产生机械变形;

如果在石英晶片上加上交变电压,晶体就会产生机械振动,机械形变振动又会产生交变电场,尽管这种交变电场的电压极其微弱,但其振动频率是十分稳定的。当外加交变电压的频率与晶片的固有频率(与切割后的晶片尺寸有关,晶体愈薄,切割难度越大,谐振频率越高)相等时,机械振动的幅度将急剧增加,这种现象称为“压电谐振”。

将石英晶片按一定的形状进行切割后,再用两个电极板夹住就形成了无源晶振,其符号图如下所示:

下图是一个在谐振频率附近有与晶体谐振器具有相同阻抗特性的简化电路。

其中:C1为动态等效串联电容;L1为动态等效串联电感;R1为动态等效串联电阻,它是晶体内部摩擦性当量;C0为静态电容,相当于两个电极板之间的电容量;

 这个等效电路有如下图所示的频响特性曲线:

当R1、L1、C1串联支路发生谐振的频率即串联谐振频率(Fr),此时容抗与感抗相互抵消,因此,支路相当于只有等效串联电阻R1。

这个频率是晶体的自然谐振频率,它在高稳晶振的设计中,是作为使晶振稳定工作于标称频率、确定频率调整范围、设置频率微调装置等要求时的设计参数(但不是标称频率),其表达式如下所示:

等效串联电阻R1决定晶体元件的品质因数,品质因数又称机械Q值,它是反映谐振器性能好坏的重要参数,它与L1和C1有如下关系:

R1越大,Q值越低,会导致频率不稳定,反之,Q值越高,频率越稳定,晶体的特点在于它具有很高的品质因素。

等效电路还有一个反谐振频率fL(并联谐振频率),此时串联支路呈现为感抗,相当于一个电感,如下图所示:

此时的频率如下图所示:

通常厂家的晶振元件数据手册给出的标称频率不是Fr或FL,实际的晶体元件应用于振荡电路中时,它一般还会与负载电容相联接,共同作用使晶体工作于Fr和FL之间的某个频率,这个频率由振荡电路的相位和有效电抗确定,通过改变电路的电抗条件,就可以在有限的范围内调节晶体频率。

当负载电容与晶体串联时,如下图所示:

串接的小电容CL可以使石英晶体的谐振频率在一个小范围内调整,此时新的负载谐振频率如下式所示:

当负载电容与晶体并联时,如下图所示:

同样,并联的负载CL也可以小范围调整谐振频率,相应的负载谐振频率如下式:

从实际效果上看,对于给定的负载电容值,F’r与F’L两个频率是相同的,这个频率是晶体的绝大多数应用时所表现的实际频率,也是制造厂商为满足用户对产品符合标称频率要求的测试指标参数,也就是本文最开头介绍的晶振标称频率,当晶体元件与外部电容相连接时(并联或串联),在负载谐振频率时的电阻即为负载谐振电阻RL,它总是大于晶体元件本身的谐振电阻。  

晶体本身是不能产生振荡信号的,必须借助于相应的外部振荡器电路才能实现,下图是一个串联型振荡器电路,其中,晶体管Q1、Q2构成的两级放大器,石英晶体X1与电容CL构成LC电路。在这个电路中,石英晶体相当于一个电感,CL为可变电容器,调节其容量即可使电路进入谐振状态,输出波形为方波。

并联型振荡器电路如下图所示,这种形式读者可能见得更多些,一般单片机都会有这样的电路。晶振的两个引脚与芯片(如单片机)内部的反相器相连接,再结合外部的匹配电容CL1、CL2、R1、R2,组成一个皮尔斯振荡器(Pierce oscillator)

上图中,U1为增益很大的反相放大器,CL1、CL2为匹配电容,是电容三点式电路的分压电容,接地点就是分压点。以接地点即分压点为参考点,输入和输出是反相的,但从并联谐振回路即石英晶体两端来看,形成一个正反馈以保证电路持续振荡,它们会稍微影响振荡频率,主要用与微调频率和波形,并影响幅度。 X1是晶体,相当于三点式里面的电感

R1是反馈电阻(一般≥1MΩ),它使反相器在振荡初始时处于线性工作区,R2与匹配电容组成网络,提供180度相移,同时起到限制振荡幅度,防止反向器输出对晶振过驱动将其损坏。

这里涉及到晶振的一个非常重要的参数,即负载电容CL(Load capacitance),它是电路中跨接晶体两端的总的有效电容(不是晶振外接的匹配电容),主要影响负载谐振频率和等效负载谐振电阻,与晶体一起决定振荡器电路的工作频率,通过调整负载电容,就可以将振荡器的工作频率微调到标称值。

负载电容的公式如下所示:

其中,CS为晶体两个管脚间的寄生电容(Shunt Capacitance);CD表示晶体振荡电路输出管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CO、外加匹配电容CL2,即CD=CPCB+CO+CL2;CG表示晶体振荡电路输入管脚到地的总电容,包括PCB走线电容CPCB、芯片管脚寄生电容CI、外加匹配电容CL1,即CG=CPCB+CI+CL1;一般CS为1pF左右,CI与CO一般为几个皮法,具体可参考芯片或晶振的数据手册(这里假设CS=0.8pF,CI=CO=5pF,CPCB=4pF)。比如规格书上的负载电容值为18pF,则有

以上公式原理太过复杂,以下有更简单更稳定更精确的器件,

有源晶振将所有与无源晶振及相关的振荡电路封装在一个“盒子”里,不必手动精确匹配外围电路,不同的输出频率应用时,只需要采购一个相应频率的“盒子”即可,不再使用繁杂的公式计算来计算去,可以节省很多脑细胞做其它更多意义的工作。

封装后的“盒子”示意图如下所示:

第四阶段是依靠实验板,学习掌握单片机的组合语言指令系统和简单编程。同时和前面所学硬体知识结合组装,起到主学软体,巩固硬体的双重作用。开始时可用别人编的简单程式在实验板上进行验证、分析,主要是熟悉该学习方法,在应用方面主要针对单片机I/O各项介面的使用,如A/D,D/A,PWM输出口的应用,LCD与VFD的控制,以及如何规范各项串列输出入口的通讯协定等,对其所控制的各项元器件须先分析驱动能力,如电流电压问题等。

90. 用一个12M的晶振,怎么能实现480MB/S的数据传输率呢?

答:在集成了PLL的12MHz的即可达到480MHz,相位锁定回(环)路(Phase Locked Loop,PLL)又被称为相锁回路或锁相回路,其原理是经由闭回路自动控制系统的反馈作用,驱使另一个动作不精准、频率变动量高的作用元件的动作频率,使其能快速且一直保持稳定地与正确的频率参考源达到同相甚至是同相又同频的状态,如此即是相位锁定(Phase Locked)的状态,我们若以电路外部精准、频率变动量极低的振荡频率源作为基准参考,来驱使电路内部精准、频率变动量极低的振荡频率源,使其达成相位锁定的状态,即可用来作为通讯系统的调变/解调电路。

一般480MB/S的数据传输率是运用在USB 2.0,当通用序列汇流排(Universal Serial Bus)规格于1996年1月发表时,代表业界成功研发出一套连结中低速频宽的周边元件与个人电脑之间的低成本串连管道,但是仍缺乏支援高速宽频的应用能力。于2000年4月,USB再度推出全新一代的USB 2.0版本的技术规格,可将讯号传输速度提升整整40倍,由原先USB 1。0的最高12MHz的速度至现今USB 2。0的高速480MHz,并扩增了更先进的功能,如新型的传输装置以提高频宽使用率与增加传输装置及主机控制器之间的附加功能。

针对实际上可供使用的频宽来说,资料的传输频宽速度由原先的1 Mbytes/sec左右提高至50 Mbytes/sec,这样一个大幅度的频宽增加主要归功于USB 2.0规格运用了微讯框(micro-frame)、可容纳更多资讯的传输封包、更频繁的传输次数、分割式传输处理(split transaction)、以及一些新的执照(token)等崭新技术。USB 2.0装置的架构同时增加了两项全新的描述元(descriptor),即装置认可(Device Qualifier)与其他的速度配置(Speed Configuration),可用来明确标示出资料传输装置在其它运作速度下的功能表现。

针对电子规格的变动:在主机与新型的高速控制器之间的连结则重新定义,以支援现今高达480MHz的传输效能表现。新的高速拓璞新的标准采用90W 的差分阻抗(differential characteristic impedance)搭配差分电流模式讯号(differential current mode signaling),并采用相同的NZRI编码机制(NZRI

91. 在单片机程序设计中遇,从被嵌套的高级中断中如何强行返回到主程序。子程序返回指令在恢复堆栈后可不可以用跳转指令替代返回到主程序中?

答:如果是51系列,那直接用POP指令就可以实现强行返回;如果是用RISC结构的单片机(HOLTEK 单片机是RISC结构的),那一般都是硬件堆栈,没有PUSH和POP指令,所以子程序调用和返回指令必须成对使用。

92. 对单片机的速度,有何要求?Holtek的单片机能符合该项应用吗?

答:目前HOLTEK的单片机速度最高为8MHz,一条指令执行时间为0。5us,以这样的速度,可以满足大多数项目的开发;不知你说的具体是什么项目。目前HOLTEK单片机主要有OTP和Mask两种,将来会推出Flash的单片机;但HOLTEK的开发系统很完善,在开发阶段,HOLTEK还可以适当提供免费样片,相对来说,开发成本并不会比用Flash来得高。

93. 是一种功能灵活和强大的软硬件嵌入式开发系统,能否用PSoC代替部分单片机系统呢?

答:在一般在嵌入式系统的应用中,都可能需要使用几十种甚至是更多的类比或数位周边元器件。熟悉MCU开发的工程师们都知道,在MCU的开发过程中,最需要花时间和精力的就是元器件的选购,以及元器件相容性方面的考虑。目前在市场上有成千上万不同种周边元器件,设计人员要想从中寻找到适合自己应用的元器件是一件令人头痛的事情。因此,设计工程师的理想方案似乎是采用定制的SoC晶片,但是如果采用定制微控制器、ASIC和PLD器件,一方面价格比较昂贵,另一方面需要设计人员具有专门的设计技能。因此,研制一个高效率、周边元器件可嵌入配置的、低功耗的8位微控制器是很有必要的。

MicroSystems公司在最近推出的新一代功能强大的8位元可配置的嵌入式单片机。该系列单片机与传统单片机的根本区别在于其内部集成的数位和类比block模组,工程师可以根据不同设计要求调用不同的数位和类比block模组,完成晶片内部的功能设计;实现使用一块晶片就可以配置成具有多种不同周边元器件的微控制器,建立一种可配置嵌入式微控制器;用以实现从确定系统功能开始,到软/硬体划分,并完成设计的整个过程。因此,PSoC能够适应非常复杂的即时控制需求,使用它进行产品开发可以大大提高开发效率,降低系统开发的复杂性和费用,同时增强系统的要可靠性和抗干扰能力;因此,它特别适用于各种控制和自动化领域。所以PSoC的动态配置能力给开发者提供了快速方便的编程和开发方法,同时也为单片机的应用开拓了更大的空间。因此利用片内集成的闪速记忆体可以降低产品开发成本,缩短产品开发周期。因此,此MCU结构具有广阔的应用推广前景。

94. 单片机对modem要进行哪些初始化操作?

答:一般单片机的MODEM通讯必须要有两个背景知识,一个是AT命令集,另一个是通用非同步接收发送器(UART)。

下面介绍我通讯程式例子中涉及到的AT命令。

Dn:拨号命令。该命令使MODEM立即进入摘机状态,并拨出跟在后面的号码。D命令是基本的拨号命令,它受到其他命令的修饰可构成MODEM何时拨号以及如何拨号等操作。

,:标准暂停。我们常常碰到拨打外线电话时需要暂停一下,等听到二次拨号音(外线)之后才能再拨后续的号码。缺省时暂停时间为2s(秒),它由S8寄存器指定。

Sn:表示MODEM内部的寄存器。

S0:自动回应。如果要求MODEM具有自动回应特性,则应该预先将MODEM的S0寄存器设置为非0。

S8:逗号拨号修饰符的暂停时间。该寄存器决定了当MODEM在拨号中遇到逗号(,)时应该暂停的时间。

l 通用非同步接收发送器UART

深入理解UART内部结构以及内部寄存器各位的含义,详细了解资料发送和接收的过程,有助于编写出高效、稳定的程式。一般介绍编写基本通讯程式需要知道的寄存器。实际的ADDRESS由具体接线决定。

l 串列传输速率除数锁存器(LSB、MSB)

在通讯之前要进行一些参数初始化,串列传输速率是首先应该考虑的一项。该寄存器是一个16位的寄存器,分为低8位(LSB)和高8位(MSB)寄存器。

另外单片机访问的是串列传输速率除数锁存器LSB/MSB。一般常用的工作频率是1。8432MHz。这个频率除以16就是串列传输速率的时钟频率,用于控制发送和接收资料的速度。

下面给出串列传输速率除数锁存器值的计算公式:

串列传输速率除数锁存器值=工作频率/(16×期望串列传输速率)=1843200/(16×期望串列传输速率)

读操作单片机访问接收缓冲寄存器(RHR),写操作单片机访问发送保持寄存器(THR)。

资料发送和接收模式的选择。常用的两种模式:FIFO和DMA。其中DMA又有两种模式DMA的模式0、DMA的模式1可供选择。

我使用的单片机是AT89C51,试过用弹出指令强行返回中断的方法,确实能够返回主程序,具体做法是:首先将堆栈中的地址弹出,然后压入主程序中新的地址,最后执行RETI指令就可以返回到该地址了。如果弹出指令执行完后直接用跳转指令而不通过RETI指令也能返回到主程序,但下次中断来时将不能再次响应。请问是从被嵌套的高优先级中断程序中怎样返回主程序,是不是还必须得通过最低级中断才能返回。要是直接返回的话,是否下次中断还能够正常响应?

答:对于51系列的单片机而言,当中端响应发生时,会将相应的优先级有效职位;当退出中断时,执行RETI,单片机又自动将优先级有效触发器清0。因此,如果直接使用跳转指令从中断子程序出来的话,单片机没有清0优先级有效触发器,下一次中断发生时就不能响应了。

如果要从高优先级中断程序返回主程序的话,必须执行两条RETI指令,才可以清除高/低优先级有效触发器。具体的程序可以是:

POP ACC ;将高优先级子程序返回地址出栈

POP ACC ;将低优先级子程序返回地址出栈

PUSH DPL ;将LABLE2,即需要返回的主程序地址入栈

我要回帖

更多关于 若采用6mhz的晶振 的文章

 

随机推荐