SN8F2250B Series
USB 2.0 Full-Speed 8-Bit Micro-Controller
5.2 SYSTEM MODE SWITCHING EXAMPLE
¾
¾
Example: Switch normal/slow mode to power down (sleep) mode.
B0BSET FCPUM0 ; Set CPUM0 = 1.
Note: During the sleep, only the wakeup pin and reset can wakeup the system back to the normal mode.
Example: Switch normal mode to slow mode.
B0BSET
B0BSET
FCLKMD
FSTPHX
;To set CLKMD = 1, Change the system into slow mode
;To stop external high-speed oscillator for power saving.
¾
Example: Switch slow mode to normal mode (The external high-speed oscillator is still running).
B0BCLR FCLKMD ;To set CLKMD = 0
Example: Switch slow mode to normal mode (The external high-speed oscillator stops).
If external high clock stop and program want to switch back normal mode. It is necessary to delay at least 10mS for
external clock stable.
B0BCLR
FSTPHX
; Turn on the external high-speed oscillator.
; internal RC=24KHz (typical) will delay
MOV
A, #20
Z, A
Z
B0MOV
DECMS
JMP
@@:
; 0.33ms X 30 ~ 10ms for external clock stable
@B
;
B0BCLR
FCLKMD
; Change the system back to the normal mode
Example: Switch normal/slow mode to green mode.
B0BSET FCPUM1
; Set CPUM1 = 1.
Note: If T0 timer wakeup function is disabled in the green mode, only the wakeup pin and reset pin can
wakeup the system backs to the previous operation mode.
SONiX TECHNOLOGY CO., LTD
Page 53
Version 1.1