STC8A8K64D4 Series Manual
-
MOV P5M0, #00H
MOV P5M1, #00H
MOV SCON,#50H
MOV T2L,#0E8H ;65536-11059200/115200/4=0FFE8H
MOV T2H,#0FFH
MOV AUXR,#15H ;Start timer
SETB ES ;Enable UART1 interrupt
SETB EA
MOV SBUF,#5AH ; Send test data
JMP $
END
11.5.14 UART2 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 S2CON = 0x9a;
sfr S2BUF = 0x9b;
sfr IE2 = 0xaf;
#define ES2 0x01
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;
sbit P12 = P1^2;
sbit P13 = P1^3;
void UART2_Isr() interrupt 8
{
if (S2CON & 0x02)
{
S2CON &= ~0x02; //Clear interrupt flag
P12 = !P12; //Test port
}
if (S2CON & 0x01)
{
S2CON &= ~0x01; //Clear interrupt flag
P13 = !P13; //Test port
}