猿问

请问下面的3是怎么来的?

void T1_time() interrup 3
{
TH1 = (65536 - 1000)/256;
TL1 = (65536 - 1000)%256;
}
上面这个代码是一个定时器1的中断服务程序,定时器1的中断序号是3。
问题:如果将3改成2,或者是1对整个程序来说有什么影响,是怎样通过序号的变化影响的?
谢谢!

一只斗牛犬
浏览 128回答 3
3回答

千巷猫影

单片机的中断序号是固定的,不能改。51单片机中断级别中断源 默认中断级别 中断序号(C语言用)INIT0---外部中断0 最高 0T0---定时器/计数器0中断 第2 1INIT1---外部中断1 第3 2T1----定时器/计数器1中断 第4 3TI/RI---串行口中断 第5 4T2---定时器/计数器2中断 最低 5

GCT1015

单片机本身定义的,就像人名一样,改成2或1的话,当你执行定时器1的中断的时候,不会进入这个中断函数,而2或1的中断有可能进入这个中断函数

哆啦的时光机

interrupt 后面的数字表示中断向量,0表示外部中断0,1表示定时器中断0, 2表示外部中断1, 3表示定时器中断1, 4表示串口中断
随时随地看视频慕课网APP
我要回答