历史上的今天
今天是:2025年04月26日(星期六)
2019年04月26日 | 2440裸板程序之时钟初始化
2019-04-26 来源:eefocus
LED对应的引脚是GPF4、GPF5、GPF6。
使用的编译器为arm-linux-gcc-4.5.1。
包括四个文件head.S main.c main.lds Makefile。
实验目的:把CPU主频提高到400Mhz。(FCLK:400 HCLK:100 PCLK:50)
2440使用MPLL和UPLL将来自晶振或外部时钟倍频至合适的频率,UPLL输出时钟供USB使用,MPLL输出时钟经过分频供CPU和AHB、APB使用。ARM920T使用FCLK,Memory、LCD、CAM等使用HCLK,PCLK供给WDT、PWM、ADC等使用。
ARM920T有三种工作方式,fastBus mode、synchronous、asynchronous。(异步总线和同步模式介绍 http://blog.csdn.net/qq_33160790/article/details/75668461)快总线时ARM920T运行在HCLK,当FCLK不等于HCLK时,必须切换至asynchronous模式。(通过设置协处理器CP15 http://blog.csdn.net/qq_33160790/article/details/75570898)
相关的寄存器:



只需要把http://blog.csdn.net/qq_33160790/article/details/78915744中的Head.S更新为以下即可。
@clock manegment
.equ MPLLCON ,0x4C000004
.equ CLKDIVN ,0x4C000014
@memory controller
.equ BWSCON ,0x48000000
.equ BANKCON0 ,0x48000004
.equ BANKCON1 ,0x48000008
.equ BANKCON2 ,0x4800000C
.equ BANKCON3 ,0x48000010
.equ BANKCON4 ,0x48000014
.equ BANKCON5 ,0x48000018
.equ BANKCON6 ,0x4800001C
.equ BANKCON7 ,0x48000020
.equ REFRESH ,0x48000024
.equ BANKSIZE ,0x48000028
.equ MRSRB6 ,0x4800002C
.equ MRSRB7 ,0x48000030
.text
.global _start
_start:
ldr r0, =0x53000000 @Close WATCHDOG
mov r1, #0x0
str r1, [r0]
ldr r0,=MPLLCON @Clock Init 400:100:50
ldr r1,=(192<<12)|(4<<4)|(1<<0)
str r1,[r0]
ldr r0,=CLKDIVN
ldr r1,=(2<<1)|(1<<0)
str r1,[r0]
mrc p15,0,r0,c1,c0,0
orr r0,r0,#0xc0000000//R1_nF:OR:R1_iA
mcr p15,0,r0,c1,c0,0
ldr r0,=BWSCON @Init sdram
ldr r1,=0x22011110
str r1,[r0]
ldr r0,= BANKCON6
ldr r1,=0x00018005
str r1,[r0]
ldr r0,=REFRESH
ldr r1,=0x008c07a3
str r1,[r0]
ldr r0,=BANKSIZE
ldr r1,=0x000000b1
str r1,[r0]
ldr r0,=MRSRB6
ldr r1,=0x00000030
str r1,[r0]
mov r1,#0x400 @Relacate
ldr r2,=0x30000000
mov r3,#0x600
1:
ldr r4,[r1],#4
str r4,[r2],#4
cmp r1,r3
bne 1b
ldr sp, =1024*4 @Call C
ldr lr,=loop
@bl main
ldr pc,=0x30000000 @main @0x800
loop:
b loop
实验结果:
led闪烁频率明显加快。
上一篇:S3C2440交叉编译环境搭建
下一篇:ARM中断向量表的简单分析
史海拾趣
|
生动形象的教学用电子钟[ZT] 笔者在教学中,设计了一套教学实验用“电子钟”电路。此线路包括七段数码显示器BS205和循环彩灯电路,实验显示生动有趣,各部分原理简单,适宜学生直接观察“编码器”、“译码器”、“寄存器”、“计数器”等逻辑 ...… 查看全部问答> |
|
关于TQ2440触摸屏的应用设计。现在能够实现触摸屏界面的旋转,想添加一些其它的应用功能,请问能不能把显示界面缩小,即原来3.5寸屏的界面,显示为1.75寸的区域,这种功能能够实现吗?如果实现需要涉及那些方面?… 查看全部问答> |
|
我在flash上烧写的镜像文件为 NK.BIN, 我在注册表中添加如下: ; Bind BINFS to the block driver [HKEY_LOCAL_MACHINE\\System\\StorageManager\\Profiles\\FlashDrv] \"DefaultFileSystem\"=\"BINFS\" \"Partition ...… 查看全部问答> |
|
我用的是keil. 遇到到 PA4, PA5 , PA6,PA7 等无法设置输出状态. 在keil的调试状态就感觉无**常设置.而引脚设置跟附近的一样,看起来没错. 但无**常设置.其他的比如PC5~PC7等就没有问题. 初始化的语句:应该没有问题. GPIO_Ini ...… 查看全部问答> |
|
下载 (108.1 KB) 2011-1-19 15:42 我现在在做微功耗,用的是待机模式,我在看微功耗的待机模式的启动项中,有个启动方式是IWDG,但是这中启动方式我没有办法跟踪,我在手册中看到可以检测复位标记来判断是什么方式复位 ...… 查看全部问答> |
|
#include<msp430x44x.h> interrupt[TIMERA0_VECTOR] void Timer_A(void) { ~~~ } void InitSystem(void) { ~~~ //TIME_A TACTL=ID1+TASSEL1+TACLR+ ...… 查看全部问答> |
|
有没有3v可用的数码管驱动芯片?或者怎么用电池给5v的74门供电? 想做个数字钟,但是找不到3v可用的数码管驱动芯片,找到了淘宝上也没卖的。 另外就是考虑怎么给3v/5v元件混合电路用AA电池供电……… 查看全部问答> |




