系统时钟的配置

 

对Figure7-4的说明:

上电时,PLL没被启动,FCLK等于外部输入时钟,称为Fin。

1 上电几毫秒后,晶振(OSC)输出稳定,FCLK = Fin,nRESET恢复高电平后,CPU开始执行指令。

2 设置MPLL,等待Lock Time(使MPLL输出稳定),MPLL稳定输出,CPU工作于新的工作频率(在Lock Time期间,FCLK停震,CPU停止工作)。

 

具体的配置的步骤:

1 设置Lock Time;

2 设置时钟比例(FCLK:HCLK:PCLK);

3 如果CLKDIVN寄存器的位HDIVN非0,CPU的总线模式应该从"fast bus mode"变为"asynchronous bus mode"; 如果位HDIVN非0,而CPU的总线模式仍是"fast bus mode",则CPU的工作频率将自动变为HCLK,而不是FCLK。

#MMU_SetAsynchronousBusMode

mrc p15,0,r0,c1,c0,0

orr r0,r0,#R1_Nf:OR:R1_iA(#0xc0000000)

mcr p15,0,r0,c1,c0,0

4 设置MPLL;一旦设置MPLL,就会锁定Lock Time,直到MPLL输出稳定。

 

示例代码:

posted @ 2019-05-19 14:38  Lilto  阅读(863)  评论(0编辑  收藏  举报