精华内容
下载资源
问答
  • 常用晶振频率

    2012-10-07 10:22:35
    常用晶振频率,看看可以了解晶振有哪些常用的,都用在什么场合
  • 当前,国内外在研究晶体振荡器的老化和随机噪声、分析晶振频率误差特性方面提出了很多方法,比较常见的有时间对数线性模型法、自适应滤波法及非线性时变预测法。前两种方法的缺点是参数较多,选择合适的参数较难,非...
  • 调用MAX10片内晶振,实现数码管显示,可以与实际时间进行对比,测试内部晶振频率
  • 摘 要: 为满足三维大地电磁勘探技术对多个采集站的同步需求,基于FPGA设计了一种晶振频率校准系统。系统可以调节各采集站的恒温压控晶体振荡器同步于GPS,从而使晶振能够输出高准确度和稳定度的同步信号。系统中...
  • 晶振一般叫做晶体谐振器,是用电损耗很小的石英晶体经精密切割磨削并镀上电极焊上引线做成的一种机电器件,本文主要介绍的是晶振频率设为32.768的原因。
  • 针对目前广泛对高精度频率源的需求,利用FPGA设计一种恒温晶振频率校准系统。系统以GPS接收机提供的秒脉冲信号为基准源,通过结合高精度恒温晶振短期稳定度高与GPS长期稳定特性好、跟踪保持特性强的优点,设计数字...
  • 三维大地电磁勘探技术是以面元为单位,多分量采集站为中心,多远参考、互参考和...这样不仅克服了GPS授时信号易受外界干扰的缺点,也解决了晶振频率随时间漂移的问题,能获得较为理想的同步信号。为了使本地晶振长时间
  • 常用晶振频率 频率范围32k~1000多M不等,使用查询 适合电子产品开发使用
  • 基于FPGA的恒温晶振频率校准系统的设计.pdf
  • 当前,国内外在研究晶体振荡器的老化和随机噪声、分析晶振频率误差特性方面提出了很多方法,比较常见的有时间对数线性模型法、自适应滤波法及非线性时变预测法。前两种方法的缺点是参数较多,选择合适的参数较难,非...
  • 时钟周期=晶振频率的倒数,晶振频率的值即为时钟频率的值。 3、机器周期 在计算机中,通常将一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、写操作等,每一项工作称为一个基本...

    一、晶振与定时器

    1、晶振频率

    单片机开发板在成型之时,已经确定了相应的晶振频率,51单片机最常用的有11.0592MNz、12MHz。

    2、时钟周期

    时钟周期=晶振频率的倒数,晶振频率的值即为时钟频率的值。

    3、机器周期

    在计算机中,通常将一条指令的执行过程划分为若干个阶段,每一阶段完成一项工作。例如,取指令、存储器读、写操作等,每一项工作称为一个基本操作,完成一个基本操作所需要的时间称为机器周期(注:单片机中“计数器”完成+1这个过程也为一个机器周期)。一般情况下,一个机器周期由若干个时钟周期组成,一般由12个时钟周期组成。

    4、定时器初值计算

    定时器被启动后,就会在预设的初值基础上+1,当计满时重新归0。51单片机的定时器寄存器为16位,如果采用的晶振频率为12MHz,则根据上面1、2、3所讲可知机器周期为12*(1/12MHz)=1us。由此我们可以得知,此51单片机的定时寄存器实现+1这个操作过程需要花费1us时间,如果此16位寄存器从0开始计数,则计到此寄存器下次为0需要2的16次方(65535)个数,所以定时器一次最多计时65536us.

    如果需要的定时时间小于65536us,那么就需要给定时器寄存器预设一个初值N,N=(65535-要计时的时间)。

    此外定时器寄存器分为高八位THn和低八位TLn(n代表定时器0、1、2…)将高八位THn装入N/256进行取模运算,低八位TLn装入N%256取余。
    TH0=(65535-T)/256
    TL0=(65535-T)%256

    二、51单片机串口波特率计算

    1、方式0的波特率,固定为晶振频率的1/12.

    2、方式二的波特率,取决于PCON寄存器的SMOD位。(PCON除最高位SMOD外,其他位均为虚设)
    计算方法如下,SMOD=0时,波特率为晶振频率的1/64;SMOD=1时,波特率为晶振频率的1/32.

    3、方式1和方式3的波特率,均有定时器溢出率决定。
    公式计算如下:

    在这里插入图片描述

    三、不准确的晶振频率造成的影响

    1、为什么51单片机晶振为11.0592MHz?

    首先介绍一下,单片机根据振荡输入端每N个周期作为一个机器周期分为1T、4T、6T、12T单片机,51单片机为12T单片机。那么当波特率为9600时,分频系数需要用时钟频率最小单位区分,即晶振频率/机器周期包含多少个时钟周期12MHz的51单片机就需要用1M去分,而1M/9600=104.167,不为整数倍,会导致数据传输的两端因为时钟误差,导致数据传输错误。而采用11.0592MHz即可解决,11.0592/12/9600=96,为整数。

    2、为什么单片机不设置为1000的整倍数?

    (1)为了保证有效通讯,根据电、传输介质等的物理特性结合串口设备使用要求,确定RS232最大传输速率只能是115200,然后逐级二分得到57600,28800,19200,9600…为适应这些速率,设计相应的晶振频率。
    (2)电话线路带通是300Hz~3KHz,用了2400Hz信号,对应波特率2400,由于基本频率确定了,以后采用的提高通讯速率的方法都是在2400基础上倍频,进而形成了9600、19200。

    3、对串口通信影响

    如果设置的波特率为9600,那么理想的通信速度也是9600,但是不准确的晶振会导致定时器溢出误差,进而导致波特率误差,使得通信失败。
    出现此类情况,可以在不更换晶振的情况下采取两种方案进行处理,降低误差,就可以进行通信
    (1)改变SMOD位状态,置0或置1。
    (2)尝试使用其他波特率。

    4、对pwmLED调光影响

    LED调光分为模拟调光和数字调光,分别采用改变电阻值和PWM控制正向电流导通时间的方式。其中数字调光又称为PWM调光。
    PWM调光,通过PWM波开启和关闭LED来改变正向电流的导通时间,以达到亮度调节的效果。当频率超过100Hz即周期0.01s,人眼看到的就是平均亮度,而不是LED在闪烁。而亮度的调节反馈到人眼是一个累计的过程,即亮的时间越长,人眼感觉LED越亮。
    虽然不准确的晶振频率会使单片机有不同的机器周期,但是我们在定时器计数时,可以针对相应的晶振频率计算出相应机器周期,设计定时器初值时,设置为机器周期整数倍,进而避免误差的产生。

    5、对舵机影响

    与led调光不同的是,采用脉冲波对舵机进行控制时,转动角度有具体的脉冲宽度要求,因此定时器的初值固定,在这种情况下,不能根据相应晶振对应的机器周期,对脉冲宽度进行微调。那么不合适的晶振必然会导致定时器的溢出误差,进而使脉冲波受到影响,使舵机转动角度出现偏差。

    展开全文
  • 在之前写的文章[1] ...发现的现象是晶振频率变成了8M。但这里要说的是,如果出现这种现象,请直接换晶振,否则将画大量时间在时间异常的处理上。 如果知道出现这种异...

    在之前写的文章[1] https://blog.csdn.net/NoDistanceY/article/details/103858833 中,我提及了我将NUCLEO-H743ZI2评估板进行修改,将通信芯片上25MHz的晶振换到MCU的HLE的晶振接口上。发现的现象是晶振频率变成了8M。但这里要说的是,如果出现这种现象,请直接换晶振,否则将画大量时间在时间异常的处理上。

    如果知道出现这种异常的原理,请解释一下。

    使用到的代码

    uint32_t TIM_get_TIM2_CNT(void)
    
    {
    
    return (TIM2_Handler.Instance->CNT)&(0x7fffffffffffffff);
    
    }
    
    void TIM_set_TIM2_CNT(uint32_t cnt)
    
    {
    
    HAL_TIM_Base_Stop(&TIM2_Handler);
    
    TIM2_Handler.Instance->CNT = cnt & (0x7fffffffffffffff);
    
    HAL_TIM_Base_Start(&TIM2_Handler);
    
    //TIM2_Init(1000-1,2000-1);
    
    }

     

    异常分析

     

    虽然这里可以看出频率大概是8M,但正常的25M晶振测量的震荡频率就是25M,并且是正弦波波形,由于当初没记录,请遇到类似情况的人自行用示波器检测。另外,因为是大概估计,并不能准确的获取震荡频率的误差值。

     

    黄线时GPS芯片的PPS信号,这个信号每1s中会得到一个误差为微妙级的持续时间为100ms的秒冲,它将作为晶振频率评估的参考对象。设置一个每10ms产生一次的定时器,有定时器控制一个GPIO翻转,GPIO信号也接到示波器,即为上图的蓝线。当收到PPS信号时,用TIM_set_TIM2_CNT(0)重置定时器,于是在下一个1s到达时,假设测得的是99个完成10ms数据段和一段不足10ms的时间段(如上图所示),利用游标卡尺的思想,可知时间1s种慢了2.5ms,即可根据此值计算出晶振的频率实际为8*(1-0.0025)=7.98MHz。

     

    正常晶振的评估

    正常晶振的误差较小,不能通过下图来看出误差。

    定时器方案不变,但有定时器中寄存器值来评估晶振。这个增量寄存器时每10ms增加1000,并到1000时自动归零。于是,在1PPS中断发生时,读取一下这个增量寄存器的值,并观察每秒钟的区别。

    以我测试为例,使用函数TIM_get_TIM2_CNT()获取寄存器值,第1s测得531,第2s测得532,依次规律每秒增加1。也就是说晶振比参考源每秒增加10us,这就是晶振的误差。

    当然,更准确的方法是通过更长时间尺度的测量来测得晶振的误差了。

    展开全文
  • STM32F4修改晶振频率

    2021-02-24 13:20:53
    新建工程stm32f4晶振频率为25mhz,通常开发板外接的晶振频率为8mhz,串口打印输出会乱码,需进行一下修改: 点击system_stm32f4xx.c文件,找到 #define PLL_M 25 这条语句,将参数值25改为8,在这条语句上面,右键点击...

    新建工程stm32f4晶振频率为25mhz,通常开发板外接的晶振频率为8mhz,串口打印输出会乱码,需进行一下修改:

    点击system_stm32f4xx.c文件,找到 #define PLL_M 25 这条语句,将参数值25改为8,在这条语句上面,右键点击 Go To Definination Of “HSE_VALUE”

    找到#define HSE_VALUE ((uint32_t)25000000) 将25000000改为 8000000.

    展开全文
  • 晶振频率高低的小常识

    千次阅读 2019-07-03 09:37:20
    很多产品上都用晶振,小到儿童玩具大到航空设备,在各路产品中小有名气。当然因为产品的不同在使用晶振上自然是不一样的,比如低端产品...石英晶振频率的高低对电路会造成影响吗? 通俗意义上来讲,工作频率与工作电...

    很多产品上都用晶振,小到儿童玩具大到航空设备,在各路产品中小有名气。当然因为产品的不同在使用晶振上自然是不一样的,比如低端产品中使用陶瓷晶振,中端产品中使用石英插件晶振像49S封装以及圆柱插件晶体,高端产品中呢多半使用的贴片晶振,比如贴片6035、3225、2520、7050封装晶振。要求严格的都是使用进口晶振,石英振荡器。

    石英晶振频率的高低对电路会造成影响吗?

    通俗意义上来讲,工作频率与工作电压较高的晶振,会消费较高功耗,而低频的有源晶振,损耗就低了很多。这里,我们需要纠正一个误导人们对时间快慢准时的观念,有人认为晶振频率的高低对时钟的快慢有所影响,在此,中科晶隆重纠正,时钟快慢的影响是由晶振本身的精度所决定的,与晶振频率高低无关,通常时钟上常用的频率为32.768KHZ。

    晶振基频和泛音的区别在哪呢?

    什么是晶振泛音?在晶振中高频的意思是指石英水晶片达到泛音的状态,频率越高泛音次数越多。晶体振动的机械谐波。泛音频率与基频频率之比接近整数倍但不是整数倍,泛音振动有3次泛音,5次泛音,7次泛音,9次泛音。3次泛音 10~75MHz,5次泛音 50~150MHz,7次泛音 100~200MHz,9次泛音 150~250MHz 。什么是晶振基频?比如基频为20MHZ的晶体,五次泛音之后就可以得到100MHZ的晶体。一般以经验来讲,40MHZ以下基本都是基频晶振,而40MHZ以上,则是泛音晶振了。

    晶振频率的高低与晶片有什么样的联系?

    一般来讲,石英晶振的频率越高,需要的石英晶片越薄。比如40MHZ的石英晶体所需的晶片厚度是41.75毫米,这样的厚度还算可以做到,但100MHZ的石英晶体,所需的晶片厚度则是16.7毫米。即使厚度可做到但损耗非常高,制成成品后轻轻一跌晶片就碎裂。所以一般在高频的晶体就要采用三次泛音、五次泛音、七次泛音的技术来达到了。泛音晶振应用的典型电路要在芯片接晶振的一脚到地串上一个电感和电容,若不加,则晶振输出只有基频,就达不到要求了。

    展开全文
  • 关于外部时钟晶振频率选择 芯片的主晶振频率范围一般来说在数据手册(Datasheet)和技术参考手册(Technical Reference Manual)中都有介绍。 你提到的时钟先分频再倍频,这个需要深入到STM32的内部去一探究竟...
  • 单片机晶振频率(CPU频率)计算HZ=1/T,电脑处理速度频率也是这么来的,从硬件来看HZ代表单位时间处理任务的多少,显然HZ越高,单位时间内处理的任务越多,故就像玩英雄联盟,HZ高的,延迟小 传输速率计算 1s传输的...
  • 摘 要: 为满足三维大地电磁勘探技术对多个采集站的同步需求,基于FPGA设计了一种晶振频率校准系统。系统可以调节各采集站的恒温压控晶体振荡器同步于GPS,从而使晶振能够输出高准确度和稳定度的同步信号。系统中...
  • 晶振是什么?全称是石英晶体振荡器,是一种高精度和高稳定度的振荡器。通过一定的外接电路来,可以生成频率和峰值稳定的正弦波。而单片机在运行的时候,需要一个脉冲信号,做为自己执行指令的触发信号,可以简单的...
  • 石英晶振频率测试系统的研究与开发 石英晶振频率测试系统的研究与开发 石英晶振频率测试系统的研究与开发
  • 机械周期、时钟周期、脉冲、晶振频率之间的关系晶振频率与脉冲的关系时钟周期与脉冲的关系机械周期与时钟周期的关系 整理下学到的机械周期、时钟周期、脉冲、晶振频率之间的关系 晶振频率与脉冲的关系 晶振频率脉冲 ...
  • 为解决普通晶振频率长期漂移量较大的问题,提出了一种用GPS秒脉冲对晶振脉冲在线自动测量及修正,从而产生本地高精度时钟的方法,据此设计了一种基于单片机和CPLD的智能自校准数字时钟系统。介绍了时钟产生及校准...
  • STM32晶振频率的修改

    2021-01-20 19:55:38
    STM32晶振频率的修改 一、修改HSE_VALUE的值 找到"stm32fxxx_conf.h",这里以STM32F103为例: stm32f10x_conf.h 添加HSE_VLAUE的定义,这里以STM32F103为例: /* Define to prevent recursive inclusion -----...
  • 本文介绍,在Atmel Studio环境中,更改延时函数(宏)的晶振频率的方法。  在Atmel Studio中,可以使用_delay_us(x)宏和_delay_ms(x)进行精准延时,但是在使用这2个宏之前必须设置当前的晶振频率,本日志介绍其...
  • 这篇日志说一下有关晶振频率的选择问题。  先给出AVR串口波特率的计算公式:UBRR0 = (F_CPU / (16 * u32_BaudRate) - 1)  我们希望产生115200波特率,看选择不同晶振频率得到的结果。  1、7.3728M  ...
  • 晶振频率无法手动设置
  • STM32F407晶振频率修改问题

    千次阅读 2020-04-04 16:40:44
    在用TrueStudio的模板新建工程时,默认是25M外部时钟,若与板子晶振频率不一致,用到时钟时可能会出现问题。 修改HSE_Value的值 在stm32f4xx.h中搜索HSE_VALUE,会找到下面这段代码 #if !defined (HSE_VALUE) #...
  • 程序名称:LED点亮试验(晶振频率18.432MHz) 功能说明: 1. 启动后光耦继电器AQY212EH输出闭合2秒后再断开。 2. 启动后LED1、LED2和LED3按间隔2秒闪烁。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,860
精华内容 6,744
关键字:

晶振频率