时钟控制逻辑给时钟提供了三种时钟:
FCLK用于CPU 核
HCLK用于AHB总线设备,比如CPU核、存储控制器、中断控制器、LCD控制器、DMA
PCLK用于APB总线设备,比如WATCHDOG、IIS控制器、PWM定时器、MMC接口、ADC
需要通过时钟控制逻辑的PLL提高系统时钟。
PLL有两个,MPLL和UPLL。UPLL专用于USB设备,MPLL用于FCLK、HCLK、...
分类:
其他好文 时间:
2015-05-24 14:18:43
阅读次数:
197
在前篇博文《嵌入式学习笔记200-Linux kernel初体验》在已经确保环境编译是ok的,接下来让kernel能够最基本的动起来,起码可以看到基本的启动打印!
修改外部输入时钟频率, 修改 linux-2.6.30.4\arch\arm\mach-s3c2440\mach-smdk2440.c 在大概163行将16934400改成12000000。
static void __init smdk...
分类:
系统相关 时间:
2015-05-24 13:00:42
阅读次数:
248
在编译内核的过程中遇到这样的问题:
arm-linux-ld: no machine record defined
详细见截图:
经过在网上查询说解决放放如下:
修改:arch/arm/kernel/vmlinux.lds文件的最后部分:
注释掉上图中的
ASSERT((__proc_info_en...
分类:
系统相关 时间:
2015-05-18 12:57:57
阅读次数:
262
内核移植时遇到这个错误:
end_request: I/O error, dev mtdblock2, sector 0 Buffer I/O error on device mtdblock2, logical block 0
原因分析:由于内核是通过uboot烧写到nandflash中,因此uboot产生的ecc校验码与内核的ecc校验码不同,所以需要关闭内核的ecc校验。
...
分类:
数据库 时间:
2015-05-18 12:57:53
阅读次数:
205
经过之前对uboot的整体flow分析,现在开始针对2440移植,需要注意的是移植的code可能包含支持部分的2410code 不过并没有在s3c2410板子实测过。
主要概括:第一阶段的汇编code尽量短小,能用C实现的就用C,由于2440的board和头文件是从2410 copy过来的 里面会有很多信息或者宏关于2410,并且很多.c文件的头文件由于include的是2410,所以新增的一些关...
分类:
其他好文 时间:
2015-05-17 13:48:32
阅读次数:
237
本文内容由浅入深主要介绍了JZ2440的LED裸板程序,LED的简单驱动程序一、LED裸板程序arm开发板的裸板程序和51单片机类似,需要通过配置寄存器来实现。s3c2440有130个I/O口,共分为A-J共9组。1.硬件原理图:JZ2440的硬件连接图,如下图所示:从图中可以看出LED1、LED2、LED3、LE..
分类:
其他好文 时间:
2015-05-14 06:24:26
阅读次数:
138
接下来分析uboot的第二阶段,在第一阶段的start.S的末尾有:
ldr pc, _start_armboot_start_armboot: .word start_armboot
而start_armboot()就是第二阶段的入口,首先我们要认识两个重要的结构体,start_armboot()函数的一系列初始化可以说都是以这个结构体为主线的:typedef struct global...
分类:
其他好文 时间:
2015-05-12 00:10:22
阅读次数:
147
mini2440之Main分析2012-03-17 20:51:29分类:嵌入式/****************************************************************NAME: u2440mon.cDESC: u2440mon entry point,me...
分类:
其他好文 时间:
2015-05-11 23:27:03
阅读次数:
222
S3C2440有两个PLL(phase locked loop)一个是MPLL,一个是UPLL。MPLL用于CPU及其他外围器件,UPLL用于USB。用于产生FCLK, HCLK, PCLK三种频率,这三种频率分别有不同的用途:FCLK是CPU提供的时钟信号。HCLK是为AHB总线提供的时钟信号, ...
分类:
其他好文 时间:
2015-05-11 17:39:04
阅读次数:
166
根据前篇博文(嵌入式学习笔记100-uboot1.1.6初体验)最后的结论,现在开始将其实现:
a. 修改makefile的CROSS_COMPILE指定编译器 arm-linux-gcc -v –> gcc version 3.4.5
CROSS_COMPILE = /opt/EmbedSky/crosstools_3.4.5_softfloat/gcc-3.4.5-glibc-2.3.6/...
分类:
其他好文 时间:
2015-05-06 00:00:54
阅读次数:
401