请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSP430FR5969 我想在 ISR 中编写一个代码。 但 ISR 中的大型代码不可取。 因此、我将使用内联汇编函数读取在中断发生之前存储的下一条指令的地址。 并将该地址存储到局部变量中。 并将堆栈内存中下一条指令的地址替换为回调函数,在该函数中,我将执行之前在 ISR 中完成的所有必需任务。 在回调函数中、执行完所有任务后、我只需跳转到本地变量中的下一个指令地址存储。 简单来说、执行 ISR 后、控制应该以正常方式返回到下一个指令地址、但在我的情况下、我将流控制从 ISR 重定向到回调函数、从回调函数返回到下一个指令地址。
那么、这个编程方法是否可取呢?