3879|3

58

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

分享ARM7学习经验—系统时钟配置(四) [复制链接]

LPC2148的振荡器可以工作在两种模式:从属模式也就是外部输入信号源,频谱范围为150M。还有一种就是常用的政党模式,采用外部晶振,频谱范围130MLPC2148上有两个 PLL 模块。当 PLL1 必须在 48MHz 的固定速率下提供 USB 时钟时,PLL0 生成 CCLK 时钟(系统时钟)。这两个 PLL 在结构上都相同,不同的是 PLL 的中断功能只保留用于 PLL0PLL0 PLL1 接受的输入时钟频率范围仅为 10MHz~25MHz。输入频率通过使用一个电流控制振荡器(CCO)倍增到范围 10MHz~60MHz 用于 CCLK 以及 48MHz  用于 USB 时钟。下面是PLL的框图:

使用到的寄存器有:

PLLCON 控制寄存器,只有当其中的第0PLLE和第1位都为1时,PLL输出时钟才能连接到微控制器中。

PLLCFG 配置寄存器,设置倍频值和分频值

PLLSTAT 状态寄存器,主要用于查询第10PLCOK,看PLL是否锁定指定的频率。

PLLFEED 馈送寄存器,必须将正确的馈送序列写入 PLLFEED 寄存器才能使 PLLCON PLLCFG 寄存器的更改生效。馈送序列如下:依次写入0XAA,0X55,有点像看门狗的功能。

板上的外部晶振为Fosc=12M,我们希望获得最快时钟Fcclk=60M,根据上面的图我们计算出M=60/12=5;因此设置PLLCFG 配置寄存器的分频值为M-1=4;根据Fcco的取值范围, 1.3<P<2.67,所以PLLCFG 配置寄存器的倍频值P只能取值2.然后我们按照这个顺序编写代码,设置成功电亮LED1

z   PLLCON1——设定 PLL 之前,必须使能 PLL,但不能连接 PLL

z   设定 P M 的值(PLLCFG);

z   发送 PLL 馈送序列;

z   等待 PLL 锁定——PLLSTAT. 10    1

z   PLLCON3——设定 P M 之后,连接 PLL

z   发送 PLL 馈送序列,把 P M 的值写入硬件。

主要代码:

#include <LPC214X.H>

#include "led.h"

void PLL_Init(void)//设置系统时钟CCLK=60M,默认VPB四分频=15M

{

       PLL0CON=1;            //使能PLL0

       PLL0CFG=0X23;      //设置M=4 P=2

       PLL0FEED=0XAA; //发送PLL0馈送序列

       PLL0FEED=0X55;

       while((PLL0STAT&(1<<10))==0);//等待锁定

       PLL0CON=3;                   //PLL0使能并连接

       PLL0FEED=0XAA;

       PLL0FEED=0X55;

}

int main(void)

{

       PLL_Init();

       Led_Init();

       LED1_ON();

       while(1)

       {

             

       }

}
此帖出自ARM技术论坛

最新回复

这方面可以参考周立功的书,挺详细的,呵呵  详情 回复 发表于 2011-4-7 12:02
点赞 关注
 

回复
举报

431

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
支持,支持
此帖出自ARM技术论坛
 
 
 

回复

2万

帖子

71

TA的资源

管理员

板凳
 
楼主效率很高 赞一个
此帖出自ARM技术论坛
加EE小助手好友,
入技术交流群
EE服务号
精彩活动e手掌握
EE订阅号
热门资讯e网打尽
聚焦汽车电子软硬件开发
认真关注技术本身
 
个人签名

加油!在电子行业默默贡献自己的力量!:)

 
 

回复

27

帖子

0

TA的资源

一粒金砂(初级)

4
 
这方面可以参考周立功的书,挺详细的,呵呵
此帖出自ARM技术论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表