首页 > 代码库 > 时钟初始化
时钟初始化
1.时钟体系的了解
所用晶振:12M
PLL的个数:APLL、MPLL、EPLL
产生的时钟及其用途:
时钟 | 应用场合 | 应用举例 | 所属PLL |
ACLK | 处理器 | arm11 | APLL |
HCLK | AHB总线 | LCD、DMA... | MPLL |
PCLK | APB总线 | GPIO、Uart | MPLL |
SCLK | USB总线 | USB | EPLL |
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
时钟初始化
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。