?? init_pll.asm
字號:
* filename : init_pll.asm *
* -initialize the CPU clock (10MHz crystal is used) *
.mmregs
.def _INIT_PLL
.text
_INIT_PLL:
; stm #0006h,BSCR ;clock out div by 1 and enable bus hold
;-- 1. set clock mode to DIV mode. In order to change PLLNDIV, PLLCOUNT etc
stm #0,CLKMD
wait_div_mode:
bitf *(CLKMD),#1 ;test if PLLSTSATUS=0
bc wait_div_mode,TC ;if not move on(PLL mode)
;-- 2. set clock mode to PLL mode
stm #0111011111111111b,CLKMD
;0111~~~~~~~~~~~~ ;PLL multiplier, freq = PLLMUL + 1
;~~~~0~~~~~~~~~~~ ;PLLDIV, pll divide mode
;~~~~~11111111~~~ ;PLLCOUNT, pll lock time, I/P clk X 16
;~~~~~~~~~~~~~1~~ ;PLLONOFF
;~~~~~~~~~~~~~~1~ ;PLLNDIV, pll divide mode
;~~~~~~~~~~~~~~~1 ;PLLSTATUS, pll mode(read only)
;-- 3. wait for PLL lock
wait_pll_mode:
bitf *(CLKMD),#1
bc wait_pll_mode,NTC
NOP
LDM PMST,A ;
OR #4H,A ;enable CLKOUT signal
STLM A,PMST ;
nop
nop
RET
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -