Interrupts on Cortex M - NVIC (demonstrated on STM32) | VIDEO 34
Channel: Matej Blagšič
Date: 2020-09-16

In this video I explain how interrupts work on the Arm Cortex M platform. The explanation is universal and can be applied on any ARM equiped device. I also give examples of code execution with a demonstration on different peripherals, internal and external.

Timestamps:
NVIC functions: 16:57
Demonstration: 17:59

Additional resources:
Nvic documentation: https://www.keil.com/pack/doc/CMSIS/Core/html/group__NVIC__gr.html
ARM memory structure and interrupts: https://www.youtube.com/watch?v=uFBNf7F3l60
Priority types: https://community.arm.com/developer/ip-products/system/b/embedded-blog/posts/cutting-through-the-confusion-with-arm-cortex-m-interrupt-priorities
NVIC presentation (by NXP): https://www.nxp.com/docs/en/supporting-information/Nested-Vector-Interrupt-Controller-Training.pdf
Stack: https://community.arm.com/developer/ip-products/processors/b/processors-ip-blog/posts/using-the-stack-in-aarch64-implementing-push-and-pop
ARM cores: https://www.watelectronics.com/arm-processor-architecture-working/