LPC2300系列的启动代码是不是已经自动锁存了PLL?程序里面不需要自己写代码锁定pLL了?
LPC2300系列的启动代码是不是已经自动锁存了PLL?程序里面不需要自己写代码锁定pLL了?小弟使用Keil uVision4,里面有LPC2300的启动代码,下面是有关时钟和PLL的一段代码:
; Clock Setup ------------------------------------------------------------------
IF (:LNOT:(:DEF:NO_CLOCK_SETUP)):LAND:(CLOCK_SETUP != 0)
LDR R0, =SCB_BASE
MOV R1, #0xAA
MOV R2, #0x55
;Configure and Enable PLL
LDR R3, =SCS_Val ; Enable main oscillator
STR R3,
IF (SCS_Val:AND:OSCEN) != 0
OSC_Loop LDR R3, ; Wait for main osc stabilize
ANDS R3, R3, #OSCSTAT
BEQ OSC_Loop
ENDIF
LDR R3, =CLKSRCSEL_Val ; Select PLL source clock
STR R3,
LDR R3, =PLLCFG_Val
STR R3,
STR R1,
STR R2,
MOV R3, #PLLCON_PLLE
STR R3,
STR R1,
STR R2,
IF (CLKSRCSEL_Val:AND:3) != 2
;Wait until PLL Locked (if source is not RTC oscillator)
PLL_Loop LDR R3,
ANDS R3, R3, #PLLSTAT_PLOCK
BEQ PLL_Loop
ELSE
;Wait at least 200 cycles (if source is RTC oscillator)
MOV R3, #(200/4)
PLL_Loop SUBS R3, R3, #1
BNE PLL_Loop
ENDIF
M_N_Lock LDR R3,
LDR R4, =(PLLSTAT_M:OR:PLLSTAT_N)
AND R3, R3, R4
LDR R4, =PLLCFG_Val
EORS R3, R3, R4
BNE M_N_Lock
-----------------------------------------
运行以后,不做任何程序,发现PLLSTAT寄存器=0x0700000B
http://cache.amobbs.com/bbs_upload782111/files_32/ourdev_576878.jpg
(原文件名:QQ截图未命名.jpg)
这时候242526三位已经是1了。
-----------------------
我想请教各位高手,是不是不用自己写代码锁定PLL了?
谢谢 时刻关注,期待高手指点 周一了,希望高手能看到进来指点一下 等别人还不如查查汇编伪指令,很容易看明白的
页:
[1]