110
CHAPTER 3 CLOCK GENERATOR AND CONTROLLER
CHC_1:
call VCO_RUN
PLL_SET_END:
ld @R15+, PS ; pop processor status
; ************************************************************
; VCO Setting
; ************************************************************
VCO_RUN:
st R3, @-R15 ; push R3
ldi:8 #PCTR _MASK, R3 ; PCTR_MASK =0000 1000 b
and R5, R3 ; PTCR->VSTP=1 ?
beq LOOP_100US_END ; if VSTP = 0 return
bandl #0111B, @r1 ; set VSTP = 0
st R2, @-R15 ; push R2 for Loop counter
ldi:20 #0x15E, R2 ; wait 100
µ
S
WAIT_100US: ; 100us = 160ns(6.25MHz) * 7 * 100 (2BC)cycle
add2 #(-1), R2 ; 2BCh/2 = 15Eh (if cache on)
bne WAIT_100US ;
LOOP_100US_END:
ld @R15+, R2 ; Pop R2
ld @R15+, R3 ; Pop R3
ret