Microchip SAM D21/DA1 interrupt facilities are defined in the
include/picolibrary/microchip/sam/d21da1/interrupt.h/source/picolibrary/microchip/sam/d21da1/interrupt.cc
header/source file pair.
The default interrupt vector table instance and associated interrupt handler functions are
defined in the
include/picolibrary/microchip/sam/d21da1/interrupt/default_vector_table.h/source/picolibrary/microchip/sam/d21da1/interrupt/default_vector_table.cc
header/source file pair.
The default interrupt vector table instance and associated interrupt handler functions are
not included in the picolibrary-microchip-samd-d21da1 static library.
To use the default interrupt vector table instance and associated interrupt handler
functions, include the picolibrary-microchip-sam-d21da1-interrupt-default_vector_table
object library objects in an executable’s sources list.
add_executable(
foo
$<TARGET_OBJECTS>:picolibrary-microchip-sam-d21da1-interrupt-default_vector_table>
)
The default interrupt vector table instance is placed in the .vectors section and is
populated as follows:
_stack_end (must be defined by linker script)::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_reset()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_nmi()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_hard_fault()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_svcall()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_pendsv()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_systick0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_pm0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sysctrl0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_wdt0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_rtc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_eic0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_nvmctrl0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_dmac0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_usb0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_evsys0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom1()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom2()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom3()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom4()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom5()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc1()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc2()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc3()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc4()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc5()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc6()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc7()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_adc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_ac0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_dac0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_ptc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_i2s0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_ac1()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc3()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_reset() is defined as a weak
alias for ::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_reset_default() so
that its behavior can be overridden.
::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_reset_default() uses the
following linker defined symbols:
_data_flash_start: The start of the data used to initialize the .data section_data_start: The start of the .data section_data_end: The end of the .data section_bss_start: The start of the .bss section_bss_end: The end of the .bss section_vector_table: The start of the default vector tableThe following functions are defined as weak aliases for
::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_interrupt_default() so that
their behavior can be overridden:
::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_nmi()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_hard_fault()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_svcall()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_pendsv()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_systick0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_pm0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sysctrl0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_wdt0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_rtc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_eic0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_nvmctrl0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_dmac0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_usb0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_evsys0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom1()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom2()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom3()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom4()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_sercom5()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc1()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc2()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc3()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc4()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc5()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc6()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tc7()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_adc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_ac0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_dac0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_ptc0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_i2s0()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_ac1()::picolibrary::Microchip::SAM::D21DA1::Interrupt::handle_tcc3()