Home | Projects | Notes > ARM Cortex-M3/M4 Processor > Exception Model (System Exceptions, Interrupts)

Exception Model (System Exceptions, Interrupts)

This section applies to ARM Cortex M0/M1/M3/M4/M7 processors.

 

ARM Cortex Mx Processor Exception Model

 

System Exceptions

 

exception-types-1

 

vector-table-system-exceptions

 

System Exception Control Registers

 

arm-cortex-m4-block-diagram

 

 

arm-cortex-mx-processor-bus-interface

 

Default System Exception Status

System ExceptionDefault State
NMIAlways enabled by default, cannot be masked.
HardFaultAlways enabled by default, can be masked.
MemManageDisabled by default
BusFaultDisabled by default
UsageFaultDisabled by default
SVCallTriggered only when the svc instruction is executed
PendSVDisabled by default
SysTickDisabled by default and triggered whenever SysTick timer is enabled and expires
DebugMonitorDisabled by default

 

Interrupts

Nested Vectored Interrupt Controller (NVIC)

NVIC Registers

What "System Control Block (SCB) Registers" are to system exceptions, "NVIC Registerse" are to interrupts.

 

nvic-registers

 

 

Exercise

 

interrupt-handling-sequence

 

 

References

Nayak, K. (2022). Embedded Systems Programming on ARM Cortex-M3/M4 Processor [Video file]. Retrieved from https://www.udemy.com/course/embedded-system-programming-on-arm-cortex-m3m4/