Part7-时钟初始化_lesson1
1、概念解析
1.1时钟脉冲信号

1.2时钟脉冲频率

1.3时钟源(提供时钟脉冲信号)
a、晶振


b、锁相环PLL

2、时钟体系
2440:


晶振的频率、时钟体系有多少个PLL、这些PLL分别产生了哪些时钟、产生的时钟用来做什么的。
采用的是12MHZ,总共有2个PLL分别是MPLL、UPLL,MPLL产生了FCLK、HCLK、PCLK,UPLL产生了UCLK。

6410:
12MHZ晶振,有三个PLL:APLL(产生ARMCLK)、MPLL(产生HCLK、PCLK)、EPLL(产生SCLK);


3、思维导图设计
1)、时钟初始化流程图
2440与6410:

一上电cpu以晶振频率运行,所以要利用软件对PLL进行配置,使cpu工作在高频,配置完锁相环之后,有一段lock time时间,处理器是不工作的,经过这个lock time时间后,cpu就会按照配置的高频运行了。
配置:



4、代码编写
1)设置lock time一般我们选择默认值,
2)设置分频系数(FCLK、HCLK以及PCLK的比例关系)
初学者不知道怎么选择这个稀疏,一般参考uboot(选择的是1:4:8)。

3)设置异步模式


因为让最高两位做或的操作,就是让他们都为1.
5、设置ARM核的频率



6410:
1、lock time的设置

2、配置分频系数





3、设置CPU工作在异步模式

OTHERS寄存器的第六位也要为0,因为


4、设置APLL以及MPLL的输出频率



5、选择后续时钟源



6、代码如下:

补充:时钟源的选择---当外部复位信号被声明时,OM[4:0]引脚决定了S3C6410的操作模式。OM[0]引脚选择外部时钟源,例如,如果OM[0]是0,则XXTIPll(外部晶体)被选择。否则,XEXTCLK被选择。友善之臂的电路图如下:

它的启动模式选择电路图如下:


http://www.cnblogs.com/lp1129/articles/3367841.html
Part7-时钟初始化_lesson1的更多相关文章
- s3c6410_时钟初始化
参考: 1)<USER'S MANUAL-S3C6410X>第三章 SYSTEM CONTROLLER 2)u-boot/board/samsumg/smdk6410/lowlevel_i ...
- LPC1788系统时钟初始化
#ifndef __SYS_H_ #define __SYS_H_ #include "common.h" #define SystemCoreClock 120000000 ...
- dsPIC33EP 时钟初始化程序
//文件名p33clk.h #ifndef _P33CLK_H_ #define _P33CLK_H_ //#include "p33clk.h" #define WDT_ENB ...
- STM32_3 时钟初始化分析
在startup文件中,调用了2个函数,一个是System_Init, 另一个是main. System_Init()在system_stm32f10x.c 这个文件中,先看一下时钟树,再分析一下这个 ...
- ARM系统时钟初始化
2440时钟体系,12MHz的晶振 6410时钟体系,12MHz的晶振 210时钟体系,24MHz晶振 时钟初始化:1.设置locktime 2.设置分频系数 4.设置CPU到异步工作模式 3.设置f ...
- s3c6410时钟初始化
今天自己写bootloader做时钟初始化时遇到的问题,特记录下来.为了方便理解,我大部分都有截图, 在此我先说明下,图均来自数据手冊.也希望看了本篇文章的同志多多參看数据手冊才干理解的更加透 ...
- X-005 FriendlyARM tiny4412 uboot移植之时钟初始化
<<<<<<<<<<<<<<<<<<<<<<<<< ...
- u-boot分析(六)----时钟初始化
u-boot分析(六) 上篇博文我们按照210的启动流程,分析到了关闭看门狗,今天我们继续按照u-boot的启动流程进行分析,今天我们会主要分析时钟的初始化. 今天我们会用到的文档: 1. ...
- STM32时钟初始化函数SystemInit()详解【转】
花了一天的时间,总算是了解了SystemInit()函数实现了哪些功能,初学STM32,,现记录如下(有理解错误的地方还请大侠指出): 使用的是3.5的库,用的是STM32F107VC,开发环境RVM ...
随机推荐
- Win32 API中使用定时器的三种方法
转自:http://blog.csdn.net/fancycow/article/details/6676064 1.SetTimer(HWND,UINT,UINT,TIMERPROC);第一个参数设 ...
- 洛谷 P2205 [USACO13JAN]画栅栏Painting the Fence
传送门 题目大意: 开始站在原点,给出一系列操作 x L/R,表示向左或向右走几步. 最多会移动到离原点1,000,000,000单位远的地方. n次操作,n<=100000 问走过k次的地方有 ...
- ecmall分页
在Ecmall的二次开发中,分页是必不可少的.这个系统已经自带了分页功能,下面来看看如何使用这个分页. 下面是一个自定义的类,用于查看订单的详细情况.关键在于get_order_data()这个方法, ...
- C#网络编程(接收文件) - Part.5
这篇文章将完成 Part.4 中剩余的部分,它们本来是一篇完整的文章,但是因为上一篇比较长,合并起来页数太多,浏览起来可能会比较不方便,我就将它拆为两篇了,本文便是它的后半部分.我们继续进行上一篇没有 ...
- Maven打包同一个jar有不同的:版本+时间戳(解决思路)
在我们的开发过程中,目前流行的版本控制工具maven,在项目开发阶段,大家都是通过发布SNAPSHOT快照版进行相互模块之间的依赖开发, 这个时候就会有一个问题,要是一天构建多次的快照版,会发现在项目 ...
- Python函数 help()
**help() 功能: help() 函数用于查看函数或模块用途的详细说明.object -- 对象:返回对象帮助信息. 语法: help([object]) 实例: >>>hel ...
- Windows下.svn文件夹的最简易删除方法
如果想删除Windows下的.svn文件夹,通过手动删除的渠道是最麻烦的,因为每个文件夹下面都存在这样的文件. 下面是一个好办法: 建立一个文本文件,取名为kill-svn-folders.reg(扩 ...
- python中的configparse学习笔记
configparse主要用于在python中进行配置文件的读取. 基本的读取配置文件: -read(filename) 直接读取ini文件内容 -sections() 得到所有的section,并以 ...
- 【转】Jmeter测试结果分析
Jmeter测试结果分析这一篇,我打算分成上下两部分.上篇,主要讲述如何使用jmeter中Assertion对结果进行简单的分类:下篇,主要讲述的是当我们拿到测试结果后,我们应该如何去看待这些测试结果 ...
- 圆周率的现代计算机求法(C语言) Lebal:research
C语言求圆周率π 公式法1 #include <stdio.h> #include <math.h> int main(){ float term,result=1; int ...