CPU samd21 { CORTEX samd21 { PRIO_BITS = 2; CLOCK = 48000000; }; BUILDOPTIONS buildOptionsForSamD21 { COMMONFLAGS = "-D__SAMD21J18A__"; //processor def. }; INTERRUPT_COUNT nb_it { IT_TABLE_SIZE = 44; }; /* * systick is an option on Cortex-M0+, * it is defined at the processor specific level. */ INTERRUPT SysTick { VECT = 15; VECTOR_TYPE = HANDLER { NAME = "SysTick_Handler"; }; ACK = FALSE; SETPRIO = TRUE { NUMBER = -1; }; }; INTERRUPT SVCall { SETPRIO = TRUE { NUMBER = -5; }; }; INTERRUPT PendSV { SETPRIO = TRUE { NUMBER = -2; }; }; INTERRUPT PM_IRQ { VECT = 16; VECTOR_TYPE = HANDLER { NAME = "PM_Handler"; }; SETPRIO = TRUE { NUMBER = 0; }; }; INTERRUPT SYSCTRL_IRQ { VECT = 17; VECTOR_TYPE = HANDLER { NAME = "SYSCTRL_Handler"; }; SETPRIO = TRUE { NUMBER = 1; }; }; INTERRUPT WDT_IRQ { VECT = 18; VECTOR_TYPE = HANDLER { NAME = "WDT_Handler"; }; SETPRIO = TRUE { NUMBER = 2; }; }; INTERRUPT RTC_IRQ { VECT = 19; VECTOR_TYPE = HANDLER { NAME = "RTC_Handler"; }; SETPRIO = TRUE { NUMBER = 3; }; }; INTERRUPT EIC_IRQ { VECT = 20; VECTOR_TYPE = HANDLER { NAME = "EIC_Handler"; }; ACK = FALSE; SETPRIO = TRUE { NUMBER = 4; }; }; INTERRUPT NVMCTRL_IRQ { VECT = 21; VECTOR_TYPE = HANDLER { NAME = "NVMCTRL_Handler"; }; SETPRIO = TRUE { NUMBER = 5; }; }; INTERRUPT DMAC_IRQ { VECT = 22; VECTOR_TYPE = HANDLER { NAME = "DMAC_Handler"; }; SETPRIO = TRUE { NUMBER = 6; }; }; INTERRUPT USB_IRQ { VECT = 23; VECTOR_TYPE = HANDLER { NAME = "USB_Handler"; }; SETPRIO = TRUE { NUMBER = 7; }; }; INTERRUPT EVSYS_IRQ { VECT = 24; VECTOR_TYPE = HANDLER { NAME = "EVSYS_Handler"; }; SETPRIO = TRUE { NUMBER = 8; }; }; INTERRUPT SERCOM0_IRQ { VECT = 25; VECTOR_TYPE = HANDLER { NAME = "SERCOM0_Handler"; }; SETPRIO = TRUE { NUMBER = 9; }; }; INTERRUPT SERCOM1_IRQ { VECT = 26; VECTOR_TYPE = HANDLER { NAME = "SERCOM1_Handler"; }; SETPRIO = TRUE { NUMBER = 10; }; }; INTERRUPT SERCOM2_IRQ { VECT = 27; VECTOR_TYPE = HANDLER { NAME = "SERCOM2_Handler"; }; SETPRIO = TRUE { NUMBER = 11; }; }; INTERRUPT SERCOM3_IRQ { VECT = 28; VECTOR_TYPE = HANDLER { NAME = "SERCOM3_Handler"; }; SETPRIO = TRUE { NUMBER = 12; }; }; INTERRUPT SERCOM4_IRQ { VECT = 29; VECTOR_TYPE = HANDLER { NAME = "SERCOM4_Handler"; }; SETPRIO = TRUE { NUMBER = 13; }; }; INTERRUPT SERCOM5_IRQ { VECT = 30; VECTOR_TYPE = HANDLER { NAME = "SERCOM5_Handler"; }; SETPRIO = TRUE { NUMBER = 14; }; }; INTERRUPT TCC0_IRQ { VECT = 31; VECTOR_TYPE = HANDLER { NAME = "TCC0_Handler"; }; SETPRIO = TRUE { NUMBER = 15; }; }; INTERRUPT TCC1_IRQ { VECT = 32; VECTOR_TYPE = HANDLER { NAME = "TCC1_Handler"; }; SETPRIO = TRUE { NUMBER = 16; }; }; INTERRUPT TCC2_IRQ { VECT = 33; VECTOR_TYPE = HANDLER { NAME = "TCC2_Handler"; }; SETPRIO = TRUE { NUMBER = 17; }; }; INTERRUPT TC3_IRQ { VECT = 34; VECTOR_TYPE = HANDLER { NAME = "TC3_Handler"; }; SETPRIO = TRUE { NUMBER = 18; }; }; INTERRUPT TC4_IRQ { VECT = 35; VECTOR_TYPE = HANDLER { NAME = "TC4_Handler"; }; SETPRIO = TRUE { NUMBER = 19; }; }; INTERRUPT TC5_IRQ { VECT = 36; VECTOR_TYPE = HANDLER { NAME = "TC5_Handler"; }; SETPRIO = TRUE { NUMBER = 20; }; }; INTERRUPT TC6_IRQ { VECT = 37; VECTOR_TYPE = HANDLER { NAME = "TC6_Handler"; }; SETPRIO = TRUE { NUMBER = 21; }; }; INTERRUPT TC7_IRQ { VECT = 38; VECTOR_TYPE = HANDLER { NAME = "TC7_Handler"; }; SETPRIO = TRUE { NUMBER = 22; }; }; INTERRUPT ADC_IRQ { VECT = 39; VECTOR_TYPE = HANDLER { NAME = "ADC_Handler"; }; SETPRIO = TRUE { NUMBER = 23; }; }; INTERRUPT AC_IRQ { VECT = 40; VECTOR_TYPE = HANDLER { NAME = "AC_Handler"; }; SETPRIO = TRUE { NUMBER = 24; }; }; INTERRUPT DAC_IRQ { VECT = 41; VECTOR_TYPE = HANDLER { NAME = "DAC_Handler"; }; SETPRIO = TRUE { NUMBER = 25; }; }; INTERRUPT PTC_IRQ { VECT = 42; VECTOR_TYPE = HANDLER { NAME = "PTC_Handler"; }; SETPRIO = TRUE { NUMBER = 26; }; }; INTERRUPT I2S_IRQ { VECT = 43; VECTOR_TYPE = HANDLER { NAME = "I2S_Handler"; }; SETPRIO = TRUE { NUMBER = 27; }; }; INTERRUPT AC1_IRQ { VECT = 44; VECTOR_TYPE = HANDLER { NAME = "AC1_Handler"; }; }; PLATFORM_FILES samd21 { PATH = "cortex/armv6m/samd21"; CFILE = "tpl_machine_samd.c"; CFILE = "startup_samd.c"; }; PLATFORM_FILES sam_cmsis { PATH = "cortex/armv6m/samd21/CMSIS-Atmel/Device/ATMEL"; }; PLATFORM_FILES utils { PATH = "cortex/armv6m/samd21/utils"; CFILE = "pinAccess.c"; CFILE = "pinMux.c"; CFILE = "eic.c"; }; POSTCOMMAND flash { COMMAND flash { MESSAGE = "Flashing"; COMMAND = "openocd"; INPUT = TARGET { EXT = ""; }; PREOPTION = "-f board/atmel_samd21_xplained_pro.cfg -c \\\"program"; POSTOPTION = " verify reset exit\\\""; }; }; };