永发信息网

单片机中的Timer0Interrupt(void) interrupt 3怎么解释呢,希望您详细讲解。

答案:1  悬赏:0  手机版
解决时间 2021-03-17 08:13
  • 提问者网友:
  • 2021-03-16 18:39
单片机中的Timer0Interrupt(void) interrupt 3怎么解释呢,希望您详细讲解。
最佳答案
  • 五星知识达人网友:一叶十三刺
  • 2021-03-16 19:49
咱们以AT89X52.h这个头文件来说明吧,这个文件中有这么个定义:

#define IE0_VECTOR 0
#define TF0_VECTOR 1
#define IE1_VECTOR 2
#define TF1_VECTOR 3
#define SIO_VECTOR 4

#define TF2_VECTOR 5 #define EX2_VECTOR 5
所以,
Timer0Interrupt(void) interrupt TF1_VECTOR 等价于你的这句 Timer0Interrupt(void) interrupt 3
数字3前面的这个interrupt是C51中的一个关键字,当编译器看到它以后,就知道这个函数是一个中断函数,那么编译器就根据interrupt后面的这个数值进行计算,得到中断服务函数的入口地址,这里也就是定时器0的中断服务函数的入口地址0x1B,从而当定时器0中断时,程序指针PC就会指向0x1B,达到执行中断的目的。追问非常抱歉啊,我提问应该改成“单片机中的Timer 1 Interrupt(void) interrupt 3”得到的解释就是您上面的内容,不过定时器0改为定时器1,简而言之这句就是表达的意思是定时器1的中断服务函数入口地址。再次表示感谢您的精彩讲解。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯