3 Interrupt Functions in Assembly Language

Interrupt functions differ from ordinary C functions in that:

  • Calls to interrupt functions are made via interrupt vectors. Direct calls are not allowed.
  • No arguments can be passed to an interrupt function
  • No return value
  • Flags (SREG) and registers used in interrupt functions should be stored and restored
  • Interrupt functions return by using the RETI instruction