由于MSP430系列单片机不支持软中断功能,但是经查阅资料,可以自己利用汇编编写程序模拟中断的实现过程,现请问大神们谁做过相关的部分,可否共享一下相关代码,谢谢
Loops:
你好。 MSP430单片机不支持中断嵌套。 你这里说的软中断不知道你想实现哪种功能,附录两篇帖子供参考:
Software Interrupt
http://e2e.ti.com/support/microcontrollers/msp430/f/166/t/137409
What is the best way on MSP430 to trigger a Reset (POR) by Software?
http://e2e.ti.com/support/microcontrollers/msp430/f/166/t/47762
zhifang yang1:
软件中断只是操作系统的概念,唯一的作用是做一些优先级的考量。对于单线程CPU来说意义并不大。。
如果你只是想在硬件中断程序中,将一部分耗时或者不重要的程序分出来,不再block其他硬件中断的执行,手动打开全局中断就可以了_EINT();
(默认进入任何硬件中断后,都是_DINT()的,此时再来其他硬件中断不会嵌套,而是排队执行。你手动打开_EINT()之后,等于允许了其他中断的嵌套。)
如果需要的优先级多,可以考虑引入OS。
灰小子:
回复 zhifang yang1:
楼上正解。可以用os或者类似os的方法实现伪中断。
如果是外设硬件方面的优先级问题,可以考虑中断嵌套
TI中文支持网



