中断寄存器就是用于存贮中断状态的 包含是否启用中断 或者是 是否发生中断
#include
void InitUART(void)
{
TMOD = 0x20; //计时器类型
SCON = 0x50;
TH1 = 0xFD;
TL1 = TH1;
PCON = 0x00;
EA = 1; //中断寄存器的操作
ES = 1;
TR1 = 1; //计时器1的中断
}
void SendOneByte(unsigned char c)
{
SBUF = c;
while(!TI);
TI = 0;
}
void main(void)
{
InitUART();
}
void UARTInterrupt(void) interrupt 4
{
if(RI)
{
RI = 0;
//add your code here!
}
else
TI = 0;
}
中断时寄存器把中断前的地址存起来,等到中断结束再取出继续前程序