MSP430的中断优先级和中断嵌套.docxVIP

  • 7
  • 0
  • 约小于1千字
  • 约 1页
  • 2023-03-05 发布于上海
  • 举报
MSP430 的中断优先级按所在的向量的大小排列,中断向量地址越高优先级就越大,但是默认的 MSP430 是不能中断嵌套的,要想在执行某一中断时能够响应更高优先级的中断,需要在低优先级的中断程序中手动打开全局中断便能位,因为在进入中断服务子程序时全局中 断便能位被清零,即禁止响应其它中断。 msp430 的指令中, DINT 和 EINT 分别指关和开所有中断,也就是包涵 P1IE、P2IE、WDTIE、TAIE、TBIE、ADC12IE、串口中断允许的所有中断允许位为 “0” 和为 “1”。 当同时有多个中断来的时候才有优先级的考虑 (优先级顺序可查看向量表)有中断响应以后自动关闭总中断,这个时候即使来更高优先级的中断都不会响应要中断嵌套的话,就必须在中断中打开总中断. 实现中断嵌套需要注意以下几点: 430 默认的是关闭中断嵌套的,除非你在一个中断程序中再次开总中断 EINT; 当进入中断程序时,只要不在中断中再次开中断,则总中断是关闭的,此时来中断不管是比当前中断的优先级高还是低都不执行; 若在中断 A 中开了总中断,则可以响应后来的中断 B(不管 B 的优先级比 A 高还是低),B 执行完再继续执行 A。注意:进入中断 B 后总中断同样也会关闭,如 果 B 中断程序执行时需响应中断 C,则此时也要开总中断,若不需响应中断,则不用开中断,B 执行完后跳出中断程序进入 A

文档评论(0)

1亿VIP精品文档

相关文档