interrupt 0 外部中断0
interrupt 1 T0中断
interrupt 2 外部中断1
interrupt 3 T1中断
interrupt 4 串口中断
我来告诉你实质:单片机的中断处理是这样工作的,当有中断请求后(并且允许中断)CPU就跳转到特定的地址执行程序,在汇编语言中你可以直接跳到该地址,而在C语言中不是这样的,而是采用interrupt加序号的办法,每一个序号对应着一个中断向量地址,这样编程者就不需要了解中断向量的地址具体是多少了,这也就是C语言的优点。
void Uart_Isr123() interrupt 4
{
if (RI)
{
RI = 0; //Clear receive interrupt flag
P0 = SBUF; //P0 show UART data
bit9 = RB8; //P2.2 show parity bit
}
if (TI)
{
TI = 0; //Clear transmit interrupt flag
busy = 0; //Clear transmit busy flag
}
}
中断程序