为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

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

3 回答

?
千巷猫影

TA贡献1829条经验 获得超7个赞

单片机的中断序号是固定的,不能改。

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

查看完整回答
反对 回复 2022-10-06
?
GCT1015

TA贡献1827条经验 获得超4个赞

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

查看完整回答
反对 回复 2022-10-06
?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

interrupt 后面的数字表示中断向量,0表示外部中断0,1表示定时器中断0, 2表示外部中断1, 3表示定时器中断1, 4表示串口中断

查看完整回答
反对 回复 2022-10-06
  • 3 回答
  • 0 关注
  • 127 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信