时钟初始化

1.时钟体系的了解

所用晶振:12M

PLL的个数:APLL、MPLL、EPLL

产生的时钟及其用途:

时钟应用场合应用举例所属PLL
ACLK处理器arm11APLL
HCLKAHB总线LCD、DMA...MPLL
PCLKAPB总线GPIO、UartMPLL
SCLKUSB总线USBEPLL

2.时钟初始化流程

注:SYCLK用于arm核

 

3.分频系数

DIVARM设为0,DIVHCLK2设为1,DIVHCLK设为1,DIVPCLK设为3。

4.设置SYSCLK(APLL、MPLL)

 

5.汇编代码

#define CLK_DIV0 0x7e00f020
#define OTHERS 0x7e00f900
#define APLL_CON 0x7e00f00c
#define MPLL_CON 0x7e00f010
#define CLK_SRC 0x7e00f01c

#define DIV_VAL ((0x0<<0)|(0x1<<9)|(0x1<<8)|(0x3<<12))
#define PLL_VAL ((1<<31)|(266<<16)|(3<<8)|(1<<0))

init_clock:
    ldr r0,=CLK_DIV0
    ldr r1,=DIV_VAL
    str r1,[r0]

    ldr r0,=OTHERS
    ldr r1,[r0]
    bic r1,r1,#0xc0
    str r1,[r0]

    ldr r0,=APLL_CON
    ldr r1,=PLL_VAL
    str r1,[r0]

    ldr r0,=MPLL_CON
    ldr r1,=PLL_VAL
    str r1,[r0]

    ldr r0,=CLK_SRC
    mov r1,#0x03
    str r1,[r0]
    
    mov pc,lr

 

 

 

 

 

转载于:https://www.cnblogs.com/boyiliushui/p/5861297.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值