你的发现是合符单片机运作的 如果有学过汇编就会很好理解 ![]() interrupt 0的向量地址是0003H interrupt 4的向量地址是0023H 你初始化了外中断0 当外中断0引脚收到信号时 CPU会响应中断申请 先保存现在的PC指针值 再把PC指针指向向量地址 由于编程上没有在0003H地址写中断函数 所以PC会一直累加 如果刚好0004H~0022H都没有代码 加到0023H(interrupt 4) 运行完中断函数后就会执行RETI指令 PC就取回中断前的保存值运行下去 但由于IE0没有被硬件清零 所以外中断0只会响应一次 |
c0f9a4 发表于 2023-11-14 21:06 请问怎么操作 我不会 |
npn 发表于 2023-11-14 22:01 我的意思是我把中断号改了 仿真依然不受影响 不懂为什么 |
csmyldl 发表于 2023-11-14 19:04 我改成0-4都可以 ![]() |
interrupt 4 这是一个串口中断,你没有配置串口寄存器。 |
加个工作寄存器组 |
不可能进入中断服务程序,肯定实现不了(我改成4不能进中断) |