STC8A8K64D4 Series Manual
-
PUSH PSW
MOV A,S2CON
JNB ACC.1,CHECKRI
ANL S2CON,#NOT 02H ;Clear interrupt flag
CPL P1.2 ;Test port
CHECKRI:
MOV A,S2CON
JNB ACC.0,ISREXIT
ANL S2CON,#NOT 01H ;Clear interrupt flag
CPL P1.3 ;Test port
ISREXIT:
POP PSW
POP ACC
RETI
MAIN:
MOV SP, #5FH
MOV P0M0, #00H
MOV P0M1, #00H
MOV P1M0, #00H
MOV P1M1, #00H
MOV P2M0, #00H
MOV P2M1, #00H
MOV P3M0, #00H
MOV P3M1, #00H
MOV P4M0, #00H
MOV P4M1, #00H
MOV P5M0, #00H
MOV P5M1, #00H
MOV S2CON,#10H
MOV T2L,#0E8H ;65536-11059200/115200/4=0FFE8H
MOV T2H,#0FFH
MOV AUXR,#14H ;Start timer
MOV IE2,#ES2 ;Enable UART2 interrupt
SETB EA
MOV S2BUF,#5AH ; Send test data
JMP $
END
11.5.15 UART3 Interrupt
C language code
//Operating frequency for test is 11.0592MHz
#include "reg51.h"
#include "intrins.h"
sfr T2L = 0xd7;
sfr T2H = 0xd6;
sfr AUXR = 0x8e;
sfr S3CON = 0xac;
sfr S3BUF = 0xad;
sfr IE2 = 0xaf;
#define ES3 0x08
sfr P0M1 = 0x93;