我目前正在尝试在STM32L152上实现中断。我没有使用标准外设库,因为我发现它们非常令人困惑并且难以理解。我还不太擅长用 C 语言来开发微 Controller 。
我目前通过寄存器做所有事情。 C语言中有没有办法通过寄存器来实现中断?那里似乎没有任何真正有意义的信息。我确实发现学习 C 一开始就非常困难。
谢谢
最佳答案
当然可以通过设置寄存器来实现中断。
寄存器值告诉STM如何处理中断、启用哪个中断、中断 Controller 如何工作。
您需要一个中断 vector 表。当中断发生时,程序计数器将被设置为程序存储器的特定地址。您应该在此处将跳转命令(汇编器 jmp)放置到您的中断服务例程中。
您应该阅读 this reference manual 中的第 10 章.
希望这有帮助。
关于Cortex M3 上的 C 中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28947792/