单片机中段程序疑问?

我想知道,51单片机,如果一个定时器,我写了两个中断系统,定时器怎么会知道我想执行哪个中断系统,又如果我开了两个定时器,写了两个中断,怎么选择他们需要执行哪个中断。

有中断向量表,在中断向量表里面配置你要用的那个处理函数

?两个中断系统什么意思?如果是两个定时器,硬件上的区分,有各自的中断函数,如果是一个中断函数有两个中断处理方法,就是软件上,你自己做好标志位区分


//定时器 0 中断程序,中断号 1
void timer0() interrupt 1
{
}

//timer0 是函数名,以好懂好记为主可以随意起名字。
//interrupt 1 这个 1 是中断号,在51中这个号是固定的,比如下表中断中号的定义

//       中断名称   中断号
#define  INT0_VECT   0      //外部中断0
#define  TMR0_VECT   1      //定时器0
#define  INT1_VECT   2      //外部中断1
#define  TMR1_VECT   3      //定时器1
#define  COM0_VECT   4      //串行中断
#define  TMR2_VECT   5      //定时器2

//其他中断函数举例

//外部中断0 中断程序,中断号 1
void int0() interrupt 0
{
}

//串口0 中断程序,中断号 4
void com0() interrupt 4
{
}