LPC1549时钟配置寄存器版

2019-03-25 20:18发布

我用寄存器配置时钟,PLL一直锁定不了,求大虾指点#include "LPC15xx.h"                    // Device header
typedef unsigned int u16;
typedef unsigned char u8;

void SystemInit(void )
{
;
}
void delay(void)
{
        u16 i = 10000;
        while(i--);
}

void SystemCon(void )
{
        u16 j = 0;
        LPC_SYSCON_Type SYSCON;
        SYSCON.SYSOSCCTRL  = 0x00;
        SYSCON.RTCOSCCTRL  = 0x01;
        SYSCON.MAINCLKSELA = 0x03;
        SYSCON.MAINCLKSELB = 0x02;
        SYSCON.SYSPLLCLKSEL = 0x01;
        SYSCON.SYSPLLCTRL |= 0x05;
        SYSCON.SYSAHBCLKDIV = 0x01;
        delay();
        do
        {
                j = ~SYSCON.SYSPLLSTAT;
        }
        while(j);
}

int main(void )
{
        u8 a = 0;
        SystemCon();
        while(1)
        {
                a = a + 1;
                if(a>200)
                {
                        a = 0;
                }
        }


        ;
}

clock.zip (148.65 KB, 下载次数: 4) 2014-9-13 09:37 上传 点击文件名下载附件
小弟还有一事不明
clock.png
上图中的 system oscillator       、、Oscillator 、、、、 XTAL、、、、 external clock source、、、、 crystal oscillator.是什么关系,好乱不知从何理解。
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
3条回答
xiaotianwang78
2019-03-26 00:58
_NXP LPC1000_ 根据个人使用经验,提供几个建议参考,希望有所帮助:
1、开始工程之前,参考一下例程,然后根据习惯提取自己需要的进行配置
2、看手册,有个系统时钟的原理框图,LPC15xx系列的时钟源可选择的很多,根据框图以及自己原理需要进行硬件设计及软件配置。
3、PLL配置部分,可参考----LPC1500体验+@5系统PLL配置【系列教程】,这位大神的大作,上电有顺序,每个模块的上电还有等待锁存的标志。
4、时钟源及软件预定义的时钟涵义,根据框图配合例程可一步步反跟踪回去,就可以理解其关系和配置。

一周热门 更多>