单片机超频之PLL锁相环设置

发布者:名字太长了吗最新更新时间:2016-01-19 来源: eefocus关键字:单片机  超频  PLL  锁相环设置 手机看文章 扫描二维码
随时随地手机看文章
什么是锁相环呢?
    MCU的支撑电路一般需要外部时钟来给MCU提供时钟信号,而外部时钟的频率可能偏低,为了使系统更加快速稳定运行,需要提升系统所需要的时钟频率。这就得用到锁相环了。例如MCU用的外部晶振是16M的无源晶振,则可以通过锁相环PLL把系统时钟倍频到24M,从而给系统提供更高的时钟信号,提高程序的运行速度。 51单片机,AVR单片机内部没有锁相环电路,其系统时钟直接由外部晶振提供。而XS128内部集成了锁相环电路,其系统时钟既可由外部晶振直接提供,也可以通过锁相环倍频后提供,当然,还有由XS128内部的时钟电路来提供(当其它来源提供的系统时钟不稳定时,内部时钟电路就起作用了,也就是自时钟模式)。
    锁相环作为一个提供系统时钟的模块,是一个基本的模块,几乎每次编程序都得用到。下面记一下怎样配置锁相环来设定想要的系统时钟。
    锁相环PLL、自时钟模式和前面说的实时中断RTI、看门狗COP都属于系统时钟与复位CRG中的模块,固前面用到的寄存器,这里有些会再用到。
    在程序中配置锁相环的步骤如下:
    第一、禁止总中断;
    第二、寄存器CLKSEL的第七位置0,即CLKSEL_PLLSEL=0。选择时钟源为外部晶振OSCCLK,在PLL程序执行前,内部总线频率为OSCCLK/2。
    CLKSEL_PLLSEL=0时,系统时钟由外部晶振直接提供,系统内部总线频率=OSCCLK/2(OSCCLK为外部晶振频率)。CLKSEL_PLLSEL=1时,系统时钟由锁相环提供,此时系统内部总线频率=PLLCLK/2 (PLLCLK为锁相环倍频后的频率)。
    第三、禁止锁相环PLL,即PLLCTL_PLLON=0。
    当PLLCTL_PLLON=0时,关闭PLL电路。当PLLCTL_PLLON=1时,打开PLL电路。
    第四、根据想要的时钟频率设置SYNR和REFDV两个寄存器。
    SYNR和REFDV两个寄存器专用于锁相环时钟PLLCLK的频率计算,计算公式是:
                     PLLCLK=2*OSCCLK*(SYNR+1)/(REFDV+1)
    其中,PLLCLK为PLL模块输出的时钟频率;OSCCLK为晶振频率;SYNR、REFDV分别为寄存器SYNR、REFDV中的值。这两个寄存器只有在PLLSEL=0时才能够写入(这里就是第二步的设置原因所在了)。
    第五、打开PLL,即PLLCTL_PLLON=1。
    第六、CRGFLG_LOCK位,确定PLL是否稳定。
    当锁相环PLL电路输出的频率达到目标频率的足够小的误差范围内时,LOCK位置1,此时说明PLLCLK已经稳定,可以作为系统的时钟了。该位在正常情况下为只读位。
    第七、PLLCLK稳定后,允许锁相环时钟源PLLCLK为系统提供时钟,即CLKSEL_PLLSEL=1。
    到这里,锁相环的设置就完毕了。
    如果想更灵活地配置系统时钟,就还得用到下面的寄存器了,下面逐一说说:
    1、CRGFLG_LOCKIF 锁相环的中断标志位。当系统时钟因为稳定或不稳定而导致LOCK位(上面已提到)变化时,该位置1。此时,如果CRGINT_LOCKIE=1,则产生中断。CRGINT_LOCKIE=1时,则允许产生锁相环锁定中断。CRGINT_LOCKIE=0时,则不允许。
    2、CLKSEL_PLLWAI是等待模式PLL停止位。当CLKSEL_PLLWAI=1时,系统进入等待模式时,锁相环PLL停止工作。当CLKSEL_PLLWAI=0时,系统进入等待模式时,锁相环PLL仍然工作。
   下面顺便说一下与自时钟模式相关的几个寄存器:
    CRGFLG_SCMIF 自时钟模式中断标志位。当SCM位变化时,该位置1。此时,如果CRGINT_SCMIE=1,则产生中断。
    CRGFLG_SCM     自时钟模式状态位。当晶振频率不稳定时,该位置1,系统会进入自时钟模式,系统的时钟将由自时钟模式下的时钟提供。
    CRGINT_SCMIE 自时钟模式中断的使能位。当CRGINT_SCMIE=1时,允许产生自时钟模式中断。当CRGINT_SCMIE=0时,不能产生自时钟模式中断。
    PLLCTL_SCME 自时钟模式使能位。在自时钟模式下,该位不能被清0。PLLCTL_SCME=1时,晶振时钟失灵系统将强制进入自时钟模式。当PLLCTL_SCME=0时,晶振失灵将导致时钟监控器复位。
   下面附一条锁相环的初始化程序;
void MCUInit()
{
       DISABLE_INTERRUPTS;              //(1)禁止总中断
        CLKSEL &= 0x7f;                 //(2)CLKSEL的第7位置0,选择系统时钟源为OSCCLK
       PLLCTL &= 0xbf;                 // (3)禁止PLL     PLLCTL.6(pllon)设为0;先关闭PLL
        SYNR = 0x01;                   //(4)根据需要的时钟频率设置SYNR和REFDV寄存器
        REFDV = 0x00;               
       PLLCTL |= (1<<6);             //(5)打开PLL     , PLLCTL.6(pllon)设为1;开PLL
       while (( CRGFLG&0x08) == 0x00);           //(6)通过判断LOCK位,
                                                                               //确定PLL是否稳定
       CLKSEL |= (1<<7);           //(7)时钟频率稳定后,允许锁相环时钟源作为系统时钟源;
                                                            //本句执行后:BusClock=PLLCLK/2
    }
关键字:单片机  超频  PLL  锁相环设置 引用地址:单片机超频之PLL锁相环设置

上一篇:单片机软件滤波的几种方法
下一篇:单片机驱动继电器方式

推荐阅读最新更新时间:2024-03-16 14:44

国产车规级触控MCU方案助力汽车智能按键应用
市场调查机构Omdia近期报告显示,全球半导体市场增长幅度将由2021年的21.1%降至2022年的4.2%,增速趋于平缓。但汽车半导体市场仍将出现大幅增长,市场规模将由2021年的500亿美元增至2025年的840亿美元,IHS Makit则预测汽车半导体市场规模将于2030年达到1100亿美元规模。非常明显,汽车相关的需求方面依然处于旺盛状态。与之相对应的供给方面,在经历过2021年全面大缺货后,消费类电子市场看到了较为明显的过剩,而各类车规芯片依然处于紧缺和涨价状态。 这其中,各类MCU因其品类繁多且用量巨大已成为车规芯片中的关键供应部件。Insights表示,去年由于市场供给吃紧,MCU 平均售价大增 10%,为近 25
[汽车电子]
国产车规级触控<font color='red'>MCU</font>方案助力汽车智能按键应用
51单片机课程设计:基于ADXL345的三轴偏移值显示
本程序通过IIC的通讯方式读取三轴加速度模块ADXL345的数值,并且利用数码管显示出来,通过三个按键可以实现不同轴偏移值的显示,数码管显示电路和需要用到的相关器件,还有工程文件以及相关资料,可以在附件下载,程序适用于吉林农业大学单片机开发板,其他型号开发板修改部分代码既可以完成移植。 关于粘贴复制乱码的问题:如果程序复制到Keil编译器上出现注释乱码,可以先建一个.c文件,也就是说不在keil里面编辑,然后用记事本打开.c文件,将源码复制进去,再在keil中添加文件即可。 /**************************************************************************
[单片机]
单片机与控制实验(4)——步进电机原理及应用
一、实验目的和要求   了解步进电机的工作原理,学习用单片机的步进电机控制系统的硬件设计方法,掌握定时器和中断系统的应用,熟悉单片机应用系统的设计与调试方法。 二、实验设备   单片机测控实验系统   步进电机控制实验模块   Keil开发环境   STC-ISP程序下载工具 三、实验内容   编制MCS-51程序使步进电机按照规定的转速和方向进行旋转,并将已转动的步数显示在数码管上。   步进电机的转速分为两档,当按下S1开关时,加速旋转,速度从10转/分加速到60转/分。当松开开关时,减速旋转,速度恢复为10转/分。当按下S2开关时,按照逆时针旋转;当松开时,按照顺时针旋转。   本程序要求使用定时器中断来实现,不准
[单片机]
基于SJA1000的CAN总线和AT89C51单片机实现运动控制系统的设计
1、引言 运动控制系统是以机械运动的驱动设备—电动机为控制对象, 以控制器为核心, 以电力电子、功率变换装置为执行机构, 在自动控制理论指导下组成的电气传动控制系统。在电气时代, 电动机一直在现代化的生产和生活中起着十分重要的作用。在近年来, 由于半导体制造设备等相关的电子制造设备市场大幅成长, 而使得机器设备上的运动控制系统出现了以下几点技术需求: ( 1) 多轴运动控制。机器设备因自动化程度提高而使得单一机器上所需要的轴数增多, 一台设备上十几轴是常见的事情。在轴数变多后, 如何协调各轴动作就是一个重要的课题。 ( 2) 体积要小。由于厂房空间的限制, 机器的体积要求越小越好, 机器内控制器的体积也就被要求愈来愈小, 相对
[单片机]
基于SJA1000的CAN总线和AT89C51<font color='red'>单片机</font>实现运动控制系统的设计
51单片机点亮双向流水灯
#include reg51.h #include intrins.h #define uint unsigned int #define uchar unsigned char sfr P0M0 = 0x94; sfr P0M1 = 0x93; void delay(uint ms){ uint i,j; for(i = 0 ;i ms ; i++) for (j = 0;j 121;j++); } void display(){ uint i,j; for(i = 0;i 7;i++){ P0 = _crol_(P0,1); delay(500); } for(j
[单片机]
采用AT89C51单片机和温度变送器实现炉温控制系统的设计
1、引 言 电加热炉随着科学技术的发展和工业生产水平的提高,已经在冶金、化工、机械等各类工业控制中得到了广泛应用,并且在国民经济中占有举足轻重的地位。对于这样一个具有非线性、大滞后、大惯性、时变性、升温单向性等特点的控制对象,很难用数学方法建立精确的数学模型,因此用传统的控制理论和方法很难达到好的控制效果。 单片机以其高可靠性、高性能价格比、控制方便简单和灵活性大等优点,在工业控制系统、智能化仪器仪表等诸多领域得到广泛应用。采用单片机进行炉温控制,可以提高控制质量和自动化水平。 2、单片机炉温控制系统结构 本系统的单片机炉温控制系统结构主要由单片机控制器、可控硅输出部分、热电偶传感器、温度变送器以及被控对象组成。如图1所示
[单片机]
采用AT89C51<font color='red'>单片机</font>和温度变送器实现炉温控制系统的设计
单片机数字计时器的系统设计与型式试验
引言 目前市场上计时器种类很多,并且有部分厂家可根据客户的要求定制,但有的商家为了节约成本,对生产质量没有进行很好的控制,在芯片的选择和整个系统可靠性试验方面都没有很好地把关,而且目前市场上所采用的数码管质量较差,抗干扰能力差,不能应用于复杂的环境。单片机数字计时器体积小巧、精度高、抗干扰能力强,适用于复杂的工作环境。 1 硬件设计 1.1 系统结构 系统主要由电源模块、输入部分、控制部分和显示部分组成,系统结构框图如图1所示。 1.2 单片机最小系统设计 控制部分选用40引脚单片机PIC16F887,该单片机采用了精简指令集、哈佛总线结构和二级流水线,价格低、可靠性高、功耗低、体积小。单片机最小系统如图2所示。
[单片机]
<font color='red'>单片机</font>数字计时器的系统设计与型式试验
基于森国科MCU SPIN的落地扇和循环扇应用方案
本期内容重点介绍,针对三相低压风扇电机驱动,森国科SGK32G031芯片可提供的一款高性价比解决方案,加速实现低功耗、轻量化、节能化的落地扇&循环扇应用。 森国科MCU SPIN(SGK32G031)芯片 高性能 高可靠性 芯片采用32-bit Arm Cortex-M0内核,主频60MHZ,内置USART ,集成业内领先的高采样率的高速12bit ADC ,集成2个高速 模拟 比较器 ,2个OPA 运算放大器 , 硬件 除法器; 芯片针对电机应用进行了多项设计优化,具备了高精准高可靠 时钟 系统、可支持移相的 TI MER、以及-40℃~105℃增强 工业 级工作温度范围等多项高可靠性优势。 小尺寸、多应用 芯片采用Q
[嵌入式]
基于森国科<font color='red'>MCU</font> SPIN的落地扇和循环扇应用方案
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved