s3c2440 三个时钟

发布者:梅花居士最新更新时间:2016-12-03 来源: eefocus关键字:s3c2440  三个时钟 手机看文章 扫描二维码
随时随地手机看文章

s3c2410 有三个时钟FLCK 、HCLK 和PCLK (这3个时针都是核心时针)
s3c2410 芯片有这么一段话: 
FCLK is used by ARM920T ,内核时钟,主频。 
HCLK is used for AHB bus, which is used by the ARM920T, the memory controller, the interrupt controller, the LCD controller, the DMA and USB host block. 也就是为AHB总线上的外设提供时钟信号,包括USB时钟。 AHB总线用于连接高速外设。
PCLK is used for APB bus, which is used by the peripherals such as WDT, IIS, I2C, PWM timer, MMC interface,ADC, UART, GPIO, RTC and SPI. 也就是为APB总线上的外设提供时钟信号,即IO接口时钟,串口的时钟设置就是从PCLK来的。APB总线用于连接低速外设。
The S3C2410X supports selection of Dividing Ratio between FCLK, HLCK and PCLK. This ratio is determined by HDIVN and PDIVN of CLKDIVN control register.
s3c2410可通过设置CLKDIVN控制寄存器的HDIVN位(第1位)和PDIVN位(第0位)来改变FCLK, HLCK 和 PCLK的比率。
s3c2440 三个时钟 - markter - Mancl
那么如何获取FCLK, HLCK 和 PCLK的时针频率呢?
可先通过clk_get获取一个clk结构体


/* clk_get获取一个名为id的时针
* 输入参数dev:    可以为NULL
* 输入参数id:     时针名称,如fclk、hclk、pclk等
* 返回值:         返回该时钟的clk结构体
*/
struct clk *clk_get(struct device *dev, const char *id)
struct clk {
     struct list_head list;
     struct module *owner;
     struct clk *parent;
     const char *name; /* 该时针名称 */
     int id;
     int usage;
     unsigned long rate; /* 时钟频率 */
     unsigned long ctrlbit;
     int (*enable)(struct clk *, int enable);
     int (*set_rate)(struct clk *c, unsigned long rate);
     unsigned long (*get_rate)(struct clk *c);
     unsigned long (*round_rate)(struct clk *c, unsigned long rate);
     int (*set_parent)(struct clk *c, struct clk *parent);
};


再将clk_get返回的clk结构体传递给clk_get_rate,获取该时钟的频率


unsigned long clk_get_rate(struct clk *clk)

一个例子:


printk(KERN_DEBUG"fclk = %d, pclk = %d, hclk = %d, uclk = %d\n",
             clk_get_rate(clk_get(NULL, "fclk")),
             clk_get_rate(clk_get(NULL, "hclk")),
             clk_get_rate(clk_get(NULL, "pclk")),
             clk_get_rate(clk_get(NULL, "uclk")));


这里出现了另一个时针uclk,专门给usb供给时针信号。uclk是外部时针源,由s3c2410芯片的gph8/uclk管脚引入,给uart提供外部时针信号,以获取更精确地时针频率。

关于AMBA片上总线
       AMBA(Advanced Microcontroller Bus Architecture)是由ARM公司提出的片上总线规范。AMBA 2.0规范包括四个部分:AHB(AMBA高性能总线)、ASB(AMBA系统总线)、APB(AMBA外设总线)和Test Methodology。
       the Advanced High-performance Bus(AHB)应用于连接高性能、高时钟频率的系统模块(如CPU、DMA和DSP等)它构成了高性能的系统骨干总线(back-bone bus)。AHB bus上的外设有LCD controller(CONT代表controller,控制器)、USB Host CONT、ExtMaster、Nand CONT和nand flash boot loader、bus CONT、interrupt CONT、power management、memory CONT(sram/nor/sdram等)。
       the Advanced System Bus(ASB)是第一代AMBA系统总线,同AHB相比,它数据宽度要小一些,它支持的典型数据宽度为8位、16位、32位。
      the Advanced Peripheral Bus(APB)是本地二级总线(local secondary bus ),通过桥和AHB/ASB相连。它主要是为了满足不需要高性能流水线接口或不需要高带宽接口的设备的互连。APB bus上的外设有UART、USB device、SDI/MMC、Watch Dog Timer、bus CONT、spi、iic、iis、gpio、rtc、adc、timer/pwm。


关键字:s3c2440  三个时钟 引用地址:s3c2440 三个时钟

上一篇:S3C2440电源管理有关问题及其解决方法
下一篇:TX2440A的led驱动

推荐阅读最新更新时间:2024-03-16 15:23

十一、S3C2440 裸机 — GPIO
11.1 GPIO 介绍 11.1.1 GPIO 管脚 GPIO 即是输入输出端口,S3C2440A 包含了 130 个多功能输入/输出口引脚并且它们为如下显示的八个端口: 端口 A(GPA):25 位输出端口 端口 B(GPB):11 位输入/输出端口 端口 C(GPC):16 位输入/输出端口 端口 D(GPD):16 位输入/输出端口 端口 E(GPE):16 位输入/输出端口 端口 F(GPF):8 位输入/输出端口 端口 G(GPG):16 位输入/输出端口 端口 H(GPH):9 位输入/输出端口 端口 J(GPJ):13 位输入/输出端口 GPIO 的功能即是用于 CPU 采集外设信号(INPUT
[单片机]
十一、<font color='red'>S3C2440</font> 裸机 — GPIO
s3c2440的摄像接口拍照应用
s3c2440 提供了一个摄像接口,使开发人员很容易地实现摄像、照相等功能。摄像接口包括 8 位来自摄像头的输入数据信号,一个输出主时钟信号,三个来自摄像头的输入同步时钟信号和一个输出复位信号。摄像接口的主时钟信号由 USB PLL 产生,它的频率为 96MHz ,再经过分频处理后输出给摄像头,摄像头再根据该时钟信号产生三个同步时钟信号(像素时钟、帧同步时钟和行同步时钟),反过来再输入回 s3c2440 。 s3c2440 仅仅提供了一个摄像接口,因此要实现其功能,还需要摄像头。在这里,我们使用 OV9650 。 OV9650 内部有大量的寄存器需要配置,这就需要另外的数据接口。 OV9650 的数据接口称为 SCCB (串行摄像控
[单片机]
基于ARM S3C2440的太阳跟踪系统设计
基于计算机视觉原理,以ARM微控制器为核心构建嵌入式图像处理平台,实现了对太阳的实时跟踪。系统采用CMOS图像传感器采集太阳图像,通过微控制器计算太阳角度,通过串口控制转台,实现对太阳的高精度跟踪。同时,与视日运动规律相结合,保证系统的可靠性。试验表明,该系统在降低系统能耗的同时,能可靠有效地跟踪太阳运动。 随着社会的发展和进步,环保节能已经成为人类可持续发展的必要条件。目前,再生能源的开发和利用越来越受到人们的关注。太阳能由于其普遍、无害、无限、长久等特点,成为最绿色、最理想、最可靠的替代能源。但太阳能同时存在分散,不稳定,效率低等特点,太阳能光伏系统为解决这一问题提供了条件。 就目前的太阳能光伏系统而言,如何最大限度提
[单片机]
基于ARM <font color='red'>S3C2440</font>的太阳跟踪系统设计
s3c2440 ads程序移植到keil中(三) 初步完成
如果我把参数配置发生改变呢 然后再一次编译 要包错误 如下所示 其实我们到这里离 在s3c2440 ads程序移植到keil中(二)中看到这个网友不值提供了方法 而且提供了几个文件的下载地址 http://download.csdn.net/detail/googlemi/5176844 我直接下载下来了 把其中的2440init.s文件直接拷贝复制替代我工作中的2440init.s 该错误消失了 但是出现了 这一个错误 反正修改就能解决 然后 提示了一个错误 意思 就nand.c和nand.h 没有加上去 让后加上去了 编译成功没有错误 这种方式到此结束
[单片机]
<font color='red'>s3c2440</font> ads程序移植到keil中(三) 初步完成
LCD实验学习笔记(九):UART
s3c2440包含三个通用异步收发器,可工作于中断模式或DMA模式。每个UART包含两个64字节的FIFOs用于接收和发送数据。可编程设置波特率、1或2个停止位,5/6/7/8个数据位和奇偶校验状态。 串口线一般是3条,TxD,RxD,Gnd,即发送线,接收线和地线。 数据传送之前,UART之间约定好传输速率(每位所占据的时间,其倒数沩波特率)、数据传输的格式(多少个数据位、是否使用校验位、奇校验还是偶校验、多少个停止位)。 发送数据时,CPU先将数据写入发送FIFO,UART会自动将FIFO中的数据复制发送移位器(Transmit Shifter)中,发送移位器将数据一位一位的发送到TxDn数据线上。接收则过程相反。 使
[单片机]
s3c2440裸机-代码重定位(1.重定位的引入,为什么要代码重定位)
1.重定位的引入(为什么要代码重定位) 我们知道s3c2440的cpu从0地址开始取指令执行,当从nor启动时,0地址对应nor,nor可以像内存一样读,但不能像内存一样写。我们能够从nor上取指令执行。 例子1:当nand启动的时候,我们nand中的前4K指令会变自动加载到sram中去,这时的0地址对应sram。 那么我们的程序如果大于4K,要从nand启动,sram只拷贝了nand中的前4K代码,那么如何解决这个问题呢? 那么就需要重定位代码到sdram中去,sdram的容量较大,又可以直接被cpu访问。 例子2:我们知道,程序含有: 代码段(.text) 数据段(.data):存放初始值不为0的全局变量/静态变量
[单片机]
<font color='red'>s3c2440</font>裸机-代码重定位(1.重定位的引入,为什么要代码重定位)
U-boot在S3C2440上的移植详解(一)
一、移植环境 主 机:VMWare--Fedora 9 开发板:Mini2440--64MB Nand,Kernel:2.6.30.4 编译器:arm-linux-gcc-4.3.2.tgz u-boot:u-boot-2009.08.tar.bz2 二、移植步骤 本次移植的功能特点包括: 支持Nand Flash读写 支持从Nor/Nand Flash启动 支持CS8900或者DM9000网卡 支持Yaffs文件系统 支持USB下载(还未实现) 1. 了解u-boot主要的目录结构和启动流程,如下图。 u-boot的stage1代码通常放在cpu/xxxx/start.S文件中,他用汇编语言
[单片机]
U-boot在<font color='red'>S3C2440</font>上的移植详解(一)
基于Linux和s3C2440的GPC控制器设计
近年来,基于Internet的网络化控制系统已成为国内外测控领域研究的热点,在石油勘探开发、钢铁化工等领域有着广阔的应用前景。而控制器的设计和研发是整个网络控制系统的关键和核心。在一些地域高度分散以及环境恶劣的控制现场,使用嵌入式系统作为控制器节点,可更有利于多点分布式综合布控及并行处理,实现更好的测控效果。然而由于网络传输本身的特点,网络时延会不可避免地影响网络控制系统的控制性能和稳定性,因此本文提出基于S3C2440A及嵌入式Linux的GPC(Generalized PredictiveControl)控制器的设计方案,具有一定的通用性。 1 控制器硬件平台设计 控制器节点是嵌入式网络化测控系统的中心。在测控系统中
[工业控制]
基于Linux和<font color='red'>s3C2440</font>的GPC控制器设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved