STC8A8K64D4 Series Manual
-
; MOV P_SW2,#80H
; MOV A,#0C0H ;Start external crystal
; MOV DPTR,#XOSCCR
; MOVX @DPTR,A
; MOVX A,@DPTR
; JNB ACC.0,$-1 ;Waiting for the clock to stabilize
; CLR A ;Clock is not divided
; MOV DPTR,#CLKDIV
MOVX @DPTR,A
; MOV A,#01H ;Select external crystal
; MOV DPTR,#CKSEL
; MOVX @DPTR,A
; MOV P_SW2,#00H
; MOV P_SW2,#80H
; MOV A,#80H ;Start internal 32KHz IRC
; MOV DPTR,#IRC32KCR
; MOVX @DPTR,A
; MOVX A,@DPTR
; JNB ACC.0,$-1 ;Waiting for the clock to stabilize
; CLR A ;Clock is not divided
; MOV DPTR,#CLKDIV
; MOVX @DPTR,A
; MOV A,#03H ;Select internal 32KHz
; MOV DPTR,#CKSEL
; MOVX @DPTR,A
; MOV P_SW2,#00H
JMP $
END
6.7.2 Main Clock Output
C language code
// Operating frequency for test is 11.0592MHz
#include "reg51.h"
#include "intrins.h"
#define MCLKOCR (*(unsigned char volatile xdata *)0xfe05)
sfr P_SW2 = 0xba;
sfr P0M1 = 0x93;
sfr P0M0 = 0x94;
sfr P1M1 = 0x91;
sfr P1M0 = 0x92;
sfr P2M1 = 0x95;
sfr P2M0 = 0x96;
sfr P3M1 = 0xb1;
sfr P3M0 = 0xb2;
sfr P4M1 = 0xb3;
sfr P4M0 = 0xb4;
sfr P5M1 = 0xc9;
sfr P5M0 = 0xca;
void main()