avr_interrupts(3avr)
avr_interrupts(3avr) πβ¨
π NAME π
avr_interrupts β <avr/interrupt.h>: Interrupts
okay bestie, this is the whole interrupt vibe for AVR-LibC, and it's giving main character energy. no cap. π¦
πΈ SYNOPSIS πΈ
β¨ Global manipulation of the interrupt flag β¨
The global interrupt flag is literally chilling in the I bit of the status register (SREG). periodt. π
Handling interrupts frequently requires attention regarding atomic access to objects that could be altered by code running within an interrupt context β see <util/atomic.h>. iykyk. π₯
Frequently, interrupts are being disabled for periods of time in order to perform certain operations without being disturbed; see Problems with reordering code for things to be taken into account with respect to compiler optimizations. (yes, compiler optimizations are that girl. π)
#define sei()
#define cli()
π Macros for writing interrupt handler functions π
These are the glow-up macros for your ISR besties:
#define ISR(vector, attributes)
#define SIGNAL(vector)
#define EMPTY_INTERRUPT(vector)
#define ISR_ALIAS(vector, target_vector)
#define reti()
#define BADISR_vect
π ISR attributes π
The extra sparkle you can slap on your ISR:
#define ISR_BLOCK
#define ISR_NOBLOCK
#define ISR_NAKED
#define ISR_FLATTEN
#define ISR_NOICF
#define ISR_NOGCCISR
#define ISR_ALIASOF(target_vector)
π DETAILED DESCRIPTION π
Note β This discussion of interrupts was originally taken from Rich Neswold's document. See Acknowledgments. π«Ά
π Introduction to AVR-LibC's interrupt handling π
It's nearly impossible to find compilers that agree on how to handle interrupt code. Since the C language tries to stay away from machine dependent details, each compiler writer is forced to design their method of support. literally every compiler is doing its own thing. π
In the AVR-GCC environment, the vector table is predefined to point to interrupt routines with predetermined names. By using the appropriate name, your routine will be called when the corresponding interrupt occurs. The device library provides a set of default interrupt routines, which will get used if you don't define your own. so if you don't show up, the default does. not me. π
Patching into the vector table is only one part of the problem. The compiler uses, by convention, a set of registers when it's normally executing compiler-generated code. It's important that these registers, as well as the status register, get saved and restored. yes, save and restore, no cap. πΎ
These details seem to make interrupt routines a little messy, but all these details are handled by the Interrupt API. An interrupt routine is defined with ISR(). This macro register and mark the routine as an interrupt handler for the specified peripheral. The following is an example definition of a handler for the ADC interrupt. slay. β¨
#include <avr/interrupt.h>
ISR(ADC_vect)
{
// user code here
}
Refer to the chapter explaining assembler programming for an explanation about interrupt routines written solely in assembly. π§
π¦ Catch-all interrupt vector π¦
If an unexpected interrupt occurs (interrupt is enabled but no handler is installed, which usually indicates a bug), then the default action is to reset the device by jumping to the reset vector. You can override this by supplying a function named BADISR_vect which should be defined with ISR() as such. The name BADISR_vect is actually an alias for __vector_default. The latter must be used inside assembly code in case <avr/interrupt.h> is not included. so if things go rogue, it's reset city. π
#include <avr/interrupt.h>
ISR(BADISR_vect)
{
// user code here
}
π Nested interrupts π
The AVR hardware clears the global interrupt flag in SREG when an interrupt request is serviced. Thus, normally interrupts will remain disabled inside the handler until the handler exits, where the RETI instruction (that is emitted by the compiler as part of the normal function epilogue for an ISR) will eventually re-enable further interrupts. For that reason, interrupt handlers normally do not nest. For most interrupt handlers, this is the desired behaviour, for some it is even required in order to prevent infinitely recursive interrupts (like UART interrupts, or level-triggered external interrupts). In rare circumstances though it might be desired to re-enable the global interrupt flag as early as possible in the interrupt handler, in order to not defer any other interrupt more than absolutely needed. This could be done using an sei() instruction right at the beginning of the interrupt handler, but this still leaves few instructions inside the compiler-generated function prologue to run with global interrupts disabled. The compiler can be instructed to insert a SEI instruction right at the beginning of an interrupt handler by declaring the handler the following way:
ISR(XXX_vect, ISR_NOBLOCK)
{
...
}
where XXX_vect is the name of a valid interrupt vector for the MCU type in question, as explained below. π
π Two vectors sharing the same code π
In some circumstances, the actions to be taken upon two different interrupts might be completely identical so a single implementation for the ISR would suffice. For example, pin-change interrupts arriving from two different ports could logically signal an event that is independent from the actual port (and thus interrupt vector) where it happened. Sharing interrupt vector code can be accomplished using the ISR_ALIASOF() attribute to the ISR macro:
ISR(PCINT0_vect)
{
...
// Code to handle the event.
}
ISR(PCINT1_vect, ISR_ALIASOF(PCINT0_vect));
Note β There is no body to the aliased ISR. π«Ά
Note that the ISR_ALIASOF() feature requires GCC 4.2 or above (or a patched version of GCC 4.1.x). See the documentation of the ISR_ALIAS() macro for an implementation which is less elegant but could be applied to all compiler versions. so old GCC? we can still make it work, just messier. π
β¨ Empty interrupt service routines β¨
In rare circumstances, in interrupt vector does not need any code to be implemented at all. The vector must be declared anyway, so when the interrupt triggers it won't execute the BADISR_vect code (which by default restarts the application). so it's like a ghost ISR. π»
This could for example be the case for interrupts that are solely enabled for the purpose of getting the controller out of sleep_mode().
A handler for such an interrupt vector can be declared using the EMPTY_INTERRUPT() macro:
EMPTY_INTERRUPT(ADC_vect);
Note β There is no body to this macro. π
π₯ Manually defined ISRs π₯
In some circumstances, the compiler-generated prologue and epilogue of the ISR might not be optimal for the job, and a manually defined ISR could be considered particularly to speedup the interrupt handling. it's giving DIY. π οΈ
One solution to this could be to implement the entire ISR as manual assembly code in a separate (assembly) file. See Combining C and assembly source files for an example of how to implement it that way. π§
Another solution is to still implement the ISR in C language but take over the compiler's job of generating the prologue and epilogue. This can be done using the ISR_NAKED attribute to the ISR() macro. Note that the compiler does not generate anything as prologue or epilogue, so the final reti() must be provided by the actual implementation. SREG must be manually saved if the ISR code modifies it, and the compiler-implied assumption of __zero_reg__ always being 0 could be wrong (e. g. when interrupting right after of a MUL instruction). so you're literally on your own. periodt. π
Warning β According to the GCC documentation, only inline assembly is supported in naked functions, like with ISR_NAKED. π¨
ISR(TIMER1_OVF_vect, ISR_NAKED)
{
PORTB |= _BV(0); // results in SBI which does not affect SREG
reti();
}
πΈ Choosing the vector: Interrupt vector names πΈ
The interrupt is chosen by supplying one of the vector names in the following table. β¨
There are currently two different styles present for naming the vectors.
- Starting with AVR-LibC v1.4, the style of interrupt vector names is a short phrase for the vector description followed by
_vect. The short phrase matches the vector name as described in the datasheet of the respective device (and in the hardware manufacturer's XML/ATDF files), with spaces replaced by an underscore and other non-alphanumeric characters dropped. Using the suffix_vectis intented to improve portability to other C compilers available for the AVR that use a similar naming convention. (yes,_vectis the moment. π ) - A deprecated form that uses names starting with
SIG_, followed by a relatively verbose but arbitrarily chosen name describing the interrupt vector. This has been the only available style in AVR-LibC up to version 1.2.x. This historical naming style is not recommended for new projects, and some headers require that the macro__AVR_LIBC_DEPRECATED_ENABLE__is defined so that theSIG_names ISR names are available. (so vintage, but not in a cute way. π)
Note β TheISR()macro cannot really spell-check the argument passed to them. Thus, by misspelling one of the names below used inISR(), a function will be created that, while possibly being usable as an interrupt function, is not actually wired into the interrupt vector table. The compiler will generate a warning if it detects a suspiciously looking name of anISR()function (i.e. one that after macro replacement does not start with"__vector_"). so spell it right, bestie. π
Apart from the NAME_vect macros listed below, for each such ISR name there is also a macro NAME_vect_num defined which resolves to the IRQ number. This is the index into the vector table, where indices start at index 0 (the reset vector). π’
See also What ISR names are available for my device? in the FAQ for how find all the IRQ names for a specific device.
π¦ Vector Name / Description / Applicable for Device π¦
AC0_AC_vect- Description: AC0 IRQs
- Applicable for Device: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
AC1_AC_vect- Description: AC1 IRQs
β¦and to finish off the roster for that last one, the chips that carry it are: ATtiny1614, ATtiny1616, ATtiny1617, ATtiny3214, ATtiny3216, ATtiny3217, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64EA28, AVR64EA32, AVR64EA48. Slay, that's a whole friend group. π«Ά
AC2_AC_vect β¨
okay so this one is the analog comparator 2 interrupt, and the description literally just says AC2 IRQs. So bestie, it's the analog comparator 2 waving at you like "hey, something happened, come look." π«Ά
Who's invited: ATtiny1614, ATtiny1616, ATtiny1617, ATtiny3214, ATtiny3216, ATtiny3217, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64
ACA_AC0_vect π
this one's the AC0 interrupt for the ACA peripheral, and it's giving main character energy on the XMEGA side of the family, because look at this guest list. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
ACA_AC1_vect β¨
same vibe, different number: this is AC1 from the ACA crew. π₯
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
ACA_ACW_vect π¦
and now the ACW Window Mode one β same ACA family, same giant guest list, but this is the window-mode interrupt specifically. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
ACB_AC0_vect π
moving over to the ACB peripheral now! this is AC0 again but from the B team, and ngl the group chat got smaller. no cap, B is pickier. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128B1, ATxmega128B3, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64B1, ATxmega64B3
ACB_AC1_vect β¨
and AC1 from ACB. same list, because of course they travel together. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128B1, ATxmega128B3, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64B1, ATxmega64B3
ACB_ACW_vect π¦
ACW Window Mode, B-flavored. literally the same trio of ACB interrupts, just windowed. periodt. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128B1, ATxmega128B3, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64B1, ATxmega64B3
ADC0_ERROR_vect π
oh we're in ADC land now and it's a whole situation. this one is ADC0 IRQs β the error interrupt, aka the "bestie something went wrong" ping. π
Who's invited: ATtiny1624, ATtiny1626, ATtiny1627, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny424, ATtiny426, ATtiny427, ATtiny824, ATtiny826, ATtiny827, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
ADC0_RESRDY_vect π₯
ADC0 IRQs again β this is the result-ready one, the "your conversion is done, come get it" π. And the guest list? genuinely unhinged, biggest one we've seen so far.
Who's invited: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
ADC0_SAMPRDY_vect πΈ
ADC0 IRQs, sample-ready edition. same description line, different squad. π
Who's invited: ATtiny1624, ATtiny1626, ATtiny1627, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny424, ATtiny426, ATtiny427, ATtiny824, ATtiny826, ATtiny827, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
ADC0_WCMP_vect β
ADC0 IRQs but WCMP β the window-compare one. ok honestly three different vectors all describing themselves as "ADC0 IRQs" is giving placeholder text energy but we move. π
Who's invited: AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32
ADC0_WCOMP_vect β‘
careful, this is a different spelling, bestie β ADC0_WCOMP_vect with a COM, not CMP. both are ADC0 IRQs, they're different vectors, don't mix them up. π
Who's invited: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817
ADC1_RESRDY_vect π
second ADC? second ADC! this one's ADC1 IRQs and the guest list is a cute little six-chip situation. π
Who's invited: ATtiny1614, ATtiny1616, ATtiny1617, ATtiny3214, ATtiny3216, ATtiny3217
ADC1_WCOMP_vect π¦
and ADC1 IRQs again, window-compare flavor. same six besties. obsessed. π«Ά
Who's invited: ATtiny1614, ATtiny1616, ATtiny1617, ATtiny3214, ATtiny3216, ATtiny3217
ADC_vect π
okay THIS one. this is ADC Conversion Complete and it is the moment, the icon, the legend. it's the plain old-school ADC_vect, the one everybody knows, and its guest list is genuinely taking me out β we're going all the way back to AT90S2333 and ATtiny15, it's giving vintage. no cap, this is the longest list in the whole file so far, so buckle up. πβ¨
Who's invited: AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90PWM81, AT90S2333, AT90S4433, AT90S4434, AT90S8535, AT90USB1286, AT90USB1287, AT90USB646, AT90USB647, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega16, ATmega163, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16A, ATmega16M1, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega32, ATmega323, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega328PB, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32A, ATmega32C1, ATmega32M1, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1, ATmega64M1, ATmega64RFR2, ATmega8, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8A, ATtiny10, ATtiny102, ATtiny104, ATtiny13, ATtiny13A, ATtiny15, ATtiny167, ATtiny24, ATtiny24A, ATtiny25, ATtiny26, ATtiny261, ATtiny261A, ATtiny40, ATtiny43U, ATtiny44, ATtiny441, ATtiny44A, ATtiny45, ATtiny461, ATtiny461A, ATtiny48, ATtiny5, ATtiny828, ATtiny84, ATtiny841, ATtiny84A, ATtiny85, ATtiny861, ATtiny861A, ATtiny87, ATtiny88
ADCA_CH0_vect πΈ
and now we hit a little plot twist: two different entries share the name ADCA_CH0_vect, but they do NOT share a description or a device list. this first one is described as ADC Channel. β¨
Who's invited: ATxmega32E5, ATxmega8E5
ADCA_CH0_vect π
same name, second entry, and this time the description is Interrupt 0. same name β same interrupt, iykyk. π¦
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
ADCA_CH1_vect π
Interrupt 1, same ADCA energy, slightly trimmed guest list. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
ADCA_CH2_vect π
Interrupt 2. same list as channel 1, no notes, it just works. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
ADCA_CH3_vect β
Interrupt 3 and yes, identical squad again. three for three. obsessed with the consistency honestly. π«Ά
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
ADCB_CH0_vect π
switching to the B channel now β Interrupt 0, and look, ATxmega128B1, ATxmega128B3, ATxmega64B1, ATxmega64B3 showed up. B chips for the B channel, we love to see it. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128B1, ATxmega128B3, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64B1, ATxmega64B3
ADCB_CH1_vect β¨
Interrupt 1, B-side. the B1 and B3 chips dipped from this one, which is just how it goes sometimes. π¦
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
ADCB_CH2_vect πΈ
Interrupt 2. literally the same fourteen chips as channel 1. iconic, no changes needed. π
Who's invited: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
ADCB_CH3_vect π
Interrupt 3 β and the guest list for this one carries on right into the next chunk, so hold that thought. π«Ά
okay so the interrupt party continues bestie, and there are so many more of these π these are all the interrupt vector names, what they mean, and which chips get to claim them. iykyk.
ADC_ADC_vectβ Conversion Complete πΈ- on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U
- on:
ADC_READY_vectβ ADC Conversion Complete β¨- on:
ATtiny20
- on:
AES_vectβ AES Krypto Unit π- on:
ATA5702M322
- on:
AESINT_vectβ AES π- on:
ATA5790,ATA5790N,ATA5795
- on:
AES_INT_vectβ AES π- on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega128A4U,ATxmega128B1,ATxmega128B3,ATxmega16A4,ATxmega16A4U,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega32A4U,ATxmega384C3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U,ATxmega64A4U,ATxmega64B1,ATxmega64B3
- on:
AES_Operation_vectβ AES Block Operation Ended π- on:
AT90SCR100
- on:
AES_READY_vectβ AES engine Ready β¨- on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- on:
ANACOMP0_vectβ Analog Comparator 0 π¦- on:
ATmega16M1,ATmega32C1,ATmega32M1,ATmega64C1,ATmega64M1
- on:
ANACOMP1_vectβ Analog Comparator 1 π¦- on:
ATmega16M1,ATmega32C1,ATmega32M1,ATmega64C1,ATmega64M1
- on:
ANACOMP2_vectβ Analog Comparator 2 π¦- on:
ATmega16M1,ATmega32C1,ATmega32M1,ATmega64C1,ATmega64M1
- on:
ANACOMP3_vectβ Analog Comparator 3 π¦- on:
ATmega16M1,ATmega32C1,ATmega32M1,ATmega64C1,ATmega64M1
- on:
ANALOG_COMP_vectβ Analog Comparator β‘- on:
AT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATA6612C,ATA6613C,ATA6614Q,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega164A,ATmega164P,ATmega164PA,ATmega165,ATmega165A,ATmega165P,ATmega165PA,ATmega168,ATmega168A,ATmega168P,ATmega168PA,ATmega168PB,ATmega169,ATmega169A,ATmega169P,ATmega169PA,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324A,ATmega324P,ATmega324PA,ATmega324PB,ATmega325,ATmega3250,ATmega3250A,ATmega3250P,ATmega3250PA,ATmega325A,ATmega325P,ATmega325PA,ATmega328,ATmega328P,ATmega328PB,ATmega329,ATmega3290,ATmega3290A,ATmega3290P,ATmega3290PA,ATmega329A,ATmega329P,ATmega329PA,ATmega32U2,ATmega32U4,ATmega32U6,ATmega48,ATmega48A,ATmega48P,ATmega48PA,ATmega48PB,ATmega64,ATmega640,ATmega644,ATmega644A,ATmega644P,ATmega644PA,ATmega644RFR2,ATmega645,ATmega6450,ATmega6450A,ATmega6450P,ATmega645A,ATmega645P,ATmega649,ATmega6490,ATmega6490A,ATmega6490P,ATmega649A,ATmega649P,ATmega64A,ATmega64RFR2,ATmega88,ATmega88A,ATmega88P,ATmega88PA,ATmega88PB,ATmega8U2,ATtiny48,ATtiny828,ATtiny88
- on:
ANALOG_COMP_0_vectβ Analog Comparator 0 π¦- on:
AT90PWM1,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B
- on:
ANALOG_COMP_1_vectβ Analog Comparator 1 π¦- on:
AT90PWM161,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90PWM81
- on:
ANALOG_COMP_2_vectβ Analog Comparator 2 π¦- on:
AT90PWM1,AT90PWM161,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90PWM81
- on:
ANALOG_COMP_3_vectβ Analog Comparator 3 π¦- on:
AT90PWM161,AT90PWM81
- on:
ANA_COMP0_vectβ Analog Comparator 0 π¦- on:
ATtiny441,ATtiny841
- on:
ANA_COMP1_vectβ Analog Comparator 1 π¦- on:
ATtiny441,ATtiny841
- on:
ANA_COMP_vectβ Analog Comparator β‘- on:
AT90S1200,AT90S2313,AT90S2333,AT90S4414,AT90S4433,AT90S4434,AT90S8515,AT90S8535,ATA5272,ATA5505,ATA6616C,ATA6617C,ATA664251,ATmega16,ATmega161,ATmega162,ATmega163,ATmega16A,ATmega32,ATmega323,ATmega32A,ATmega8,ATmega8515,ATmega8535,ATmega8A,ATtiny10,ATtiny102,ATtiny104,ATtiny11,ATtiny12,ATtiny13,ATtiny13A,ATtiny15,ATtiny1634,ATtiny167,ATtiny20,ATtiny2313,ATtiny2313A,ATtiny24,ATtiny24A,ATtiny25,ATtiny26,ATtiny261,ATtiny261A,ATtiny28,ATtiny4,ATtiny40,ATtiny4313,ATtiny43U,ATtiny44,ATtiny44A,ATtiny45,ATtiny461,ATtiny461A,ATtiny5,ATtiny84,ATtiny84A,ATtiny85,ATtiny861,ATtiny861A,ATtiny87,ATtiny9
- on:
AVCCL_vectβ AVCC Low πͺ«- on:
ATA5702M322,ATA5782,ATA5831
- on:
AVCCR_vectβ AVCC Reset π- on:
ATA5702M322,ATA5782,ATA5831
- on:
BAT_LOW_vectβ Battery Monitor indicates supply voltage below threshold πͺ«- on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- on:
BGSCD_vectβ Bandgap Buffer Short Circuit Detected β οΈ- on:
ATmega16HVB,ATmega16HVBREVB,ATmega32HVB,ATmega32HVBREVB
- on:
BOD_VLM_vectβ BOD IRQs π- on:
ATmega1608,ATmega1609,ATmega3208,ATmega3209,ATmega4808,ATmega4809,ATmega808,ATmega809,ATtiny1604,ATtiny1606,ATtiny1607,ATtiny1614,ATtiny1616,ATtiny1617,ATtiny1624,ATtiny1626,ATtiny1627,ATtiny202,ATtiny204,ATtiny212,ATtiny214,ATtiny3214,ATtiny3216,ATtiny3217,ATtiny3224,ATtiny3226,ATtiny3227,ATtiny402,ATtiny404,ATtiny406,ATtiny412,ATtiny414,ATtiny416,ATtiny417,ATtiny424,ATtiny426,ATtiny427,ATtiny804,ATtiny806,ATtiny807,ATtiny814,ATtiny816,ATtiny817,ATtiny824,ATtiny826,ATtiny827,AVR128DA28,AVR128DA32,AVR128DA48,AVR128DA64,AVR128DB28,AVR128DB32,AVR128DB48,AVR128DB64,AVR16DD14,AVR16DD20,AVR16DD28,AVR16DD32,AVR16EA28,AVR16EA32,AVR16EA48,AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32,AVR32DA28,AVR32DA32,AVR32DA48,AVR32DB28,AVR32DB32,AVR32DB48,AVR32DD14,AVR32DD20,AVR32DD28,AVR32DD32,AVR32EA28,AVR32EA32,AVR32EA48,AVR64DA28,AVR64DA32,AVR64DA48,AVR64DA64,AVR64DB28,AVR64DB32,AVR64DB48,AVR64DB64,AVR64DD14,AVR64DD20,AVR64DD28,AVR64DD32,AVR64DU28,AVR64DU32,AVR64EA28,AVR64EA32,AVR64EA48
- on:
BPINT_vectβ Battery Protection π- on:
ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega32HVB,ATmega32HVBREVB,ATmega406,ATmega8HVA
- on:
CADC_ACC_vectβ C ADC Accumulated Conversion Complete β¨- on:
ATmega64HVE,ATmega64HVE2
- on:
CADC_CONV_vectβ C ADC Instantaneous Conversion Complete β¨- on:
ATmega64HVE,ATmega64HVE2
- on:
CADC_REG_CUR_vectβ C ADC Regular Current β‘- on:
ATmega64HVE,ATmega64HVE2
- on:
CANIT_vectβ CAN Transfer Complete or Error π- on:
AT90CAN128,AT90CAN32,AT90CAN64
- on:
CAN_INT_vectβ CAN MOB, Burst, General Errors π- on:
ATmega16M1,ATmega32C1,ATmega32M1,ATmega64C1,ATmega64M1
- on:
CAN_TOVF_vectβ CAN Timer Overflow π- on:
ATmega16M1,ATmega32C1,ATmega32M1,ATmega64C1,ATmega64M1
- on:
CCADC_ACC_vectβ Coloumb Counter ADC Accumulator π- on:
ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega32HVB,ATmega32HVBREVB,ATmega406,ATmega8HVA
- on:
CCADC_CONV_vectβ Coulomb Counter ADC Conversion Complete π- on:
ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega32HVB,ATmega32HVBREVB,ATmega406,ATmega8HVA
- on:
CCADC_REG_CUR_vectβ Coloumb Counter ADC Regular Current β‘- on:
ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega32HVB,ATmega32HVBREVB,ATmega406,ATmega8HVA
- on:
CCL_CCL_vectβ CCL IRQs π§©- on:
ATmega1608,ATmega1609,ATmega3208,ATmega3209,ATmega4808,ATmega4809,ATmega808,ATmega809,ATtiny1624,ATtiny1626,ATtiny1627,ATtiny3224,ATtiny3226,ATtiny3227,ATtiny424,ATtiny426,ATtiny427,ATtiny824,ATtiny826,ATtiny827,AVR128DA28,AVR128DA32,AVR128DA48,AVR128DA64,AVR128DB28,AVR128DB32,AVR128DB48,AVR128DB64,AVR16DD14,AVR16DD20,AVR16DD28,AVR16DD32,AVR16EA28,AVR16EA32,AVR16EA48,AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32,AVR32DA28,AVR32DA32,AVR32DA48,AVR32DB28,AVR32DB32,AVR32DB48,AVR32DD14,AVR32DD20,AVR32DD28,AVR32DD32,AVR32EA28,AVR32EA32,AVR32EA48,AVR64DA28,AVR64DA32,AVR64DA48,AVR64DA64,AVR64DB28,AVR64DB32,AVR64DB48,AVR64DB64,AVR64DD14,AVR64DD20,AVR64DD28,AVR64DD32,AVR64DU28,AVR64DU32,AVR64EA28,AVR64EA32,AVR64EA48
- on:
CFD_vectβ Clock failure detection β- on:
ATmega328PB
- on:
CHDET_vectβ Charger Detect π- on:
ATmega16HVB,ATmega16HVBREVB,ATmega32HVB,ATmega32HVBREVB
- on:
CLKCTRL_CFD_vectβ CLKCTRL IRQs π- on:
AVR128DB28,AVR128DB32,AVR128DB48,AVR128DB64,AVR16DD14,AVR16DD20,AVR16DD28,AVR16DD32,AVR16EA28,AVR16EA32,AVR16EA48,AVR32DB28,AVR32DB32,AVR32DB48,AVR32DD14,AVR32DD20,AVR32DD28,AVR32DD32,AVR32EA28,AVR32EA32,AVR32EA48,AVR64DB28,AVR64DB32,AVR64DB48,AVR64DB64,AVR64DD14,AVR64DD20,AVR64DD28,AVR64DD32,AVR64DU28,AVR64DU32,AVR64EA28,AVR64EA32,AVR64EA48
- on:
CPRES_vectβ Card Presence Detection π³- on:
AT90SCR100
- on:
CRCSCAN_NMI_vectβ CRCSCAN IRQs π§- on:
ATmega1608,ATmega1609,ATmega3208,ATmega3209,ATmega4808,ATmega4809,ATmega808,ATmega809,ATtiny1604,ATtiny1606,ATtiny1607,ATtiny1614,ATtiny1616,ATtiny1617,ATtiny1624,ATtiny1626,ATtiny1627,ATtiny202,ATtiny204,ATtiny212,ATtiny214,ATtiny3214,ATtiny3216,ATtiny3217,ATtiny3224,ATtiny3226,ATtiny3227,ATtiny402,ATtiny404,ATtiny406,ATtiny412,ATtiny414,ATtiny416,ATtiny417,ATtiny424,ATtiny426,ATtiny427,ATtiny804,ATtiny806,ATtiny807,ATtiny814,ATtiny816,ATtiny817,ATtiny824,ATtiny826,ATtiny827
- on:
DFFLR_vectβ Data FIFO fill level reached π₯- on:
ATA5702M322,ATA5782,ATA5831
- on:
DFOUE_vectβ Data FIFO Overflow or Underflow Error π- on:
ATA5702M322,ATA5782,ATA5831
- on:
DMA_CH0_vectβ Channel 0 π- on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega128A4U,ATxmega128B1,ATxmega128B3,ATxmega16A4,ATxmega16A4U,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega32A4U,ATxmega384C3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U,ATxmega64A4U,ATxmega64B1,ATxmega64B3
- on:
DMA_CH1_vectβ Channel 1 π- on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega128A4U,ATxmega128B1,ATxmega128B3,ATxmega16A4,ATxmega16A4U,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega32A4U,ATxmega384C3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U,ATxmega64A4U,ATxmega64B1,ATxmega64B3
- on:
DMA_CH2_vectβ Channel 2 π- on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega128A4U,ATxmega16A4,ATxmega16A4U,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega32A4U,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U,ATxmega64A4U
- on:
DMA_CH3_vectβ Channel 3 π- on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega128A4U,ATxmega16A4,ATxmega16A4U,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega32A4U,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U,ATxmega64A4U
- on:
E2CINT_vectβ EEPROM Error Correction πΎ- on:
ATA5702M322
- on:
EDMA_CH0_vectβ EDMA Channel 0 π- on:
ATxmega32E5,ATxmega8E5
- on:
EDMA_CH1_vectβ EDMA Channel 1 π- on:
ATxmega32E5,ATxmega8E5
- on:
EDMA_CH2_vectβ EDMA Channel 2 π- on:
ATxmega32E5,ATxmega8E5
- on:
EDMA_CH3_vectπ β EDMA Channel 3 β shows up onATxmega32E5,ATxmega8E5.EEPROM_READY_vectβ EEPROM Ready πΈ β onATtiny2313.EEPROM_Ready_vectβ EEPROM Ready β onATtiny2313A,ATtiny4313. (yes bestie the capitalization is different from the one above, and no I will not be fixing it, that's just how it is π )EEREADY_vectβ EEPROM Ready β onATA5790,ATA5790N,ATA5795,ATA6285,ATA6286,ATA6289.EE_RDY_vectβ EEPROM Ready β onAT90S2333,AT90S4433,AT90S4434,AT90S8535,ATA5272,ATA5505,ATA6616C,ATA6617C,ATA664251,ATmega16,ATmega161,ATmega162,ATmega163,ATmega16A,ATmega32,ATmega323,ATmega32A,ATmega8,ATmega8515,ATmega8535,ATmega8A,ATtiny12,ATtiny13,ATtiny13A,ATtiny15,ATtiny1634,ATtiny167,ATtiny24,ATtiny24A,ATtiny25,ATtiny26,ATtiny261,ATtiny261A,ATtiny43U,ATtiny44,ATtiny441,ATtiny44A,ATtiny45,ATtiny461,ATtiny461A,ATtiny84,ATtiny841,ATtiny84A,ATtiny85,ATtiny861,ATtiny861A,ATtiny87.EE_READY_vectβ EEPROM Ready β onAT90CAN128,AT90CAN32,AT90CAN64,AT90PWM1,AT90PWM161,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90PWM81,AT90SCR100,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATA6612C,ATA6613C,ATA6614Q,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega164A,ATmega164P,ATmega164PA,ATmega165,ATmega165A,ATmega165P,ATmega165PA,ATmega168,ATmega168A,ATmega168P,ATmega168PA,ATmega168PB,ATmega169,ATmega169A,ATmega169P,ATmega169PA,ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega16M1,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324A,ATmega324P,ATmega324PA,ATmega324PB,ATmega325,ATmega3250,ATmega3250A,ATmega3250P,ATmega3250PA,ATmega325A,ATmega325P,ATmega325PA,ATmega328,ATmega328P,ATmega328PB,ATmega329,ATmega3290,ATmega3290A,ATmega3290P,ATmega3290PA,ATmega329A,ATmega329P,ATmega329PA,ATmega32C1,ATmega32HVB,ATmega32HVBREVB,ATmega32M1,ATmega32U2,ATmega32U4,ATmega32U6,ATmega406,ATmega48,ATmega48A,ATmega48P,ATmega48PA,ATmega48PB,ATmega64,ATmega640,ATmega644,ATmega644A,ATmega644P,ATmega644PA,ATmega644RFR2,ATmega645,ATmega6450,ATmega6450A,ATmega6450P,ATmega645A,ATmega645P,ATmega649,ATmega6490,ATmega6490A,ATmega6490P,ATmega649A,ATmega649P,ATmega64A,ATmega64C1,ATmega64HVE,ATmega64HVE2,ATmega64M1,ATmega64RFR2,ATmega88,ATmega88A,ATmega88P,ATmega88PA,ATmega88PB,ATmega8HVA,ATmega8U2,ATtiny48,ATtiny828,ATtiny88.ERDY_vectβ EEPROM Ready β onATA5702M322,ATA5782,ATA5831.
okay so now we hit the ones where the same name does double duty, and honestly? iconic behavior β¨
EXCM_vectβ External Input Clock break down π β onATA6285,ATA6286,ATA6289.EXCM_vectβ External input Clock Monitoring β onATA5702M322,ATA5782,ATA5831. (same name, different meaning, different chips β read your device's datasheet before you @ me π)EXCMINT_vectβ External Input Clock Monitoring β onATA5790,ATA5790N,ATA5795.EXT_INT0_vectβ External IRQ 0 β onATtiny24,ATtiny24A,ATtiny44,ATtiny44A,ATtiny84,ATtiny84A.EXXMINT_vectβ External XTAL Oscillator Break Down β onATA5790,ATA5790N,ATA5795.FAULT_PROTECTION_vectβ Timer/Counter1 Fault Protection π‘οΈ β onATtiny261,ATtiny261A,ATtiny461,ATtiny461A,ATtiny861,ATtiny861A.HSSPI_vectβ High Speed SPI π₯ β onAT90SCR100.IDFULL_vectβ IDSCAN Full β onATA5782,ATA5831.
and now, the external IRQ glow-up era π
INT0_vectβ External IRQ 0 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90PWM1,AT90PWM161,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90PWM81,AT90S1200,AT90S2313,AT90S2323,AT90S2333,AT90S2343,AT90S4414,AT90S4433,AT90S4434,AT90S8515,AT90S8535,AT90SCR100,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATA5272,ATA5505,ATA5702M322,ATA5782,ATA5790,ATA5790N,ATA5795,ATA5831,ATA6285,ATA6286,ATA6289,ATA6612C,ATA6613C,ATA6614Q,ATA6616C,ATA6617C,ATA664251,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16,ATmega161,ATmega162,ATmega163,ATmega164A,ATmega164P,ATmega164PA,ATmega165,ATmega165A,ATmega165P,ATmega165PA,ATmega168,ATmega168A,ATmega168P,ATmega168PA,ATmega168PB,ATmega169,ATmega169A,ATmega169P,ATmega169PA,ATmega16A,ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega16M1,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32,ATmega323,ATmega324A,ATmega324P,ATmega324PA,ATmega324PB,ATmega325,ATmega3250,ATmega3250A,ATmega3250P,ATmega3250PA,ATmega325A,ATmega325P,ATmega325PA,ATmega328,ATmega328P,ATmega328PB,ATmega329,ATmega3290,ATmega3290A,ATmega3290P,ATmega3290PA,ATmega329A,ATmega329P,ATmega329PA,ATmega32A,ATmega32C1,ATmega32HVB,ATmega32HVBREVB,ATmega32M1,ATmega32U2,ATmega32U4,ATmega32U6,ATmega406,ATmega48,ATmega48A,ATmega48P,ATmega48PA,ATmega48PB,ATmega64,ATmega640,ATmega644,ATmega644A,ATmega644P,ATmega644PA,ATmega644RFR2,ATmega645,ATmega6450,ATmega6450A,ATmega6450P,ATmega645A,ATmega645P,ATmega649,ATmega6490,ATmega6490A,ATmega6490P,ATmega649A,ATmega649P,ATmega64A,ATmega64C1,ATmega64HVE,ATmega64HVE2,ATmega64M1,ATmega64RFR2,ATmega8,ATmega8515,ATmega8535,ATmega88,ATmega88A,ATmega88P,ATmega88PA,ATmega88PB,ATmega8A,ATmega8HVA,ATmega8U2,ATtiny10,ATtiny102,ATtiny104,ATtiny11,ATtiny12,ATtiny13,ATtiny13A,ATtiny15,ATtiny1634,ATtiny167,ATtiny20,ATtiny22,ATtiny2313,ATtiny2313A,ATtiny25,ATtiny26,ATtiny261,ATtiny261A,ATtiny28,ATtiny4,ATtiny40,ATtiny4313,ATtiny43U,ATtiny441,ATtiny45,ATtiny461,ATtiny461A,ATtiny48,ATtiny5,ATtiny828,ATtiny841,ATtiny85,ATtiny861,ATtiny861A,ATtiny87,ATtiny88,ATtiny9.INT1_vectβ External IRQ 1 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90PWM1,AT90PWM161,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90PWM81,AT90S2313,AT90S2333,AT90S4414,AT90S4433,AT90S4434,AT90S8515,AT90S8535,AT90SCR100,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATA5272,ATA5505,ATA5702M322,ATA5782,ATA5831,ATA6285,ATA6286,ATA6289,ATA6612C,ATA6613C,ATA6614Q,ATA6616C,ATA6617C,ATA664251,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16,ATmega161,ATmega162,ATmega163,ATmega164A,ATmega164P,ATmega164PA,ATmega168,ATmega168A,ATmega168P,ATmega168PA,ATmega168PB,ATmega16A,ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega16M1,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32,ATmega323,ATmega324A,ATmega324P,ATmega324PA,ATmega324PB,ATmega328,ATmega328P,ATmega328PB,ATmega32A,ATmega32C1,ATmega32HVB,ATmega32HVBREVB,ATmega32M1,ATmega32U2,ATmega32U4,ATmega32U6,ATmega406,ATmega48,ATmega48A,ATmega48P,ATmega48PA,ATmega48PB,ATmega64,ATmega640,ATmega644,ATmega644A,ATmega644P,ATmega644PA,ATmega644RFR2,ATmega64A,ATmega64C1,ATmega64M1,ATmega64RFR2,ATmega8,ATmega8515,ATmega8535,ATmega88,ATmega88A,ATmega88P,ATmega88PA,ATmega88PB,ATmega8A,ATmega8HVA,ATmega8U2,ATtiny167,ATtiny2313,ATtiny2313A,ATtiny261,ATtiny261A,ATtiny28,ATtiny4313,ATtiny461,ATtiny461A,ATtiny48,ATtiny828,ATtiny861,ATtiny861A,ATtiny87,ATtiny88.INT2_vectβ External IRQ 2 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90PWM1,AT90PWM161,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90PWM81,AT90SCR100,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16,ATmega161,ATmega162,ATmega164A,ATmega164P,ATmega164PA,ATmega16A,ATmega16HVA,ATmega16HVA2,ATmega16HVB,ATmega16HVBREVB,ATmega16M1,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32,ATmega323,ATmega324A,ATmega324P,ATmega324PA,ATmega324PB,ATmega32A,ATmega32C1,ATmega32HVB,ATmega32HVBREVB,ATmega32M1,ATmega32U2,ATmega32U4,ATmega32U6,ATmega406,ATmega64,ATmega640,ATmega644,ATmega644A,ATmega644P,ATmega644PA,ATmega644RFR2,ATmega64A,ATmega64C1,ATmega64M1,ATmega64RFR2,ATmega8515,ATmega8535,ATmega8HVA,ATmega8U2.INT3_vectβ External IRQ 3 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90PWM1,AT90PWM2,AT90PWM216,AT90PWM2B,AT90PWM3,AT90PWM316,AT90PWM3B,AT90SCR100,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16HVB,ATmega16HVBREVB,ATmega16M1,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32C1,ATmega32HVB,ATmega32HVBREVB,ATmega32M1,ATmega32U2,ATmega32U4,ATmega32U6,ATmega406,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64C1,ATmega64M1,ATmega64RFR2,ATmega8U2.INT4_vectβ External IRQ 4 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16U2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32U2,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2,ATmega8U2.INT5_vectβ External IRQ 5 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16U2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32U2,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2,ATmega8U2.INT6_vectβ External IRQ 6 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16U2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32U2,ATmega32U4,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2,ATmega8U2.INT7_vectβ External IRQ 7 β onAT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB162,AT90USB646,AT90USB647,AT90USB82,ATmega103,ATmega128,ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16U2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32U2,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2,ATmega8U2.
okay the ATA62xx girlies get their own little trio of timer/vibe watchers, obsessed π
INTT0_vectβ Timer0 Interval β° β onATA6285,ATA6286,ATA6289.INTT1_vectβ Timer1 Interval β° β onATA6285,ATA6286,ATA6289.INTVM_vectβ Voltage Monitor π β onATA6285,ATA6286,ATA6289.IO_PINS_vectβ External IRQ 0 β onATtiny11,ATtiny12,ATtiny15,ATtiny26.KEYBOARD_vectβ Keyboard Input Changed β¨οΈ β onAT90SCR100.LCD_vectβ (bestie the page cuts off right here, part 5 is gonna spill the tea on this one π)
LCD_INT_vect
Bestie it's literally LCD Start of Frame π
Lives on: ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P
LDFFLR_vect
LF Data FIFO Fill Level Reached β like, the FIFO got to the level and it's telling you π«Ά
Lives on: ATxmega128B1, ATxmega128B3, ATxmega64B1, ATxmega64B3
LDFOUE_vect
LF Data FIFO Overflow or Underflow Error β bestie the FIFO done glitched π
Lives on: ATA5702M322
LFBCR_vect
LF Receiver Bit Count Reached β¨
Lives on: ATA5702M322
LFDBINT_vect
LF Receiver Data Buffer full β buffer's full, no more room, periodt.
Lives on: ATA5790, ATA5790N
LFDE_vect
LF Receiver Decoder Error π
Lives on: ATA5702M322
LFEOT_vect
LF Receiver End of Telegram β telegram said its piece and left π
Lives on: ATA5702M322
LFFEINT_vect
LF Receiver Frame End
Lives on: ATA5702M322, ATA5790, ATA5790N
LFID0INT_vect
LF Receiver Identifier 0
Lives on: ATA5702M322, ATA5790, ATA5790N
LFID1INT_vect
LF Receiver Identifier 1
Lives on: ATA5702M322, ATA5790, ATA5790N
LFMDINT_vect
LF Receiver Manchester Decoder Error β the Manchester decoder is going through it π
Lives on: ATA5790, ATA5790N
LFPBD_vect
LF Receiver PreBurst Detected
Lives on: ATA5702M322
LFREOB_vect
LF Receiver End of Burst
Lives on: ATA6285, ATA6286, ATA6289
LFRSCO_vect
LF Receiver RSSI measurement
Lives on: ATA5702M322
LFRSSINT_vect
LF Receiver RSSi measurement β yes lowercase i, that's how they wrote it, we don't question the source π
Lives on: ATA5790, ATA5790N
LFRXB_vect
LF Receive Buffer
Lives on: ATmega... no wait β ATA6285, ATA6286, ATA6289
LFSDINT_vect
LF Receiver Signal Detect β signal found, slay π‘
Lives on: ATA5790, ATA5790N
LFTCOR_vect
LF Receiver Timer Compare Match
Lives on: ATA5702M322
LFWP_vect
LF Receiver Wake up β WAKE UP bestie βοΈ
Lives on: ATA6285, ATA6286, ATA6289
LIN_ERR_vect
LIN Error
Lives on: ATA5272, ATA5505, ATA6616C, ATA6617C, ATA664251, ATmega16M1, ATmega32C1, ATmega32M1, ATmega64C1, ATmega64M1, ATtiny167, ATtiny87
LIN_ERROR_vect
LIN Error β same energy, different name, don't @ me
Lives on: ATmega64HVE, ATmega64HVE2
LIN_STATUS_vect
LIN Status
Lives on: ATmega64HVE, ATmega64HVE2
LIN_TC_vect
LIN Transfer Complete β transfer complete, ate and left no crumbs β¨
Lives on: ATA5272, ATA5505, ATA6616C, ATA6617C, ATA664251, ATmega16M1, ATmega32C1, ATmega32M1, ATmega64C1, ATmega64M1, ATtiny167, ATtiny87
LOWLEVEL_IO_PINS_vect
Low level Input on Port B β lowkey input on Port B π«Ά
Lives on: ATtiny28
MVIO_MVIO_vect
MVIO IRQs
Lives on: AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32
NMI_vect
NMI IRQs β non-maskable, un-ignorable, main character energy for real π
Lives on: AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
NVMCTRL_EE_vect
NVMCTRL IRQs
Lives on: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32
NVMCTRL_NVMREADY_vect
NVMCTRL IRQs
Lives on: AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
NVM_EE_vect
EEPROM β your lil non-volatile bestie πΎ
Lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
NVM_SPM_vect
SPM β self-programming memory, doing its own thing β¨
Lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
OSC_OSCF_vect
External Oscillator Failure Interrupt (NMI) β not the vibe, the external oscillator gave out π
Lives on: ATxmega32D3
OSC_OSCF_vect
Oscillator Failure Interrupt (NMI) β yes, same vector name, different description, they did that π
Lives on: ATxmega128A1U, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1U, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D4, ATxmega8E5
OSC_XOSCF_vect
External Oscillator Failure Interrupt (NMI)
Lives on: ATxmega128A1, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D4, ATxmega64A1, ATxmega64A3, ATxmega64D3
OVRIT_vect
CAN Timer Overrun β the CAN timer ran past its stop, no skrrt skrrt π
Lives on: AT90CAN128, AT90CAN32, AT90CAN64
PCI0_vect
Pin Change IRQ 0
Lives on: ATA5702M322, ATA5782, ATA5831
PCI1_vect
Pin Change IRQ 1
Lives on: ATA5702M322, ATA5782, ATA5831
PCINT0_vect
Pin Change IRQ 0 β our other pin-change bestie, and yes there's a LOT of chips here π«Ά
Lives on: AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA5272, ATA5505, ATA5790, ATA5790N, ATA5795, ATA6285, ATA6286, ATA6289, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega162, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega328PB, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega406, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8U2, ATtiny10, ATtiny102, ATtiny104, ATtiny13, ATtiny13A, ATtiny1634, ATtiny167, ATtiny20, ATtiny2313A, ATtiny24, ATtiny24A, ATtiny25, ATtiny4, ATtiny40, ATtiny4313, ATtiny43U, ATtiny44, ATtiny441, ATtiny44A, ATtiny45, ATtiny48, ATtiny5, ATtiny828, ATtiny84, ATtiny841, ATtiny84A, ATtiny85, ATtiny87, ATtiny88, ATtiny9
PCINT1_vect
Pin Change IRQ 1
Lives on: AT90SCR100, AT90USB162, AT90USB82, ATA5272, ATA5505, ATA5790, ATA5790N, ATA5795, ATA6285, ATA6286, ATA6289, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega162, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega328PB, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega406, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8U2, ATtiny102, ATtiny104, ATtiny1634, ATtiny167, ATtiny20, ATtiny2313A, ATtiny24, ATtiny24A, ATtiny40, ATtiny4313, ATtiny43U, ATtiny44, ATtiny441, ATtiny44A, ATtiny48, ATtiny828, ATtiny84, ATtiny841, ATtiny84A, ATtiny87, ATtiny88
PCINT2_vect
Pin Change IRQ 2
πΈ PCINT3_vect
Pin Change IRQ 3 β it's the third pin-change interrupt in the lineup, i.e. the one that pings you when a pin in that group changes its level. classic.
Devices:
AT90SCR100, ATA6285, ATA6286, ATA6289, ATA6612C, ATA6613C, ATA6614Q,
ATmega1280, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128RFA1,
ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega168,
ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega16M1,
ATmega2560, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P,
ATmega324PA, ATmega324PB, ATmega3250, ATmega3250A, ATmega3250P,
ATmega3250PA, ATmega328, ATmega328P, ATmega328PB, ATmega3290,
ATmega3290A, ATmega3290P, ATmega3290PA, ATmega32C1, ATmega32M1,
ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega640,
ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2,
ATmega6450, ATmega6450A, ATmega6450P, ATmega6490, ATmega6490A,
ATmega6490P, ATmega64C1, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A,
ATmega88P, ATmega88PA, ATmega88PB, ATtiny1634, ATtiny2313A, ATtiny40,
ATtiny4313, ATtiny48, ATtiny828, ATtiny88
π¦ PCINT4_vect
Pin Change IRQ 4 β same vibe as the one above, but it's #4 and the guest list is slightly shorter. no notes.
Devices:
AT90SCR100, ATmega1284, ATmega1284P, ATmega164A, ATmega164P,
ATmega164PA, ATmega16M1, ATmega324A, ATmega324P, ATmega324PA,
ATmega324PB, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA,
ATmega328PB, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA,
ATmega32C1, ATmega32M1, ATmega644, ATmega644A, ATmega644P, ATmega644PA,
ATmega6450, ATmega6450A, ATmega6450P, ATmega6490, ATmega6490A,
ATmega6490P, ATmega64C1, ATmega64M1, ATtiny48, ATtiny828, ATtiny88
π
PCINT_vect
Pin Change IRQ β no number, no drama, just the plain pin-change interrupt.
Devices:
ATmega324PB
it's giving "one single chip has this one and honestly? she's carrying it." π
β PLL_vect
PLL Lock Change β it fires when the PLL lock changes state.
Devices:
ATmega64HVE, ATmega64HVE2
π PORTA_INT0_vect
External IRQ 0 β port A's external interrupt 0. the XMEGA girlies own this one.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4,
ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U,
ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU,
ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U,
ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
π₯ PORTA_INT1_vect
External IRQ 1 β port A, external interrupt 1. same exact squad as PORTA_INT0_vect, just the next interrupt number.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4,
ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U,
ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU,
ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U,
ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
π PORTA_INT_vect
External IRQ β the un-numbered port A external interrupt. only two besties get this one.
Devices:
ATxmega32E5, ATxmega8E5
β¨ PORTA_PORT_vect
PORTA IRQs β this is the whole port A interrupt party, all the IRQs bundled together. and omg the guest list is a novel.
Devices:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614,
ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202,
ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217,
ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406,
ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426,
ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816,
ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32,
AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64,
AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32,
AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28,
AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14,
AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48,
AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32,
AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32,
AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
literally the entire tinyAVR/megaAVR/DA-DB-DD-DU-EA friend group showed up. ate. π
π§ PORTB_INT0_vect
External IRQ 0 β port B's external interrupt 0. note that the B3 variants have joined the chat here.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π PORTB_INT1_vect
External IRQ 1 β port B, external interrupt 1. same crowd, next number.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π PORTB_PORT_vect
PORTB IRQs β every port B IRQ, one vector. bestie this list is shorter than port A's because not as many chips have a port B full of interrupt-y pins.
Devices:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614,
ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny204,
ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226,
ATtiny3227, ATtiny404, ATtiny406, ATtiny414, ATtiny416, ATtiny417,
ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807,
ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827,
AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48,
AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64,
AVR64EA48
π PORTC_INT0_vect
External IRQ 0 β port C external interrupt 0. the B3 girlies are here too.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π«Ά PORTC_INT1_vect
External IRQ 1 β port C external interrupt 1. identical lineup, one number up.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π PORTC_INT_vect
External IRQ β the no-number port C external interrupt. two chips, that's it, that's the whole story.
Devices:
ATxmega32E5, ATxmega8E5
β PORTC_PORT_vect
PORTC IRQs β all of port C's IRQs in one vector. the list goes on for so long omg π
Devices:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1616,
ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny3214, ATtiny3216,
ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny406, ATtiny416,
ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806,
ATtiny807, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827,
AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32,
AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32,
AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28,
AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32,
AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28,
AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64,
AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20,
AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32,
AVR64EA48
π PORTD_INT0_vect
External IRQ 0 β port D external interrupt 0. B3 chips are in, as always.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π¦ PORTD_INT1_vect
External IRQ 1 β port D external interrupt 1. yes bestie, same list again, i don't make the rules.
Devices:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π PORTD_INT_vect
External IRQ β un-numbered port D external interrupt. just the two E5 girlies. iconic duo behavior.
Devices:
ATxmega32E5, ATxmega8E5
β¨ PORTD_PORT_vect
PORTD IRQs β all of port D's IRQs, one vector. notice this crew is all megaAVR + the modern AVR DA/DB/DD/DU/EA family, no tinyAVR 0/1/2 series in sight. iykyk.
Devices:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64,
AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20,
AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14,
AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48,
AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28,
AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32,
AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64,
AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32,
AVR64EA28, AVR64EA32, AVR64EA48
β PORTE_INT0_vect
External IRQ 0 β port E external interrupt 0.
and that's exactly where this part cuts off β no device list for this one in the source, bestie, so don't come for me. the saga continues next part, stay tuned π
π¦ PORTE_INT1_vect
External IRQ 1 β bestie, it's giving external interrupt energy, and here's exactly which chips are in the group chat:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4,
ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U,
ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU,
ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U,
ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
π
PORTE_PORT_vect
PORTE IRQs β the whole port E interrupt situation, no cap:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64,
AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64,
AVR64DB48, AVR64DB64, AVR64EA48
πΈ PORTF_INT0_vect
External IRQ 0 β the external interrupt 0 for port F, periodt:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128C3,
ATxmega128D3, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3,
ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U,
ATxmega256C3, ATxmega256D3, ATxmega32C3, ATxmega32D3, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64C3, ATxmega64D3
β¨ PORTF_INT1_vect
External IRQ 1 β same vibe, different interrupt line:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128C3,
ATxmega128D3, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3,
ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U,
ATxmega256C3, ATxmega256D3, ATxmega32C3, ATxmega32D3, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64C3, ATxmega64D3
π PORTF_PORT_vect
PORTF IRQs β the full port F interrupt menu, and it is long, bestie:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64,
AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20,
AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14,
AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48,
AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28,
AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32,
AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64,
AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32,
AVR64EA28, AVR64EA32, AVR64EA48
π PORTG_INT0_vect
External IRQ 0 β small but mighty, and yes she ate:
ATxmega128B1, ATxmega128B3, ATxmega64B1, ATxmega64B3
π¦ PORTG_INT1_vect
External IRQ 1 β the sequel, and it slays just as hard:
ATxmega128B1, ATxmega128B3, ATxmega64B1, ATxmega64B3
π PORTG_PORT_vect
PORTG IRQs β only four chips carry this one, and honestly? Main character energy:
AVR128DA64, AVR128DB64, AVR64DA64, AVR64DB64
π₯ PORTH_INT0_vect
External IRQ 0:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π₯ PORTH_INT1_vect
External IRQ 1:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
β PORTJ_INT0_vect
External IRQ 0:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
β PORTJ_INT1_vect
External IRQ 1:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π PORTK_INT0_vect
External IRQ 0:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π PORTK_INT1_vect
External IRQ 1:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π PORTM_INT0_vect
External IRQ 0:
ATxmega128B1, ATxmega128B3, ATxmega64B1, ATxmega64B3
π PORTM_INT1_vect
External IRQ 1:
ATxmega128B1, ATxmega128B3, ATxmega64B1, ATxmega64B3
π«Ά PORTQ_INT0_vect
External IRQ 0:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π«Ά PORTQ_INT1_vect
External IRQ 1:
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π PORTR_INT0_vect
External IRQ 0 β okay this list is huge, and she's booked and busy:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π PORTR_INT1_vect
External IRQ 1 β same roster, different line:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3,
ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3,
ATxmega64D3, ATxmega64D4
π§ PORTR_INT_vect
External IRQ β no number, just vibes:
ATxmega32E5, ATxmega8E5
π PSC0_CAPT_vect
PSC0 Capture Event:
AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3,
AT90PWM316, AT90PWM3B, AT90PWM81
π PSC0_EC_vect
PSC0 End Cycle:
AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3,
AT90PWM316, AT90PWM3B, AT90PWM81
π PSC0_EEC_vect
PSC0 End of Enhanced Cycle β enhanced, as she should be:
AT90PWM161, AT90PWM81
π₯ PSC1_CAPT_vect
PSC1 Capture Event:
AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B
π₯ PSC1_EC_vect
PSC1 End Cycle:
AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B
β¨ PSC2_CAPT_vect
PSC2 Capture Event:
AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3,
AT90PWM316, AT90PWM3B, AT90PWM81
β¨ PSC2_EC_vect
PSC2 End Cycle:
AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3,
AT90PWM316, AT90PWM3B, AT90PWM81
β¨ PSC2_EEC_vect
PSC2 End of Enhanced Cycle:
AT90PWM161, AT90PWM81
π PSC_EC_vect
PSC End of Cycle:
ATmega16M1, ATmega32C1, ATmega32M1, ATmega64C1, ATmega64M1
π PSC_FAULT_vect
PSC Fault:
ATmega16M1, ATmega32C1, ATmega32M1, ATmega64C1, ATmega64M1
πΈ PTC_EOC_vect
PTC End of Conversion:
ATmega324PB, ATmega328PB
πΈ PTC_PTC_vect
PTC IRQs β just the DA-family girlies on this one:
AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR32DA28, AVR32DA32,
AVR32DA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64
π PTC_WCOMP_vect
PTC Window Comparator:
ATmega324PB
π PTC_WCOMP_vect
PTC Window Comparator mode β same name, but now with mode, and a different chip:
ATmega328PB
π«§ QTRIP_vect
Touch Sensing β touchy feely, literally:
ATtiny1634, ATtiny20, ATtiny40, ATtiny828
β RTC32_COMP_vect
Compare:
ATxmega256A3B, ATxmega256A3BU
β RTC32_OVF_vect
Overflow:
ATxmega256A3B, ATxmega256A3BU
π°οΈ RTCINT_vect
Real Time Clock:
ATA5790, ATA5790N, ATA5795
π°οΈ RTC_CNT_vect
RTC IRQs β okay bestie, deep breath, this device list is enormous:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614,
ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202,
ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217,
ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406,
ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426,
ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816,
ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32,
AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64,
AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32,
AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28,
AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14,
AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48,
AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32,
AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32,
AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π°οΈ RTC_COMP_vect
Compare β the XMEGA crew clocking in:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3U,
ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3,
ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3,
ATxmega64D4, ATxmega8E5
π°οΈ RTC_OVF_vect
Overflow β exact same lineup, and honestly iconic for it:
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3U,
ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3,
ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3,
ATxmega64D4, ATxmega8E5
π RTC_PIT_vect
RTC IRQs β yet another massive guest list, bestie, we're so back:
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614,
ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202,
ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217,
ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406,
ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426,
ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816,
ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32,
AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64,
AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32,
AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28,
AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14,
AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48,
AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32,
AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32,
AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π³ SCIB_vect
Smart Card Reader Interface β one chip, one vibe:
AT90SCR100
π SCNT_BACKOFF_vect
Symbol counter backoff β the symbol counter is like, backing off, okurr π
Lives on: ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega2564RFR2, ATmega256RFR2, ATmega644RFR2, ATmega64RFR2
π SCNT_CMP1_vect
Symbol counter compare match 1
Lives on: ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega2564RFR2, ATmega256RFR2, ATmega644RFR2, ATmega64RFR2
π SCNT_CMP2_vect
Symbol counter compare match 2
Lives on: ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega2564RFR2, ATmega256RFR2, ATmega644RFR2, ATmega64RFR2
π SCNT_CMP3_vect
Symbol counter compare match 3
Lives on: ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega2564RFR2, ATmega256RFR2, ATmega644RFR2, ATmega64RFR2
π SCNT_OVFL_vect
Symbol counter Overflow β she's overflowed, it's giving chaos π
Lives on: ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega2564RFR2, ATmega256RFR2, ATmega644RFR2, ATmega64RFR2
π SENINT_vect
Sensor Interface
Lives on: ATA6285, ATA6286, ATA6289
π SFFLR_vect
RSSI/Preamble FIFO fill level reached
Lives on: ATA5702M322, ATA5782, ATA5831
π SFOUE_vect
RSSI/Preamble FIFO Overflow or Underflow Error β bestie the FIFO is not okay π
Lives on: ATA5702M322, ATA5782, ATA5831
π SPI0_INT_vect
SPI0 IRQs
Lives on: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π SPI0_STC_vect
SPI Serial Transfer Complete
Lives on: ATmega328PB
π SPI0_STC_vect
SPI0 Serial Transfer Complete β yes bestie, same vector name, but it's the SPI0 flavour this time, different chip, no cap β¨
Lives on: ATmega324PB
π SPI1_INT_vect
SPI1 IRQs
Lives on: AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64
π SPI1_STC_vect
SPI1 Serial Transfer Complete
Lives on: ATmega324PB, ATmega328PB
π SPI2_vect
SPI2 β third SPI, she's thriving π
Lives on: ATA5702M322
π SPI_vect
SPI Serial Transfer Complete
Lives on: ATA5702M322, ATA5782, ATA5831
π SPI_vect
Serial Peripheral Interface β yup, same name again, this one's just vibing as the SPI itself π¦
Lives on: ATtiny20, ATtiny40, ATtiny441, ATtiny841
π SPIC_INT_vect
SPI β the C stands for... it's the SPI C interrupt, that's the vibe
Lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
π SPID_INT_vect
SPI β D flavour this time, iconic π
Lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D3, ATxmega64D4
π SPIE_INT_vect
SPI β E flavour, and the crowd goes mild but respectfully π«Ά
Lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
π SPIF_INT_vect
SPI β F flavour, and she's on like four chips, lowkey exclusive π
Lives on: ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
π SPISTC_vect
SPI Serial Transfer Complete
Lives on: ATA5790, ATA5790N, ATA5795, ATA6285, ATA6286, ATA6289
π SPI_STC_vect
SPI Serial Transfer Complete β okay this list is massive, grab a snack bestie π
Lives on: AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90PWM81, AT90S4434, AT90S8535, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega162, ATmega163, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8HVA, ATmega8U2, ATtiny167, ATtiny828, ATtiny87
π SPI_STC_vect
Serial Transfer Complete β same vector name, slimmer description, no "SPI" prefix, we love a remix β¨
Lives on: AT90S2333, AT90S4414, AT90S4433, AT90S8515, ATmega16, ATmega161, ATmega16A, ATmega32, ATmega323, ATmega32A, ATmega8, ATmega8515, ATmega8A, ATtiny48, ATtiny88
π SPM_vect
SPM Ready
Lives on: ATmega16HVB, ATmega16HVBREVB, ATmega32HVB, ATmega32HVBREVB, ATmega64HVE, ATmega64HVE2
π SPMR_vect
Store Program Memory Ready
Lives on: ATA5702M322, ATA5782, ATA5831
π SPMREADY_vect
Store Program Memory Ready
Lives on: ATA5790, ATA5790N, ATA5795
π SPM_RDY_vect
Store Program Memory Ready
Lives on: ATA6285, ATA6286, ATA6289, ATmega16, ATmega162, ATmega16A, ATmega32, ATmega323, ATmega32A, ATmega8, ATmega8515, ATmega8535, ATmega8A
π SPM_READY_vect
Store Program Memory Ready β another one, and this list ate π½οΈ
Lives on: AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90PWM81, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32C1, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega406, ATmega48, ATmega48A, ATmega48P, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega8U2
π SPM_Ready_vect
Store Program Memory Ready β note the cute lil lowercase eady, not me being obsessed with the casing π
Lives on: ATA6612C, ATA6613C, ATA6614Q, ATmega168PA, ATmega168PB, ATmega328PB, ATmega48PA, ATmega48PB, ATmega88PA, ATmega88PB, ATtiny828
π SRX_FIFO_vect
SPI Rx Buffer
Lives on: ATA5702M322, ATA5782, ATA5831
π SSM_vect
Sequencer State Machine
Lives on: ATA5702M322, ATA5782, ATA5831
π STX_FIFO_vect
SPI Tx Buffer β twin of SRX_FIFO_vect, but for the transmit side, periodt π
Lives on: ATA5702M322, ATA5782, ATA5831
π SUPPLY_MON_vect
Supply Monitor β keeping an eye on the voltage fr fr π
Lives on: AT90SCR100
π T0INT_vect
Timer0 Interval
Lives on: ATA5702M322, ATA5782, ATA5790, ATA5790N, ATA5795, ATA5831
π T1COMP_vect
Timer/Counter1 Compare Match
Lives on: ATA5702M322, ATA5782, ATA5831
π T1INT_vect
Timer1 Interval
Lives on: ATA5790, ATA5790N, ATA5795
π T1OVF_vect
Timer/Counter1 Overflow
Lives on: ATA5702M322, ATA5782, ATA5831
π T2CAP_vect
Timer/Counter2 Capture Event
Lives on: ATA6285, ATA6286, ATA6289
π T2COM_vect
Timer/Counter2 Compare Match
Lives on: ATA6285, ATA6286, ATA6289
π T2COMINT_vect
Timer/Counter2 Compare Match
Lives on: ATA5790, ATA5790N
π T2COMINT_vect
Timer2 Compare Match β same name, slightly chiller description, she's different π¦
Lives on: ATA5795
π T2COMP_vect
Timer/Counter2 Compare Match β yes bestie this one has a P on the end, do not mix them up π
Lives on: ATA5702M322, ATA5782, ATA5831
π T2OVF_vect
Timer/Counter2 Overflow
Lives on: ATA5702M322, ATA5782, ATA5831, ATA6285, ATA6286, ATA6289
π T2OVFINT_vect
Timer/Counter2 Overflow
Lives on: ATA5790, ATA5790N
π T2OVFINT_vect
Timer2 Overflow β again, same vector name, tiny description remix β¨
Lives on: ATA5795
π T2RXB_vect
Timer2 SSI Receive Buffer
Lives on: ATA6285, ATA6286, ATA6289
π T2TXB_vect
Timer2 SSI Transmit Buffer
Lives on: ATA6285, ATA6286, ATA6289
π T2TXC_vect
Timer2 SSI Transmit Complete β the T2 SSI trio is complete, we love a set π
Lives on: ATA6285, ATA6286, ATA6289
π T3CAP_vect
Timer/Counter3 Capture Event
Lives on: ATA5702M322, ATA5782, ATA5831, ATA6285, ATA6286, ATA6289
π T3CAPINT_vect
Timer/Counter3 Capture Event
Lives on: ATA5790, ATA5790N
π T3CAPINT_vect
Timer3 Capture β shortened glow-up description, same name tho π
Lives on: ATA5795
π T3COM2INT_vect
Timer/Counter3 Compare Match 2 β she's on exactly one chip, main character energy only π
Lives on: ATA5790N
π T3COMA_vect
Timer/Counter3 Compare Match A
Lives on: ATA6285, ATA6286, ATA6289
π T3COMB_vect
Timer/Counter3 Compare Match B
Lives on: ATA6285, ATA6286, ATA6289
π T3COMINT_vect
Timer/Counter3 Compare Match
Lives on: ATA5790, ATA5790N
π T3COMINT_vect
Timer3 Compare Match β the ATA5795 remix of the same name πΆ
Lives on: ATA5795
π T3COMP_vect
Timer/Counter3 Compare Match β with the P, y'all know the drill by now π
Lives on: ATA5702M322, ATA5782, ATA5831
π T3OVF_vect
Timer/Counter3 Overflow
Lives on: ATA5702M322, ATA5782, ATA5831, ATA6285, ATA6286, ATA6289
π T3OVFINT_vect
Timer/Counter3 Overflow
Lives on: ATA5790, ATA5790N
π T3OVFINT_vect
Timer3 Overflow β once more, for the ATA5795 girlies πΈ
Lives on: ATA5795
π T4CAP_vect
Timer/Counter4 Capture Event β something got captured, timer four is telling you about it, go look π
Besties on this one: ATA5702M322, ATA5782, ATA5831
π T4COMP_vect
Timer/Counter4 Compare Match β the compare matched, that's the whole vibe β¨
Besties on this one: ATA5702M322, ATA5782, ATA5831
π T4OVF_vect
Timer/Counter4 Overflow β it rolled over, no cap π
Besties on this one: ATA5702M322, ATA5782, ATA5831
π T5COMP_vect
Timer/Counter5 Compare Match β same energy as the four version but make it five π
Besties on this one: ATA5702M322, ATA5782, ATA5831
π T5OVF_vect
Timer/Counter5 Overflow β five rolled over too, it's giving relentless
Besties on this one: ATA5702M322, ATA5782, ATA5831
π TCA0_CMP1_vect
TCA0 IRQs π₯
Besties on this one: ATtiny3214
π TCA0_HUNF_vect
TCA0 IRQs β the underflow one, lowkey the most dramatic of the TCA0 crew πΈ
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π TCA0_LCMP0_vect
TCA0 IRQs β low compare channel zero, here to serve π
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π TCA0_LCMP1_vect
TCA0 IRQs β channel one this time, and yes the guest list is slightly different, pay attention bestie π
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π TCA0_LCMP2_vect
TCA0 IRQs β channel two, closing out the low-compare trio, slay β¨
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π TCA0_LUNF_vect
TCA0 IRQs β low underflow, and it's a very exclusive party fr fr π₯
Besties on this one: ATtiny3214
π TCA0_OVF_vect
TCA0 IRQs β overflow! main character energy, obviously π
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π¦ TCA1_HUNF_vect
TCA1 IRQs β first of the second TCA, underflow edition π«Ά
Besties on this one: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64, AVR64EA48
π¦ TCA1_LCMP0_vect
TCA1 IRQs β low compare zero, honestly a whole aesthetic π
Besties on this one: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64, AVR64EA48
π¦ TCA1_LCMP1_vect
TCA1 IRQs β low compare one, same guest list, still iconic π
Besties on this one: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64, AVR64EA48
π¦ TCA1_LCMP2_vect
TCA1 IRQs β low compare two, the trilogy is complete, periodt π
Besties on this one: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64, AVR64EA48
π¦ TCA1_OVF_vect
TCA1 IRQs β and it overflowed, we love a full circle moment π
Besties on this one: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64, AVR64EA48
β TCB0_INT_vect
TCB0 IRQs β the TCB crew starts here, big list, big energy π₯
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
β TCB1_INT_vect
TCB1 IRQs β channel one of the TCB squad, slightly different crowd, stay woke π
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny424, ATtiny426, ATtiny427, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
β TCB2_INT_vect
TCB2 IRQs β two! and ngl this list is shorter, the ATtinys dipped π
Besties on this one: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64EA28, AVR64EA32, AVR64EA48
β TCB3_INT_vect
TCB3 IRQs β three, and it's getting exclusive up in here π
Besties on this one: ATmega1609, ATmega3209, ATmega4809, ATmega809, AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR16EA48, AVR32DA48, AVR32DB48, AVR32EA48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64, AVR64EA48
β TCB4_INT_vect
TCB4 IRQs β four, tiny invite list, very VIP, iykyk π
Besties on this one: AVR128DA64, AVR128DB64, AVR64DA64, AVR64DB64
π§ TCC0_CCA_vect
Compare or Capture A β ATxmega era, we're time traveling bestie β³
Besties on this one: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128B3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64B1, ATxmega64B3, ATxmega64D3
π§ TCC0_CCB_vect
Compare or Capture B β next letter, same iconic ATxmega guest list π«
Besties on this one: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128B3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64B1, ATxmega64B3, ATxmega64D3
π§ TCC0_CCC_vect
Compare or Capture C β C for cute and also for channel C π
Besties on this one: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128B3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64B1, ATxmega64B3, ATxmega64D3
π§ TCC0_CCD_vect
Compare or Capture D β the fourth channel, serving finale energy πΈ
Besties on this one:
TCC0_ERR_vectβ Error π₯ β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128B3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64B1, ATxmega64B3, ATxmega64D3TCC0_OVF_vectβ Overflow π β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128B3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64B1, ATxmega64B3, ATxmega64D3TCC1_CCA_vectβ Compare or Capture A π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4TCC1_CCB_vectβ Compare or Capture B π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4TCC1_ERR_vectβ Error π₯ β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4TCC1_OVF_vectβ Overflow π β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4
okay so now we're in the TCC2 zone and bestie, these are the split-timer girlies π β high byte and low byte doing their own separate lil things:
TCC2_HUNF_vectβ High Byte Underflow π β on ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4TCC2_LCMPA_vectβ Low Byte Compare A π― β on ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4TCC2_LCMPB_vectβ Low Byte Compare B π― β on ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4TCC2_LCMPC_vectβ Low Byte Compare C π― β on ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4TCC2_LCMPD_vectβ Low Byte Compare D π― β on ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4TCC2_LUNF_vectβ Low Byte Underflow π β on ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4
and now for the ATxmegaE5 exclusives β¨ β these ones only live on two chips and honestly? main character energy π:
TCC4_CCA_vectβ Channel A Compare or Capture π― β on ATxmega32E5, ATxmega8E5TCC4_CCB_vectβ Channel B Compare or Capture π― β on ATxmega32E5, ATxmega8E5TCC4_CCC_vectβ Channel C Compare or Capture π― β on ATxmega32E5, ATxmega8E5TCC4_CCD_vectβ Channel D Compare or Capture π― β on ATxmega32E5, ATxmega8E5TCC4_ERR_vectβ Error π₯ β on ATxmega32E5, ATxmega8E5TCC4_OVF_vectβ Overflow π β on ATxmega32E5, ATxmega8E5TCC5_CCA_vectβ Channel A Compare or Capture π― β on ATxmega32E5, ATxmega8E5TCC5_CCB_vectβ Channel B Compare or Capture π― β on ATxmega32E5, ATxmega8E5TCC5_ERR_vectβ Error π₯ β on ATxmega32E5, ATxmega8E5TCC5_OVF_vectβ Overflow π β on ATxmega32E5, ATxmega8E5
TCD0 incoming π¦ β a whole quartet of Compare-or-Capture channels plus the usual error/overflow drama:
TCD0_CCA_vectβ Compare or Capture A π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64D3TCD0_CCB_vectβ Compare or Capture B π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64D3TCD0_CCC_vectβ Compare or Capture C π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64D3TCD0_CCD_vectβ Compare or Capture D π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64D3TCD0_ERR_vectβ Error π₯ β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64D3TCD0_OVF_vectβ Overflow π β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128D3, ATxmega16A4, ATxmega16D4, ATxmega192A3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256D3, ATxmega32A4, ATxmega32D3, ATxmega32D4, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64D3
okay so there's ANOTHER TCD0_OVF_vect and bestie, it's a whole different vibe check π
β this one's tagged "TCD0 IRQs" and it shows up on the tinyAVR + modern AVR squad, plus its partner in crime TCD0_TRIG_vect (also "TCD0 IRQs"):
TCD0_OVF_vect(TCD0 IRQs) β on ATtiny1614, ATtiny1616, ATtiny1617, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny814, ATtiny816, ATtiny817, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32TCD0_TRIG_vect(TCD0 IRQs) β on ATtiny1614, ATtiny1616, ATtiny1617, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny814, ATtiny816, ATtiny817, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32
next up TCD1 β same energy, two compare channels and the error/overflow crew πΈ:
TCD1_CCA_vectβ Compare or Capture A π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4UTCD1_CCB_vectβ Compare or Capture B π― β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4UTCD1_ERR_vectβ Error π₯ β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4UTCD1_OVF_vectβ Overflow π β on ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
and we're starting TCD2, the split-timer sister π«Ά β first up, the high byte underflow:
TCD2_HUNF_vectβ High Byte Underflow π β on ATxmega128A3U, ATxmega128A4U, ATxmega128C3, ATxmega128D4, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega384D3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D4TCD2_LCMPA_vectβ Low Byte Compare A π―
Okay so we're still deep in the vector roster, bestie, and it is long β but every single one of these little gremlins matters, so we're listing them all π
TCD2_LCMPB_vectβ Low Byte Compare B- lives on:
ATxmega128A3U,ATxmega128A4U,ATxmega128C3,ATxmega128D4,ATxmega16A4U,ATxmega16C4,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32A4U,ATxmega32C3,ATxmega32C4,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64A4U,ATxmega64C3,ATxmega64D4
- lives on:
TCD2_LCMPC_vectβ Low Byte Compare C- lives on:
ATxmega128A3U,ATxmega128A4U,ATxmega128C3,ATxmega128D4,ATxmega16A4U,ATxmega16C4,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32A4U,ATxmega32C3,ATxmega32C4,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64A4U,ATxmega64C3,ATxmega64D4
- lives on:
TCD2_LCMPD_vectβ Low Byte Compare D- lives on:
ATxmega128A3U,ATxmega128A4U,ATxmega128C3,ATxmega128D4,ATxmega16A4U,ATxmega16C4,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32A4U,ATxmega32C3,ATxmega32C4,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64A4U,ATxmega64C3,ATxmega64D4
- lives on:
TCD2_LUNF_vectβ Low Byte Underflow- lives on:
ATxmega128A3U,ATxmega128A4U,ATxmega128C3,ATxmega128D4,ATxmega16A4U,ATxmega16C4,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32A4U,ATxmega32C3,ATxmega32C4,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64A4U,ATxmega64C3,ATxmega64D4
- lives on:
TCD5_CCA_vectβ Channel A Compare or Capture- lives on:
ATxmega32E5,ATxmega8E5
- lives on:
TCD5_CCB_vectβ Channel B Compare or Capture- lives on:
ATxmega32E5,ATxmega8E5
- lives on:
TCD5_ERR_vectβ Error- lives on:
ATxmega32E5,ATxmega8E5
- lives on:
TCD5_OVF_vectβ Overflow- lives on:
ATxmega32E5,ATxmega8E5
- lives on:
okay now the TCE0 era, she's booked and busy πΈ
TCE0_CCA_vectβ Compare or Capture A- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A4U,ATxmega128D3,ATxmega128D4,ATxmega16A4,ATxmega16A4U,ATxmega16C4,ATxmega16D4,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32A4,ATxmega32A4U,ATxmega32C4,ATxmega32D3,ATxmega32D4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A4U,ATxmega64B1,ATxmega64D3,ATxmega64D4
- lives on:
TCE0_CCB_vectβ Compare or Capture B- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A4U,ATxmega128D3,ATxmega128D4,ATxmega16A4,ATxmega16A4U,ATxmega16C4,ATxmega16D4,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32A4,ATxmega32A4U,ATxmega32C4,ATxmega32D3,ATxmega32D4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A4U,ATxmega64B1,ATxmega64D3,ATxmega64D4
- lives on:
TCE0_CCC_vectβ Compare or Capture C- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A4U,ATxmega128D3,ATxmega128D4,ATxmega16A4,ATxmega16A4U,ATxmega16C4,ATxmega16D4,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32A4,ATxmega32A4U,ATxmega32C4,ATxmega32D3,ATxmega32D4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A4U,ATxmega64B1,ATxmega64D3,ATxmega64D4
- lives on:
TCE0_CCD_vectβ Compare or Capture D- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A4U,ATxmega128D3,ATxmega128D4,ATxmega16A4,ATxmega16A4U,ATxmega16C4,ATxmega16D4,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32A4,ATxmega32A4U,ATxmega32C4,ATxmega32D3,ATxmega32D4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A4U,ATxmega64B1,ATxmega64D3,ATxmega64D4
- lives on:
TCE0_CMP0_vectβ TCE0 IRQs- lives on:
AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32
- lives on:
TCE0_CMP1_vectβ TCE0 IRQs- lives on:
AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32
- lives on:
TCE0_CMP2_vectβ TCE0 IRQs- lives on:
AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32
- lives on:
TCE0_CMP3_vectβ TCE0 IRQs- lives on:
AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32
- lives on:
TCE0_ERR_vectβ Error- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A4U,ATxmega128D3,ATxmega128D4,ATxmega16A4,ATxmega16A4U,ATxmega16C4,ATxmega16D4,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32A4,ATxmega32A4U,ATxmega32C4,ATxmega32D3,ATxmega32D4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A4U,ATxmega64B1,ATxmega64D3,ATxmega64D4
- lives on:
TCE0_OVF_vectβ Overflow- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A4U,ATxmega128D3,ATxmega128D4,ATxmega16A4,ATxmega16A4U,ATxmega16C4,ATxmega16D4,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32A4,ATxmega32A4U,ATxmega32C4,ATxmega32D3,ATxmega32D4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A4U,ATxmega64B1,ATxmega64D3,ATxmega64D4
- lives on:
TCE0_OVF_vectβ TCE0 IRQs- lives on:
AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32
- lives on:
not me noticingTCE0_OVF_vectshows up twice in this list π same name, two totally different crowds. It's giving multiverse. First one is the ATxmega Overflow squad, second one is theAVR16EB*TCE0 IRQs crew β both real, don't merge them, bestie.
TCE1_CCA_vectβ Compare or Capture A- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega16A4,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U
- lives on:
TCE1_CCB_vectβ Compare or Capture B- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega16A4,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U
- lives on:
TCE1_ERR_vectβ Error- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega16A4,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U
- lives on:
TCE1_OVF_vectβ Overflow- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128A3U,ATxmega16A4,ATxmega192A3,ATxmega192A3U,ATxmega256A3,ATxmega256A3B,ATxmega256A3BU,ATxmega256A3U,ATxmega32A4,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64A3U
- lives on:
TCE2_HUNF_vectβ High Byte Underflow- lives on:
ATxmega128A3U,ATxmega128B1,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCE2_LCMPA_vectβ Low Byte Compare A- lives on:
ATxmega128A3U,ATxmega128B1,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCE2_LCMPB_vectβ Low Byte Compare B- lives on:
ATxmega128A3U,ATxmega128B1,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCE2_LCMPC_vectβ Low Byte Compare C- lives on:
ATxmega128A3U,ATxmega128B1,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCE2_LCMPD_vectβ Low Byte Compare D- lives on:
ATxmega128A3U,ATxmega128B1,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCE2_LUNF_vectβ Low Byte Underflow- lives on:
ATxmega128A3U,ATxmega128B1,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
and now we slide into the TCF girls, highkey iconic β¨
TCF0_CCA_vectβ Compare or Capture A- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128D3,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32D3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64D3
- lives on:
TCF0_CCB_vectβ Compare or Capture B- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128D3,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32D3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64D3
- lives on:
TCF0_CCC_vectβ Compare or Capture C- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128D3,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32D3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64D3
- lives on:
TCF0_CCD_vectβ Compare or Capture D- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128D3,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32D3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64D3
- lives on:
TCF0_ERR_vectβ Error- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128D3,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32D3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64D3
- lives on:
TCF0_INT_vectβ TCF0 IRQs- lives on:
AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32
- lives on:
TCF0_OVF_vectβ Overflow- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega128A3,ATxmega128D3,ATxmega192A3,ATxmega192D3,ATxmega256A3,ATxmega256A3B,ATxmega256D3,ATxmega32D3,ATxmega64A1,ATxmega64A1U,ATxmega64A3,ATxmega64D3
- lives on:
TCF1_CCA_vectβ Compare or Capture A- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega64A1,ATxmega64A1U
- lives on:
TCF1_CCB_vectβ Compare or Capture B- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega64A1,ATxmega64A1U
- lives on:
TCF1_ERR_vectβ Error- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega64A1,ATxmega64A1U
- lives on:
TCF1_OVF_vectβ Overflow- lives on:
ATxmega128A1,ATxmega128A1U,ATxmega64A1,ATxmega64A1U
- lives on:
TCF2_HUNF_vectβ High Byte Underflow- lives on:
ATxmega128A3U,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCF2_LCMPA_vectβ Low Byte Compare A- lives on:
ATxmega128A3U,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCF2_LCMPB_vectβ Low Byte Compare B- lives on:
ATxmega128A3U,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCF2_LCMPC_vectβ Low Byte Compare C- lives on:
ATxmega128A3U,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCF2_LCMPD_vectβ Low Byte Compare D- lives on:
ATxmega128A3U,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
TCF2_LUNF_vectβ Low Byte Underflow- lives on:
ATxmega128A3U,ATxmega128C3,ATxmega192A3U,ATxmega192C3,ATxmega256A3BU,ATxmega256A3U,ATxmega256C3,ATxmega32C3,ATxmega384C3,ATxmega384D3,ATxmega64A3U,ATxmega64C3
- lives on:
and we have arrived at the TIM0 corner of the world, where the tinies live π¦
TIM0_CAPT_vectβ Timer/Counter0 Input Capture- lives on:
ATtiny10,ATtiny102,ATtiny104,ATtiny4,ATtiny5,ATtiny9
- lives on:
TIM0_COMPA_vectβ Timer/Counter0 Compare Match A- lives on:
ATmega406,ATtiny10,ATtiny102,ATtiny104,ATtiny13,ATtiny13A,ATtiny1634,ATtiny20,ATtiny24,ATtiny24A,ATtiny4,ATtiny40,ATtiny43U,ATtiny44,ATtiny44A,ATtiny5,ATtiny84,ATtiny84A,ATtiny9
- lives on:
TIM0_COMPB_vect
Timer/Counter0 Compare Match B
okay bestie, the title for this one lived back in the last part, but the vibe is still immaculate:
Timer/Counter0 Compare Match B
riding with: ATmega406, ATtiny10, ATtiny102, ATtiny104, ATtiny13, ATtiny13A, ATtiny1634, ATtiny20, ATtiny24, ATtiny24A, ATtiny4, ATtiny40, ATtiny43U, ATtiny44, ATtiny44A, ATtiny5, ATtiny84, ATtiny84A, ATtiny9
TIM0_OVF_vect
Timer/Counter0 Overflow
riding with: ATmega406, ATtiny10, ATtiny102, ATtiny104, ATtiny13, ATtiny13A, ATtiny1634, ATtiny20, ATtiny24, ATtiny24A, ATtiny4, ATtiny40, ATtiny43U, ATtiny44, ATtiny44A, ATtiny5, ATtiny84, ATtiny84A, ATtiny9
TIM1_CAPT_vect
Timer/Counter1 Input Capture
riding with: ATtiny1634, ATtiny20, ATtiny24, ATtiny24A, ATtiny40, ATtiny44, ATtiny44A, ATtiny84, ATtiny84A
TIM1_COMP_vect
Timer/Counter1 Compare Match
riding with: ATmega406
TIM1_COMPA_vect
Timer/Counter1 Compare Match A
riding with: ATtiny1634, ATtiny20, ATtiny24, ATtiny24A, ATtiny40, ATtiny43U, ATtiny44, ATtiny44A, ATtiny84, ATtiny84A
TIM1_COMPB_vect
Timer/Counter1 Compare Match B
riding with: ATtiny1634, ATtiny20, ATtiny24, ATtiny24A, ATtiny40, ATtiny43U, ATtiny44, ATtiny44A, ATtiny84, ATtiny84A
TIM1_OVF_vect
Timer/Counter1 Overflow
riding with: ATmega406, ATtiny1634, ATtiny20, ATtiny24, ATtiny24A, ATtiny40, ATtiny43U, ATtiny44, ATtiny44A, ATtiny84, ATtiny84A
TIMER0_CAPT_vect time, and it's giving timer zero only energy:
TIMER0_CAPT_vect
Timer/Counter0 Input Capture
riding with: ATtiny261, ATtiny261A, ATtiny461, ATtiny461A, ATtiny861, ATtiny861A
TIMER0_COMP_vect
Timer/Counter0 Compare Match
riding with: AT90CAN128, AT90CAN32, AT90CAN64, ATmega103, ATmega128, ATmega128A, ATmega16, ATmega161, ATmega162, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16A, ATmega32, ATmega323, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32A, ATmega64, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega8535
bestie, hold up. same vector name, second verse, different vibe. keep reading π
TIMER0_COMP_vect
Timer0 Compare Match
riding with: ATmega8515
yes, it's literally the same name spelled the same way. it's not a typo on my part, the page says it twice with two different descriptions. iconic messy behaviour honestly π
TIMER0_COMPA_vect
Timer/Counter0 Compare Match A
riding with: AT90PWM2B, AT90PWM3B, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328, ATmega328P, ATmega328PB, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8HVA, ATmega8U2, ATtiny167, ATtiny2313, ATtiny2313A, ATtiny25, ATtiny261, ATtiny261A, ATtiny4313, ATtiny441, ATtiny45, ATtiny461, ATtiny461A, ATtiny48, ATtiny828, ATtiny841, ATtiny85, ATtiny861, ATtiny861A, ATtiny87, ATtiny88
TIMER0_COMPB_vect
Timer/Counter0 Compare Match B
riding with: AT90PWM1, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA6612C, ATA6613C, ATA6614Q, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328, ATmega328P, ATmega328PB, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8HVA, ATmega8U2, ATtiny2313, ATtiny2313A, ATtiny25, ATtiny261, ATtiny261A, ATtiny4313, ATtiny441, ATtiny45, ATtiny461, ATtiny461A, ATtiny48, ATtiny828, ATtiny841, ATtiny85, ATtiny861, ATtiny861A, ATtiny88
ngl theCOMPAandCOMPBlists are basically twins, but do not let your eyes glaze over β<italic>A</italic>and<italic>B</italic>are not interchangeable, bestie π
TIMER0_COMP_A_vect
Timer/Counter0 Compare Match A
riding with: AT90PWM1, AT90PWM2, AT90PWM216, AT90PWM3, AT90PWM316
lowkey a jumpscare: this one isTIMER0_COMP_A_vect, with an extra_before theA. not the same identifier asTIMER0_COMPA_vectabove. do not freestyle it, copy it character for character β¨
TIMER0_IC_vect
Timer/Counter0 Input Capture
riding with: ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega32HVB, ATmega32HVBREVB, ATmega64HVE, ATmega64HVE2, ATmega8HVA
TIMER0_OVF0_vect
Timer/Counter0 Overflow
riding with: AT90S2313, AT90S2323, AT90S2343, ATtiny22, ATtiny26
and now, the big one. the moment. the main character:
TIMER0_OVF_vect
Timer/Counter0 Overflow
riding with: AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90S1200, AT90S2333, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16A, ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega32, ATmega323, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega328PB, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32A, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega8, ATmega8515, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8A, ATmega8HVA, ATmega8U2, ATtiny11, ATtiny12, ATtiny15, ATtiny167, ATtiny2313, ATtiny2313A, ATtiny25, ATtiny261, ATtiny261A, ATtiny28, ATtiny4313, ATtiny441, ATtiny45, ATtiny461, ATtiny461A, ATtiny48, ATtiny828, ATtiny841, ATtiny85, ATtiny861, ATtiny861A, ATtiny87, ATtiny88
that's a lot of chips, and every single one of them is listed here for a reason. scroll don't skip π«Ά
TIMER1_CAPT1_vect
Timer/Counter1 Capture Event
riding with: AT90S2313
TIMER1_CAPT_vect
Timer/Counter1 Input Capture
riding with: AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90PWM81, AT90S2333, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega16, ATmega161, ATmega162, ATmega163, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16A, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega32, ATmega323, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P, ATmega328PB, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega32A, ATmega32C1, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1, ATmega64M1, ATmega64RFR2, ATmega8, ATmega8515, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8A, ATmega8U2, ATtiny167, ATtiny2313, ATtiny2313A, ATtiny4313, ATtiny441, ATtiny48, ATtiny828, ATtiny841, ATtiny87, ATtiny88
TIMER1_CMPA_vect
Timer/Counter1 Compare Match 1A
riding with: ATtiny26
TIMER1_CMPB_vect
Timer/Counter1 Compare Match 1B
riding with: ATtiny26
TIMER1_COMP1_vect
Timer/Counter1 Compare Match
riding with: AT90S2313
TIMER1_COMP_vect
Timer/Counter1 Compare Match
riding with: AT90S2333, AT90S4433, ATtiny15
TIMER1_COMPA_vect
Timer/Counter1 Compare Match A
...and bestie, this list is not done yet. hold that thought π
TIMER1_COMPB_vect β Timer/Counter1 Compare Match B πΈ
okay this one has the most friends by FAR, it's literally the group chat of interrupt vectors, look at this roster:
AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM2, AT90PWM216, AT90PWM2B,
AT90PWM3, AT90PWM316, AT90PWM3B, AT90S4414, AT90S4434, AT90S8515, AT90S8535,
AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647,
AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C,
ATA664251, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284,
ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2,
ATmega16, ATmega161, ATmega162, ATmega163, ATmega164A, ATmega164P,
ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168,
ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A,
ATmega169P, ATmega169PA, ATmega16A, ATmega16HVA, ATmega16HVA2, ATmega16HVB,
ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561,
ATmega2564RFR2, ATmega256RFR2, ATmega32, ATmega323, ATmega324A, ATmega324P,
ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P,
ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328, ATmega328P,
ATmega328PB, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA,
ATmega329A, ATmega329P, ATmega329PA, ATmega32A, ATmega32C1, ATmega32HVB,
ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega48,
ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644,
ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450,
ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490,
ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1,
ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega8, ATmega8515,
ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8A,
ATmega8HVA, ATmega8U2, ATtiny167, ATtiny2313, ATtiny2313A, ATtiny25,
ATtiny261, ATtiny261A, ATtiny4313, ATtiny441, ATtiny45, ATtiny461, ATtiny461A,
ATtiny48, ATtiny828, ATtiny841, ATtiny85, ATtiny861, ATtiny861A, ATtiny87,
ATtiny88
like everybody is here bestie, no crumbs left π
TIMER1_COMPC_vect β Timer/Counter1 Compare Match C β¨
the C-match squad is a lil more exclusive, so demure of them:
AT90CAN128, AT90CAN32, AT90CAN64, AT90USB1286, AT90USB1287, AT90USB162,
AT90USB646, AT90USB647, AT90USB82, ATmega128, ATmega1280, ATmega1281,
ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega16U2,
ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2,
ATmega32U2, ATmega32U4, ATmega32U6, ATmega64, ATmega640, ATmega644RFR2,
ATmega64A, ATmega64RFR2, ATmega8U2
TIMER1_COMPD_vect β Timer/Counter1 Compare Match D π
D-match is a tiny lil club, literally six members, it's giving VIP lounge:
ATtiny261, ATtiny261A, ATtiny461, ATtiny461A, ATtiny861, ATtiny861A
TIMER1_IC_vect β Timer/Counter1 Input Capture π¦
input capture besties, they catching everything fr:
ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega32HVB,
ATmega32HVBREVB, ATmega64HVE, ATmega64HVE2, ATmega8HVA
TIMER1_OVF1_vect β Timer/Counter1 Overflow π
note the lil 1 in there, it's OVF1 not OVF, okay? it's its whole thing:
AT90S2313, ATtiny26
TIMER1_OVF_vect β Timer/Counter1 Overflow πΈ
and HERE's the regular TIMER1_OVF_vect, the main character of overflow vectors, the guest list is literally everyone:
AT90CAN128, AT90CAN32, AT90CAN64, AT90PWM1, AT90PWM161, AT90PWM2,
AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90PWM81,
AT90S2333, AT90S4414, AT90S4433, AT90S4434, AT90S8515, AT90S8535,
AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646,
AT90USB647, AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q,
ATA6616C, ATA6617C, ATA664251, ATmega103, ATmega128, ATmega1280,
ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A,
ATmega128RFA1, ATmega128RFR2, ATmega16, ATmega161, ATmega162, ATmega163,
ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P,
ATmega165PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA,
ATmega168PB, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega16A,
ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1,
ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2,
ATmega256RFR2, ATmega32, ATmega323, ATmega324A, ATmega324P, ATmega324PA,
ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P,
ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega328,
ATmega328P, ATmega328PB, ATmega329, ATmega3290, ATmega3290A,
ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA,
ATmega32A, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1,
ATmega32U2, ATmega32U4, ATmega32U6, ATmega48, ATmega48A, ATmega48P,
ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A,
ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450,
ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490,
ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A, ATmega64C1,
ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega8,
ATmega8515, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA,
ATmega88PB, ATmega8A, ATmega8HVA, ATmega8U2, ATtiny15, ATtiny167,
ATtiny2313, ATtiny2313A, ATtiny25, ATtiny261, ATtiny261A, ATtiny4313,
ATtiny441, ATtiny45, ATtiny461, ATtiny461A, ATtiny48, ATtiny828,
ATtiny841, ATtiny85, ATtiny861, ATtiny861A, ATtiny87, ATtiny88
lowkey obsessed, that's a whole stadium ποΈ
TIMER2_CAPT_vect β Timer/Counter2 Input Capture β
just two icons on this list, and honestly good for them:
ATtiny441, ATtiny841
TIMER2_COMP_vect β Timer/Counter2 Compare Match π
classic COMP with no letter after it, a vintage queen:
AT90CAN128, AT90CAN32, AT90CAN64, AT90S4434, AT90S8535, ATmega103,
ATmega128, ATmega128A, ATmega16, ATmega161, ATmega162, ATmega163,
ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega169, ATmega169A,
ATmega169P, ATmega169PA, ATmega16A, ATmega32, ATmega323, ATmega325,
ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A,
ATmega325P, ATmega325PA, ATmega329, ATmega3290, ATmega3290A,
ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA,
ATmega32A, ATmega64, ATmega645, ATmega6450, ATmega6450A, ATmega6450P,
ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P,
ATmega649A, ATmega649P, ATmega64A, ATmega8, ATmega8535, ATmega8A
TIMER2_COMPA_vect β Timer/Counter2 Compare Match A π
now we in the lettered era of Timer2 compares, A comes first obviously:
AT90SCR100, AT90USB1286, AT90USB1287, AT90USB646, AT90USB647, ATA6612C,
ATA6613C, ATA6614Q, ATmega1280, ATmega1281, ATmega1284, ATmega1284P,
ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P,
ATmega164PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA,
ATmega168PB, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2,
ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328, ATmega328P,
ATmega328PB, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA,
ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA,
ATmega644RFR2, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA,
ATmega88PB, ATtiny441, ATtiny841
TIMER2_COMPB_vect β Timer/Counter2 Compare Match B π§
and B... it's giving the EXACT same guest list as A, bestie they're twins, iykyk:
AT90SCR100, AT90USB1286, AT90USB1287, AT90USB646, AT90USB647, ATA6612C,
ATA6613C, ATA6614Q, ATmega1280, ATmega1281, ATmega1284, ATmega1284P,
ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P,
ATmega164PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA,
ATmega168PB, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2,
ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328, ATmega328P,
ATmega328PB, ATmega32U6, ATmega48, ATmega48A, ATmega48P, ATmega48PA,
ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA,
ATmega644RFR2, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA,
ATmega88PB, ATtiny441, ATtiny841
TIMER2_OVF_vect β Timer/Counter2 Overflow π
overflow time for Timer2 and yeah it's a crowd again, they ate:
AT90CAN128, AT90CAN32, AT90CAN64, AT90S4434, AT90S8535, AT90SCR100,
AT90USB1286, AT90USB1287, AT90USB646, AT90USB647, ATA6612C, ATA6613C,
ATA6614Q, ATmega103, ATmega128, ATmega1280, ATmega1281, ATmega1284,
ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2,
ATmega16, ATmega161, ATmega162, ATmega163, ATmega164A, ATmega164P,
ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega168,
ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega169, ATmega169A,
ATmega169P, ATmega169PA, ATmega16A, ATmega2560, ATmega2561,
ATmega2564RFR2, ATmega256RFR2, ATmega32, ATmega323, ATmega324A,
ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250,
ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P,
ATmega325PA, ATmega328, ATmega328P, ATmega328PB, ATmega329, ATmega3290,
ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P,
ATmega329PA, ATmega32A, ATmega32U6, ATmega48, ATmega48A, ATmega48P,
ATmega48PA, ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A,
ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450,
ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490,
ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATmega64A,
ATmega64RFR2, ATmega8, ATmega8535, ATmega88, ATmega88A, ATmega88P,
ATmega88PA, ATmega88PB, ATmega8A, ATtiny441, ATtiny841
TIMER3_CAPT_vect β Timer/Counter3 Input Capture π
TIMER3_COMPA_vectβ Timer/Counter3 Compare Match A π bestie she's the compare match A interrupt for Timer/Counter3, no cap- π¦ hits on:
AT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB646,AT90USB647,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega162,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega32U4,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2
- π¦ hits on:
TIMER3_COMPB_vectβ Timer/Counter3 Compare Match B β¨ same energy, different letter- π¦ hits on:
AT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB646,AT90USB647,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega162,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega32U4,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2
- π¦ hits on:
TIMER3_COMPC_vectβ Timer/Counter3 Compare Match C π and yeah, C's chip list is a lil shorter, that's just how it is- π¦ hits on:
AT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB646,AT90USB647,ATmega128,ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega32U4,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2
- π¦ hits on:
TIMER3_OVF_vectβ Timer/Counter3 Overflow π the overflow one, she's giving rollover- π¦ hits on:
AT90CAN128,AT90CAN32,AT90CAN64,AT90USB1286,AT90USB1287,AT90USB646,AT90USB647,ATmega128,ATmega1280,ATmega1281,ATmega1284,ATmega1284P,ATmega1284RFR2,ATmega128A,ATmega128RFA1,ATmega128RFR2,ATmega162,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega32U4,ATmega32U6,ATmega64,ATmega640,ATmega644RFR2,ATmega64A,ATmega64RFR2
- π¦ hits on:
TIMER4_CAPT_vectβ Timer/Counter4 Input Capture πΈ capture moment fr fr- π¦ hits on:
ATmega1280,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER4_COMPA_vectβ Timer/Counter4 Compare Match A β- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega32U4,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER4_COMPB_vectβ Timer/Counter4 Compare Match B π twin of A, same list, iconic- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega32U4,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER4_COMPC_vectβ Timer/Counter4 Compare Match C π- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER4_COMPD_vectβ Timer/Counter4 Compare Match D π ok rare queen, only two chips even know her- π¦ hits on:
ATmega16U4,ATmega32U4
- π¦ hits on:
TIMER4_FPF_vectβ Timer/Counter4 Fault Protection π‘οΈ protective babe- π¦ hits on:
ATmega16U4,ATmega32U4
- π¦ hits on:
TIMER4_OVF_vectβ Timer/Counter4 Overflow π- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega16U4,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega324PB,ATmega328PB,ATmega32U4,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER5_CAPT_vectβ Timer/Counter5 Input Capture πΈ- π¦ hits on:
ATmega1280,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2564RFR2,ATmega256RFR2,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER5_COMPA_vectβ Timer/Counter5 Compare Match A β¨- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER5_COMPB_vectβ Timer/Counter5 Compare Match B π- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER5_COMPC_vectβ Timer/Counter5 Compare Match C π- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TIMER5_OVF_vectβ Timer/Counter5 Overflow π- π¦ hits on:
ATmega1280,ATmega1281,ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2560,ATmega2561,ATmega2564RFR2,ATmega256RFR2,ATmega640,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
okay we're leaving the mega timers behind, now it's giving niche transceiver girlies π
TMRXBINT_vectβ Timer Modulator SSI Receive Buffer π₯- π¦ hits on:
ATA5790,ATA5790N,ATA5795
- π¦ hits on:
TMTCF_vectβ Tx Modulator Telegram Finish π¨ telegram done bestie- π¦ hits on:
ATA5702M322,ATA5782,ATA5831
- π¦ hits on:
TMTXBINT_vectβ Timer Modulator SSI Transmit Buffer π€- π¦ hits on:
ATA5790,ATA5790N,ATA5795
- π¦ hits on:
TMTXCINT_vectβ Timer Modulator Transmit Complete β- π¦ hits on:
ATA5790,ATA5790N,ATA5795
- π¦ hits on:
TPINT_vectβ Transponder Mode π°οΈ- π¦ hits on:
ATA5702M322,ATA5790,ATA5790N,ATA5795
- π¦ hits on:
TPTOERR_vectβ Transponder Timeout Error π it timed out, we've all been there- π¦ hits on:
ATA5702M322
- π¦ hits on:
and now the TRx24 radio era π‘β¨
TRX24_AMI0_vectβ Address match Interrupt of address filter 0 π- π¦ hits on:
ATmega1284RFR2,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_AMI1_vectβ Address match Interrupt of address filter 1 π- π¦ hits on:
ATmega1284RFR2,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_AMI2_vectβ Address match Interrupt of address filter 2 π- π¦ hits on:
ATmega1284RFR2,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_AMI3_vectβ Address match Interrupt of address filter 3 π and that's the whole filter squad- π¦ hits on:
ATmega1284RFR2,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_AWAKE_vectβ TRx24 AWAKE tranceiver is reaching stateTRx_OFFπ«Ά she's waking up, girlies- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_CCA_ED_DONE_vectβ TRx24 CCA/ED done β- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_PLL_LOCK_vectβ TRx24 PLL lock π locked in, literally- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_PLL_UNLOCK_vectβ TRx24 PLL unlock π the opposite vibe, no notes- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_RX_END_vectβ TRx24 Rx_END π¬- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_RX_START_vectβ TRx24 Receive start πΈ- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_TX_END_vectβ TRx24 Tx_END π- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_TX_START_vectβ TRx24 Tx start π- π¦ hits on:
ATmega1284RFR2,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TRX24_XAH_AMI_vectβ TRx24 XAH AMI π- π¦ hits on:
ATmega1284RFR2,ATmega128RFA1,ATmega128RFR2,ATmega2564RFR2,ATmega256RFR2,ATmega644RFR2,ATmega64RFR2
- π¦ hits on:
TWI time π§΅ two wires, so much drama
TWI0_vectβ Two Wire Serial Interface 0 π- π¦ hits on:
ATmega324PB,ATmega328PB
- π¦ hits on:
TWI0_TWIM_vectβ TWI0 IRQs β¨ the master side btw- π¦ hits on:
ATmega1608,ATmega1609,ATmega3208,ATmega3209,ATmega4808,ATmega4809,ATmega808,ATmega809,ATtiny1604,ATtiny1606,ATtiny1607,ATtiny1614,ATtiny1616,ATtiny1617,ATtiny1624,ATtiny1626,ATtiny1627,ATtiny202,ATtiny204,ATtiny212,ATtiny214,ATtiny3214,ATtiny3216,ATtiny3217,ATtiny3224,ATtiny3226,ATtiny3227,ATtiny402,ATtiny404,ATtiny406,ATtiny412,ATtiny414,ATtiny416,ATtiny417,ATtiny424,ATtiny426,ATtiny427,ATtiny804,ATtiny806,ATtiny807,ATtiny814,ATtiny816,ATtiny817,ATtiny824,ATtiny826,ATtiny827,AVR128DA28,AVR128DA32,AVR128DA48,AVR128DA64,AVR128DB28,AVR128DB32,AVR128DB48,AVR128DB64,AVR16DD14,AVR16DD20,AVR16DD28,AVR16DD32,AVR16EA28,AVR16EA32,AVR16EA48,AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32,AVR32DA28,AVR32DA32,AVR32DA48,AVR32DB28,AVR32DB32,AVR32DB48,AVR32DD14,AVR32DD20,AVR32DD28,AVR32DD32,AVR32EA28,AVR32EA32,AVR32EA48,AVR64DA28,AVR64DA32,AVR64DA48,AVR64DA64,AVR64DB28,AVR64DB32,AVR64DB48,AVR64DB64,AVR64DD14,AVR64DD20,AVR64DD28,AVR64DD32,AVR64DU28,AVR64DU32,AVR64EA28,AVR64EA32,AVR64EA48
- π¦ hits on:
TWI0_TWIS_vectβ TWI0 IRQs π«Ά and here's the slave side, same name energy, same exact chip list- π¦ hits on:
ATmega1608,ATmega1609,ATmega3208,ATmega3209,ATmega4808,ATmega4809,ATmega808,ATmega809,ATtiny1604,ATtiny1606,ATtiny1607,ATtiny1614,ATtiny1616,ATtiny1617,ATtiny1624,ATtiny1626,ATtiny1627,ATtiny202,ATtiny204,ATtiny212,ATtiny214,ATtiny3214,ATtiny3216,ATtiny3217,ATtiny3224,ATtiny3226,ATtiny3227,ATtiny402,ATtiny404,ATtiny406,ATtiny412,ATtiny414,ATtiny416,ATtiny417,ATtiny424,ATtiny426,ATtiny427,ATtiny804,ATtiny806,ATtiny807,ATtiny814,ATtiny816,ATtiny817,ATtiny824,ATtiny826,ATtiny827,AVR128DA28,AVR128DA32,AVR128DA48,AVR128DA64,AVR128DB28,AVR128DB32,AVR128DB48,AVR128DB64,AVR16DD14,AVR16DD20,AVR16DD28,AVR16DD32,AVR16EA28,AVR16EA32,AVR16EA48,AVR16EB14,AVR16EB20,AVR16EB28,AVR16EB32,AVR32DA28,AVR32DA32,AVR32DA48,AVR32DB28,AVR32DB32,AVR32DB48,AVR32DD14,AVR32DD20,AVR32DD28,AVR32DD32,AVR32EA28,AVR32EA32,AVR32EA48,AVR64DA28,AVR64DA32,AVR64DA48,AVR64DA64,AVR64DB28,AVR64DB32,AVR64DB48,AVR64DB64,AVR64DD14,AVR64DD20,AVR64DD28,AVR64DD32,AVR64DU28,AVR64DU32,AVR64EA28,AVR64EA32,AVR64EA48
- π¦ hits on:
TWI1_vectβ Two Wire Serial Interface 1 π second interface, main character behavior- π¦ hits on:
ATA5702M322,ATmega324PB,ATmega328PB
- π¦ hits on:
TWI1_TWIM_vectβ TWI1 IRQs π«- π¦ hits on:
AVR128DA32,AVR128DA48,AVR128DA64,AVR128DB32,AVR128DB48,AVR128DB64,AVR32DA32,AVR32DA48,AVR32DB32,AVR32DB48,AVR64DA32,AVR64DA48,AVR64DA64,AVR64DB32,AVR64DB48,AVR64DB64
- π¦ hits on:
TWI1_TWIS_vectβ TWI1 IRQs π« yes bestie, identical description and identical chips, that's just the source, we don't argue with the source- π¦ hits on:
AVR128DA32,AVR128DA48,AVR128DA64,AVR128DB32,AVR128DB48,AVR128DB64,AVR32DA32,AVR32DA48,AVR32DB32,AVR32DB48,AVR64DA32,AVR64DA48,AVR64DA64,AVR64DB32,AVR64DB48,AVR64DB64
- π¦ hits on:
TWI2_vectβ Two Wire Serial Interface 2 π¦ a whole third one and only ONE chip reps her, obsessed- π¦ hits on:
ATA5702M322
- π¦ hits on:
TWI_vectβ Two Wire Serial Interface π§ just the classic, no number, no nonsense
AT90CAN128, AT90CAN32, AT90CAN64, AT90SCR100, AT90USB1286, AT90USB1287,
AT90USB646, AT90USB647, ATA6612C, ATA6613C, ATA6614Q, ATmega128,
ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2,
ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega16, ATmega163,
ATmega164A, ATmega164P, ATmega164PA, ATmega168, ATmega168A, ATmega168P,
ATmega168PA, ATmega168PB, ATmega16A, ATmega16HVB, ATmega16HVBREVB,
ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2,
ATmega32, ATmega323, ATmega324A, ATmega324P, ATmega324PA, ATmega328,
ATmega328P, ATmega32A, ATmega32HVB, ATmega32HVBREVB, ATmega32U4,
ATmega32U6, ATmega406, ATmega48, ATmega48A, ATmega48P, ATmega48PA,
ATmega48PB, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P,
ATmega644PA, ATmega644RFR2, ATmega64A, ATmega64RFR2, ATmega8,
ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB,
ATmega8A, ATtiny1634, ATtiny48, ATtiny88
β¨ TWIBUSCD_vect β¨
Two Wire Bus Connect/Disconnect β the connect/disconnect moment π
ATmega16HVB, ATmega16HVBREVB, ATmega32HVB, ATmega32HVBREVB
β¨ TWIC_TWIM_vect β¨
TWI Master β master energy, no cap π
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U,
ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3,
ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
β¨ TWIC_TWIS_vect β¨
TWI Slave β same gang, but slave mode activated π«Ά
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4,
ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3,
ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B,
ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4,
ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4,
ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U,
ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3,
ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
β¨ TWID_TWIM_vect β¨
TWI Master β the D-channel edition π
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
β¨ TWID_TWIS_vect β¨
TWI Slave β serving slave realness on D π¦
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
β¨ TWIE_TWIM_vect β¨
TWI Master β E is for extra β¨
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U,
ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3,
ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU,
ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U,
ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64C3, ATxmega64D3, ATxmega64D4
β¨ TWIE_TWIS_vect β¨
TWI Slave β E squad, slave side π
ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U,
ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U,
ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3,
ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU,
ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U,
ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega384C3,
ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U,
ATxmega64A4U, ATxmega64C3, ATxmega64D3, ATxmega64D4
β¨ TWIF_TWIM_vect β¨
TWI Master β F for finally, master side π
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
β¨ TWIF_TWIS_vect β¨
TWI Slave β F squad, slave side π§
ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
β¨ TWI_BUS_CD_vect β¨
Two Wire Bus Connect/Disconnect β the solo ATmega406 moment πΈ
ATmega406
β¨ TWI_SLAVE_vect β¨
TWI Slave β tiny but mighty π
ATtiny20, ATtiny40, ATtiny441, ATtiny828, ATtiny841
β¨ TXDONE_vect β¨
Transmission Done, Bit Timer Flag 2 β done and dusted β¨
AT86RF401
β¨ TXEMPTY_vect β¨
Transmit Buffer Empty, Bit Itmer Flag 0 β buffer empty, vibes full π
AT86RF401
β¨ UART0_RX_vect β¨
UART0 Rx Complete β received, bestie π
ATmega161
β¨ UART0_TX_vect β¨
UART0 Tx Complete β sent, periodt π
ATmega161
β¨ UART0_UDRE_vect β¨
UART0 Data Register Empty β register says itβs empty, iconic π
ATmega161
β¨ UART1_RX_vect β¨
UART1 Rx Complete β second UART, first in our hearts π
ATmega161
β¨ UART1_TX_vect β¨
UART1 Tx Complete β transmitted with love π«Ά
ATmega161
β¨ UART1_UDRE_vect β¨
UART1 Data Register Empty β empty register, full drama π
ATmega161
β¨ UART_RX_vect β¨
UART Rx Complete β classic UART receive energy π₯
AT90S2313, AT90S2333, AT90S4414, AT90S4433, AT90S4434, AT90S8515,
AT90S8535, ATmega103, ATmega163
β¨ UART_TX_vect β¨
UART Tx Complete β classic UART transmit slay π€
AT90S2313, AT90S2333, AT90S4414, AT90S4433, AT90S4434, AT90S8515,
AT90S8535, ATmega103, ATmega163
β¨ UART_UDRE_vect β¨
UART Data Register Empty β UART register said βemptyβ, we listen π
AT90S2313, AT90S2333, AT90S4414, AT90S4433, AT90S4434, AT90S8515,
AT90S8535, ATmega103, ATmega163
β¨ UHF_EOTA_vect β¨
UHF Receiver End of telegram on Rx path A β telegram done, path A π‘
ATA5782, ATA5831
β¨ UHF_EOTB_vect β¨
UHF Receiver End of telegram on Rx path B β telegram done, path B π‘
ATA5782, ATA5831
β¨ UHF_NBITA_vect β¨
UHF Receiver new bit on Rx path A β new bit just dropped, path A β¨
ATA5782, ATA5831
β¨ UHF_NBITB_vect β¨
UHF Receiver new bit on Rx path B β new bit just dropped, path B β¨
ATA5782, ATA5831
β¨ UHF_SOTA_vect β¨
UHF Receiver start of telegram ok on Rx path A β telegram start, path A β
ATA5782, ATA5831
β¨ UHF_SOTB_vect β¨
UHF Receiver start of telegram ok on Rx path B β telegram start, path B β
ATA5782, ATA5831
β¨ UHF_WCOA_vect β¨
UHF Receiver wake up ok on Rx path A β wake up, path A βοΈ
ATA5782, ATA5831
β¨ UHF_WCOB_vect β¨
UHF Receiver wake up ok on Rx path B β wake up, path B βοΈ
ATA5782, ATA5831
β¨ USART0_DRE_vect β¨
USART0 Data Register Empty β DRE but make it USART0 π
ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809,
ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614,
ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny1634,
ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216,
ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404,
ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424,
ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814,
ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28,
AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48,
AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28,
AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32,
AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48,
AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32,
AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28,
AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28,
AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
β¨ USART0_RX_vect β¨
USART0 Rx Complete β received on USART0, as one does π
AT90CAN128, AT90CAN32, AT90CAN64, AT90SCR100, ATmega128, ATmega1280,
ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A,
ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA,
ATmega165A, ATmega165PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA,
ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A,
ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250,
ATmega3250A, ATmega3250P, ATmega325A, ATmega325P, ATmega325PA,
ATmega328PB, ATmega329, ATmega329A, ATmega329P, ATmega329PA, ATmega64,
ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA,
ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P,
ATmega645A, ATmega645P, ATmega649, ATmega649A, ATmega649P, ATmega64A,
ATmega64RFR2, ATtiny441, ATtiny841
β¨ USART0_RXC_vect β¨
USART0 Rx Complete β RXC edition, still complete π
ATmega1608, ATmega1609, ATmega162, ATmega3208, ATmega3209, ATmega4808,
ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607,
ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627,
ATtiny1634, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214,
ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402,
ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417,
ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807,
ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827,
AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32,
AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32,
AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28,
AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32,
AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28,
AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64,
AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20,
AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32,
AVR64EA48
β¨ USART0_RXS_vect β¨
USART0 Start β start me up, ATtiny1634 style π¬
ATtiny1634
β¨ USART0_START_vect β¨
USART0 Start Frame Detection β frame detection, but make it start π
ATmega324PB, ATmega328PB, ATtiny441, ATtiny841
β¨ USART0_TX_vect β¨
USART0 Tx Complete β transmitted, slay π
AT90CAN128, AT90CAN32, AT90CAN64, AT90SCR100, ATmega128, ATmega1280,
ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A,
ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA,
ATmega165A, ATmega165PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA,
ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A,
ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250PA,
ATmega325A, ATmega325P, ATmega325PA, ATmega328PB, ATmega329, ATmega3290,
ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P,
ATmega329PA, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P,
ATmega644PA, ATmega644RFR2, ATmega645, ATmega645A, ATmega645P,
ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P,
ATmega64A, ATmega64RFR2, ATtiny441, ATtiny841
β¨ USART0_TXC_vect β¨
USART0 Tx Complete β Tx complete, iconic, no notes π
β¦and that device list just keeps going, so let's finish it off real quick πΈ
ATmega1608, ATmega1609, ATmega162, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1604, ATtiny1606, ATtiny1607, ATtiny1614, ATtiny1616, ATtiny1617, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny1634, ATtiny202, ATtiny204, ATtiny212, ATtiny214, ATtiny3214, ATtiny3216, ATtiny3217, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny402, ATtiny404, ATtiny406, ATtiny412, ATtiny414, ATtiny416, ATtiny417, ATtiny424, ATtiny426, ATtiny427, ATtiny804, ATtiny806, ATtiny807, ATtiny814, ATtiny816, ATtiny817, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
periodt, that one's done π
π USART0_UDRE_vect
USART0 Data Register Empty
The fam that rocks this vector: AT90CAN128, AT90CAN32, AT90CAN64, AT90SCR100, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega162, ATmega164A, ATmega164P, ATmega164PA, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega325A, ATmega325P, ATmega325PA, ATmega328PB, ATmega329, ATmega329A, ATmega329P, ATmega329PA, ATmega64, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega649A, ATmega649P, ATmega64A, ATmega64RFR2, ATtiny2313A, ATtiny4313, ATtiny441, ATtiny841
π«§ USART1_DRE_vect
USART1 Data Register Empty
It's giving "my transmit buffer is empty, pls feed me". Chips that have it: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny1634, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny424, ATtiny426, ATtiny427, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π USART1_RX_vect
USART1 Rx Complete
A whole byte landed, bestie π Reserved for: AT90CAN128, AT90CAN32, AT90CAN64, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328PB, ATmega32U2, ATmega32U4, ATmega32U6, ATmega64, ATmega640, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega64A, ATmega64RFR2, ATmega8U2, ATtiny441, ATtiny841
π¦ USART1_RXC_vect
USART1 Rx Complete
Same vibe as above, different naming era. Owned by: ATmega1608, ATmega1609, ATmega162, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny1634, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny424, ATtiny426, ATtiny427, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π USART1_RXS_vect
USART1 Start
Just one icon for this one: ATtiny1634. Rare, exclusive, main character energy fr π
πΈ USART1_START_vect
USART1 Start Frame Detection
Catching that start frame like π. Lives on: ATmega324PB, ATmega328PB, ATtiny441, ATtiny841
β¨ USART1_TX_vect
USART1 Tx Complete
Everything you queued up? Sent. Done. On: AT90CAN128, AT90CAN32, AT90CAN64, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328PB, ATmega32U2, ATmega32U4, ATmega32U6, ATmega64, ATmega640, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega64A, ATmega64RFR2, ATmega8U2, ATtiny441, ATtiny841
π USART1_TXC_vect
USART1 Tx Complete
The newer-named twin of the one above π«Ά On: ATmega1608, ATmega1609, ATmega162, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, ATtiny1624, ATtiny1626, ATtiny1627, ATtiny1634, ATtiny3224, ATtiny3226, ATtiny3227, ATtiny424, ATtiny426, ATtiny427, ATtiny824, ATtiny826, ATtiny827, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32, AVR64DU28, AVR64DU32, AVR64EA28, AVR64EA32, AVR64EA48
π§ USART1_UDRE_vect
USART1 Data Register Empty
Feed the register, bestie π On: AT90CAN128, AT90CAN32, AT90CAN64, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATmega128, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128A, ATmega128RFA1, ATmega128RFR2, ATmega162, ATmega164A, ATmega164P, ATmega164PA, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328PB, ATmega32U2, ATmega32U4, ATmega32U6, ATmega64, ATmega640, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega64A, ATmega64RFR2, ATmega8U2, ATtiny441, ATtiny841
π USART2_DRE_vect
USART2 Data Register Empty
Second USART said "me too" π« On: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64EA28, AVR64EA32, AVR64EA48
π USART2_RX_vect
USART2 Rx Complete
On: ATmega1280, ATmega2560, ATmega324PB, ATmega640
π USART2_RXC_vect
USART2 Rx Complete
Same deal, new name, obsessed. On: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64EA28, AVR64EA32, AVR64EA48
π USART2_START_vect
USART2 Start Frame Detection
Only ATmega324PB carries this crown, and honestly? It ate.
π₯ USART2_TX_vect
USART2 Tx Complete
On: ATmega1280, ATmega2560, ATmega324PB, ATmega640
π« USART2_TXC_vect
USART2 Tx Complete
On: ATmega1608, ATmega1609, ATmega3208, ATmega3209, ATmega4808, ATmega4809, ATmega808, ATmega809, AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR16EA28, AVR16EA32, AVR16EA48, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR32EA28, AVR32EA32, AVR32EA48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64, AVR64EA28, AVR64EA32, AVR64EA48
π USART2_UDRE_vect
USART2 Data Register Empty
On: ATmega1280, ATmega2560, ATmega324PB, ATmega640
β USART3_DRE_vect
USART3 Data Register Empty
Third one, still going strong πͺ On: ATmega1609, ATmega3209, ATmega4809, ATmega809, AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
π¦ USART3_RX_vect
USART3 Rx Complete
On: ATmega1280, ATmega2560, ATmega640
π USART3_RXC_vect
USART3 Rx Complete
On: ATmega1609, ATmega3209, ATmega4809, ATmega809, AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
π
USART3_TX_vect
USART3 Tx Complete
On: ATmega1280, ATmega2560, ATmega640
β¨ USART3_TXC_vect
USART3 Tx Complete
On: ATmega1609, ATmega3209, ATmega4809, ATmega809, AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
π«Ά USART3_UDRE_vect
USART3 Data Register Empty
On: ATmega1280, ATmega2560, ATmega640
π USART4_DRE_vect
USART4 Data Register Empty
Four whole USARTs, no cap π On: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
πΈ USART4_RXC_vect
USART4 Rx Complete
On: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
π USART4_TXC_vect
USART4 Tx Complete
On: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
π§ USART5_DRE_vect
USART5 Data Register Empty
FIVE. Iconic behaviour only. On: AVR128DA64, AVR128DB64, AVR64DA64, AVR64DB64
π USART5_RXC_vect
USART5 Rx Complete
On: AVR128DA64, AVR128DB64, AVR64DA64, AVR64DB64
π₯ USART5_TXC_vect
USART5 Tx Complete
On: AVR128DA64, AVR128DB64, AVR64DA64, AVR64DB64
π« USARTC0_DRE_vect
Data Register Empty
Hello XMEGA era, we love you π« On: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
β¨ USARTC0_RXC_vect
Reception Complete
and we're still going, bestie β the vector list has more in store π«Ά
okay continuing the list, bestie β we're deep in USART-ville now π every single one of these is a vector name, what it means, and which chips it lives on. no skips. let's GO.
USARTC0_TXC_vectβ Transmission Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
USARTC1_DRE_vectβ Data Register Empty π«Ά- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega32C4, ATxmega384C3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
USARTC1_RXC_vectβ Reception Complete π₯- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega32C4, ATxmega384C3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
USARTC1_TXC_vectβ Transmission Complete π€- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega32C4, ATxmega384C3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
USARTD0_DRE_vectβ Data Register Empty π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
USARTD0_RXC_vectβ Reception Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
USARTD0_TXC_vectβ Transmission Complete π₯- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega16C4, ATxmega16D4, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega32D3, ATxmega32D4, ATxmega32E5, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64C3, ATxmega64D3, ATxmega64D4, ATxmega8E5
USARTD1_DRE_vectβ Data Register Empty β¨- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
USARTD1_RXC_vectβ Reception Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
USARTD1_TXC_vectβ Transmission Complete πΈ- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega32A4, ATxmega32A4U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U
USARTE0_DRE_vectβ Data Register Empty π¦- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32D3, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
USARTE0_RXC_vectβ Reception Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32D3, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
USARTE0_TXC_vectβ Transmission Complete β- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128C3, ATxmega128D3, ATxmega128D4, ATxmega16A4, ATxmega16A4U, ATxmega192A3, ATxmega192A3U, ATxmega192C3, ATxmega192D3, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega256D3, ATxmega32A4, ATxmega32A4U, ATxmega32C3, ATxmega32D3, ATxmega384C3, ATxmega384D3, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64C3, ATxmega64D3, ATxmega64D4
USARTE1_DRE_vectβ Data Register Empty π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
USARTE1_RXC_vectβ Reception Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
USARTE1_TXC_vectβ Transmission Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
USARTF0_DRE_vectβ Data Register Empty π§- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
USARTF0_RXC_vectβ Reception Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
USARTF0_TXC_vectβ Transmission Complete π- lives on: ATxmega128A1, ATxmega128A1U, ATxmega128A3, ATxmega128A3U, ATxmega192A3, ATxmega192A3U, ATxmega256A3, ATxmega256A3B, ATxmega256A3BU, ATxmega256A3U, ATxmega64A1, ATxmega64A1U, ATxmega64A3, ATxmega64A3U
USARTF1_DRE_vectβ Data Register Empty πΈ- lives on: ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
USARTF1_RXC_vectβ Reception Complete π¦- lives on: ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
USARTF1_TXC_vectβ Transmission Complete β¨- lives on: ATxmega128A1, ATxmega128A1U, ATxmega64A1, ATxmega64A1U
okay now we're leaving the xmega zone entirely and sliding into the classic AVR + tiny territory, and the naming gets a lil chaotic (as it does π). buckle up.
USART_DRE_vectβ USART Data Register empty π«Ά- lives on: ATtiny102, ATtiny104
USART_RX_vectβ USART Rx Complete π₯- lives on: AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, ATA6612C, ATA6613C, ATA6614Q, ATmega165, ATmega165P, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega3250PA, ATmega328, ATmega328P, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega6490, ATmega6490A, ATmega6490P, ATmega8515, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATtiny2313, ATtiny2313A, ATtiny4313, ATtiny828
USART_RXC_vectβ USART Rx Complete π- lives on: ATmega16, ATmega16A, ATmega32, ATmega323, ATmega32A, ATmega8, ATmega8A, ATtiny102, ATtiny104
USART_RXS_vectβ USART Rx Start π- lives on: ATtiny102, ATtiny104
USART_START_vectβ USART Start Edge π- lives on: ATmega168PB, ATmega48PB, ATmega88PB, ATtiny828
USART_TX_vectβ USART Tx Complete π€- lives on: AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, ATA6612C, ATA6613C, ATA6614Q, ATmega165, ATmega165P, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega3250, ATmega3250A, ATmega3250P, ATmega328, ATmega328P, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega6450, ATmega6450A, ATmega6450P, ATmega8515, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATtiny2313, ATtiny2313A, ATtiny4313, ATtiny828
USART_TXC_vectβ USART Tx Complete π₯- lives on: ATmega16, ATmega16A, ATmega32, ATmega323, ATmega32A, ATmega8, ATmega8A, ATtiny102, ATtiny104
okay so USART_UDRE_vect shows up twice down here, and that is NOT a typo, bestie β same vector name, two totally different descriptions and two totally different device crowds. both are real. both stay. π
USART_UDRE_vectβ UART Data Register Empty π- lives on: ATmega8515
USART_UDRE_vectβ USART Data Register Empty π- lives on: AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, ATA6612C, ATA6613C, ATA6614Q, ATmega16, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega16A, ATmega32, ATmega323, ATmega3250PA, ATmega328, ATmega328P, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega32A, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega6490, ATmega6490A, ATmega6490P, ATmega8, ATmega8535, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8A, ATtiny2313, ATtiny828
and the very last one in this batch, and it's giving main character energy because it's the only USB one here π
USB0_BUSEVENT_vectβ USB0 IRQs ππ- lives on: AVR64DU28, AVR64DU32
π USB0_TRNCOMPL_vect
no cap, this is the USB0 IRQs moment β¨
Devices: AVR64DU28, AVR64DU32
π USBHost_Control_vect
this is the USB Host Controller interrupt, and she's only repping one chip π
Devices: AT90SCR100
π USBHost_Pipe_vect
the USB Host Pipe one π«Ά same solo act:
Devices: AT90SCR100
π₯ USB_BUSEVENT_vect
it's giving SOF, suspend, resume, reset bus event Interrupts, crc, Underflow, Overflow and stall Error Interrupts β literally all the bus drama in one vect π
Devices: ATxmega128A1U, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega64A1U, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3
π¦ USB_COM_vect
this is the USB Endpoint/Pipe Interrupt Communication Request β the group chat of USB interrupts fr fr π
Devices: AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATmega16U2, ATmega16U4, ATmega32U2, ATmega32U4, ATmega32U6, ATmega8U2
π USB_Endpoint_vect
USB Endpoint Related β very demure, very endpoint π
Devices: AT90SCR100
π¦ USB_GEN_vect
the USB General IRQ, the catch-all bestie β¨
Devices: AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATmega16U2, ATmega16U4, ATmega32U2, ATmega32U4, ATmega32U6, ATmega8U2
π USB_Protocol_vect
USB Protocol Related β the rules lawyer of the USB world π«Ά
Devices: AT90SCR100
π₯ USB_TRNCOMPL_vect
Transaction Complete β mission accomplished energy, we love to see it π
Devices: ATxmega128A1U, ATxmega128A3U, ATxmega128A4U, ATxmega128B1, ATxmega128B3, ATxmega128C3, ATxmega16A4U, ATxmega16C4, ATxmega192A3U, ATxmega192C3, ATxmega256A3BU, ATxmega256A3U, ATxmega256C3, ATxmega32A4U, ATxmega32C3, ATxmega32C4, ATxmega384C3, ATxmega64A1U, ATxmega64A3U, ATxmega64A4U, ATxmega64B1, ATxmega64B3, ATxmega64C3
πΈ USI_OVERFLOW_vect
USI Overflow β she overflowed, iconic behavior honestly ππ
Devices: ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATtiny2313, ATtiny2313A, ATtiny4313
πΈ USI_OVF_vect
USI Counter Overflow β same overflow, different name spelling, iykyk π
Devices: ATA5272, ATA5505, ATA6616C, ATA6617C, ATA664251, ATtiny1634, ATtiny167, ATtiny24, ATtiny24A, ATtiny25, ATtiny26, ATtiny261, ATtiny261A, ATtiny43U, ATtiny44, ATtiny44A, ATtiny45, ATtiny461, ATtiny461A, ATtiny84, ATtiny84A, ATtiny85, ATtiny861, ATtiny861A, ATtiny87
π§ USI_START_vect
USI Start Condition β the beginning of it all, main character entrance β
Devices: ATA5272, ATA5505, ATA6616C, ATA6617C, ATA664251, ATmega165, ATmega165A, ATmega165P, ATmega165PA, ATmega169, ATmega169A, ATmega169P, ATmega169PA, ATmega325, ATmega3250, ATmega3250A, ATmega3250P, ATmega3250PA, ATmega325A, ATmega325P, ATmega325PA, ATmega329, ATmega3290, ATmega3290A, ATmega3290P, ATmega3290PA, ATmega329A, ATmega329P, ATmega329PA, ATmega645, ATmega6450, ATmega6450A, ATmega6450P, ATmega645A, ATmega645P, ATmega649, ATmega6490, ATmega6490A, ATmega6490P, ATmega649A, ATmega649P, ATtiny167, ATtiny2313, ATtiny2313A, ATtiny25, ATtiny261, ATtiny261A, ATtiny4313, ATtiny43U, ATtiny45, ATtiny461, ATtiny461A, ATtiny85, ATtiny861, ATtiny861A, ATtiny87
π§ USI_STR_vect
USI Start Condition β again! (shortened spelling era) π
Devices: ATtiny1634, ATtiny24, ATtiny24A, ATtiny44, ATtiny44A, ATtiny84, ATtiny84A
π§ USI_STRT_vect
USI Start β and once more, but make it β¨abbreviatedβ¨
Devices: ATtiny26
β‘ VADC_vect
Voltage ADC Conversion Complete β the voltage girlies ate π₯
Devices: ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega32HVB, ATmega32HVBREVB, ATmega406, ATmega8HVA
β‘ VADC_ACC_vect
Voltage ADC Accumulated Conversion Complete β accumulated, like my unread messages π
Devices: ATmega64HVE, ATmega64HVE2
β‘ VADC_CONV_vect
Voltage ADC Instantaneous Conversion Complete β instant. no waiting. periodt π
Devices: ATmega64HVE, ATmega64HVE2
π¦ VLM_vect
Vcc Voltage Level Monitor β she's watching the Vcc level like it's a situationship π
Devices: ATtiny10, ATtiny102, ATtiny104, ATtiny4, ATtiny5, ATtiny9
π VMINT_vect
Voltage Monitor β yes bestie, the same vect name shows up again, that's just how it is π«Ά
Devices: ATA5795
π VMINT_vect
Voltage Monitoring β round two, slightly different wording, different chips, no notes π
Devices: ATA5790, ATA5790N
π¦ VMON_vect
Voltage Monitoring β the sequel nobody asked for but we respect it π
Devices: ATA5702M322, ATA5782, ATA5831
π VREGMON_vect
Voltage Regulator Monitor β keeping the regulator in check, the way that she just does that π
Devices: ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega32HVB, ATmega32HVBREVB, ATmega8HVA
π WAKEUP_vect
Wakeup Timer Overflow β waking up? in this economy? π
Devices: ATmega64HVE, ATmega64HVE2
π WAKE_UP_vect
Wakeup Timer Overflow β same energy, extra underscore, that's the whole difference fr fr
Devices: ATmega406
πΆ WATCHDOG_vect
Watchdog Timeout β the watchdog said "time's up bestie" π
Devices: ATtiny24, ATtiny44, ATtiny44A, ATtiny84, ATtiny84A
πΆ WDT_vect
Watchdog Timeout β the big one, the extended universe, the whole friend group is here π₯
Devices: AT90PWM1, AT90PWM161, AT90PWM2, AT90PWM216, AT90PWM2B, AT90PWM3, AT90PWM316, AT90PWM3B, AT90PWM81, AT90SCR100, AT90USB1286, AT90USB1287, AT90USB162, AT90USB646, AT90USB647, AT90USB82, ATA5272, ATA5505, ATA6612C, ATA6613C, ATA6614Q, ATA6616C, ATA6617C, ATA664251, ATmega1280, ATmega1281, ATmega1284, ATmega1284P, ATmega1284RFR2, ATmega128RFA1, ATmega128RFR2, ATmega164A, ATmega164P, ATmega164PA, ATmega168, ATmega168A, ATmega168P, ATmega168PA, ATmega168PB, ATmega16HVA, ATmega16HVA2, ATmega16HVB, ATmega16HVBREVB, ATmega16M1, ATmega16U2, ATmega16U4, ATmega2560, ATmega2561, ATmega2564RFR2, ATmega256RFR2, ATmega324A, ATmega324P, ATmega324PA, ATmega324PB, ATmega328, ATmega328P, ATmega328PB, ATmega32C1, ATmega32HVB, ATmega32HVBREVB, ATmega32M1, ATmega32U2, ATmega32U4, ATmega32U6, ATmega406, ATmega48, ATmega48A, ATmega48P, ATmega48PA, ATmega48PB, ATmega640, ATmega644, ATmega644A, ATmega644P, ATmega644PA, ATmega644RFR2, ATmega64C1, ATmega64HVE, ATmega64HVE2, ATmega64M1, ATmega64RFR2, ATmega88, ATmega88A, ATmega88P, ATmega88PA, ATmega88PB, ATmega8HVA, ATmega8U2, ATtiny10, ATtiny102, ATtiny104, ATtiny13, ATtiny13A, ATtiny1634, ATtiny167, ATtiny20, ATtiny24A, ATtiny25, ATtiny261, ATtiny261A, ATtiny4, ATtiny40, ATtiny43U, ATtiny441, ATtiny45, ATtiny461, ATtiny461A, ATtiny48, ATtiny5, ATtiny828, ATtiny841, ATtiny85, ATtiny861, ATtiny861A, ATtiny87, ATtiny88, ATtiny9
πΆ WDT_OVERFLOW_vect
Watchdog Timer Overflow β she's back and she brought a longer name this time π
Devices: ATtiny2313, ATtiny2313A, ATtiny4313
β¨ WEX0_FDFEVC_vect
WEX0 IRQs β tiny family, big vibes π¦
Devices: AVR16EB14, AVR16EB20, AVR16EB28, AVR16EB32
πΈ XCL_CC_vect
Timer/Counter Compare or Capture β the either/or queen π
Devices: ATxmega32E5, ATxmega8E5
πΈ XCL_UNF_vect
Timer/Counter Underflow β under, but make it fashion β¨
Devices: ATxmega32E5, ATxmega8E5
π XOSCFD_vect
Crystal failure detect β the crystal gave out bestie, we're devastated π
Devices: ATmega324PB
β‘ ZCD0_ZCD_vect
ZCD0 IRQs β zero-cross detection channel zero, the OG π
Devices: AVR128DA28, AVR128DA32, AVR128DA48, AVR128DA64, AVR128DB28, AVR128DB32, AVR128DB48, AVR128DB64, AVR32DA28, AVR32DA32, AVR32DA48, AVR32DB28, AVR32DB32, AVR32DB48, AVR64DA28, AVR64DA32, AVR64DA48, AVR64DA64, AVR64DB28, AVR64DB32, AVR64DB48, AVR64DB64
β‘ ZCD1_ZCD_vect
ZCD1 IRQs β channel one, smaller friend group, still iconic π«Ά
Devices: AVR128DA48, AVR128DA64, AVR128DB48, AVR128DB64, AVR32DA48, AVR32DB48, AVR64DA48, AVR64DA64, AVR64DB48, AVR64DB64
β‘ ZCD2_ZCD_vect
ZCD2 IRQs β channel two, exclusive club only π
Devices: AVR128DA64, AVR128DB48, AVR128DB64, AVR32DB48, AVR64DA64, AVR64DB48, AVR64DB64
β‘ ZCD3_ZCD_vect
ZCD3 IRQs β channel three, and check it: she's on the DD family, not the DA/DB girlies π
Devices: AVR16DD14, AVR16DD20, AVR16DD28, AVR16DD32, AVR32DD14, AVR32DD20, AVR32DD28, AVR32DD32, AVR64DD14, AVR64DD20, AVR64DD28, AVR64DD32
π Note
For the following devices, only the deprecatedSIG_names are available:AT43USB320,AT43USB355,AT76C711,AT90C8534,AT94K,M3000.
β¨ MACRO DEFINITION DOCUMENTATION β¨
okay bestie, here's the whole lineup β every macro in this header, and what it's actually doing. buckle up π
π #define BADISR_vect
#include <avr/interrupt.h>
So this one's a vector that's aliased to __vector_default β aka the vector that gets executed when an IRQ fires and there's absolutely no accompanying ISR handler like π who's gonna catch it?? Nobody. And that's the point.
You can use it alongside the ISR() macro to build yourself a catch-all for undefined-but-used ISRs, which is genuinely iconic for debugging purposes. πβ¨
π€ #define cli()
Value:
__asm__ __volatile__ ("cli" ::: "memory")
Disables all interrupts by clearing the global interrupt mask. shifting into off mode π€
Not me being obsessed with the fact that this compiles into a single line of assembly, so there's no function call overhead. However β and bestie, listen β the macro also implies a memory barrier, which can cause additional loss of optimization. π so it's giving efficient but also not, simultaneously.
If you wanna implement atomic access to multi-byte objects, please consider using the macros from<util/atomic.h>rather than doing it yourself by hand withcli()andsei(). Save yourself the pain. π«Ά
πΈ #define EMPTY_INTERRUPT( vector)
Defines an empty interrupt handler function. It will not generate any prolog or epilog code β it only returns from the ISR. literally just vibes and a return.
Do not define a function body yourself, because it will define it for you. just let it cook π₯
Example:
EMPTY_INTERRUPT(ADC_vect);
π #define ISR( vector, attributes)
Introduces an interrupt handler function (interrupt service routine) that runs with global interrupts initially disabled by default, with no attributes specified. That's the starting state. periodt.
The attributes are optional, and they alter the behaviour and the resultant generated code of the interrupt routine. Multiple attributes can be used on a single function β just separate each attribute with a space. β¨ one space, no commas, we keep it simple.
Valid attributes are ISR_BLOCK, ISR_NOBLOCK, ISR_NAKED, ISR_FLATTEN, ISR_NOICF, ISR_NOGCCISR and ISR_ALIASOF(vect). learn them, love them. π
And vector must be one of the interrupt vector names that are valid for the particular MCU type. no making things up, the MCU will know. π«
π¦ #define ISR_ALIAS( vector, target_vector)
Aliases a given vector to another one, in the same manner as the ISR_ALIASOF attribute for the ISR() macro. But here's the plot twist: unlike the ISR_ALIASOF attribute macro, this one is compatible for all versions of GCC, rather than just GCC version 4.2 onwards. so it's the flexible friend π
π¬ Note
This macro creates a trampoline function for the aliased macro. Which unfortunately results in a two cycle penalty for the aliased vector compared to the ISR the vector is aliased to, because of the JMP/RJMP opcode used. two whole cycles. gone. just like that. π
π Deprecated
For new code, the use of ISR(..., ISR_ALIASOF(...)) is recommended. iykyk.
Example:
ISR(INT0_vect)
{
PORTB = 42;
}
ISR_ALIAS(INT1_vect, INT0_vect);
π§ #define ISR_ALIASOF( target_vector)
The ISR gets linked to another ISR, specified by the vect parameter. Heads up though β this is compatible with GCC 4.2 and greater only. π
Use this attribute in the attributes parameter of the ISR macro.
Example:
ISR (INT0_vect)
{
PORTB = 42;
}
ISR (INT1_vect, ISR_ALIASOF (INT0_vect));
π #define ISR_BLOCK
Identical to an ISR with no attributes specified. Global interrupts are initially disabled by the AVR hardware when entering the ISR, without the compiler modifying this state. so nobody's touching anything, it just is what it is π§
Use this attribute in the attributes parameter of the ISR macro.
π #define ISR_FLATTEN
The compiler will try to inline all called function into the ISR. This has an effect with GCC 4.6 and newer only. π¦ everything squished in.
Use this attribute in the attributes parameter of the ISR macro.
π₯ #define ISR_NAKED
ISR is created with no prologue or epilogue code. Which means the user code β that's you, bestie β is responsible for preservation of the machine state, including the SREG register, as well as placing a reti() at the end of the interrupt routine. huge main character responsibility energy, no safety net π
Use this attribute in the attributes parameter of the ISR macro.
β οΈ Note
According to GCC documentation, the only code supported in naked functions is inline assembly. that's it. that's the whole menu.
β‘ #define ISR_NOBLOCK
ISR runs with global interrupts initially enabled. The interrupt enable flag is activated by the compiler as early as possible within the ISR, to ensure minimal processing delay for nested interrupts. speed. ποΈ
This may be used to create nested ISRs, however, bestie, care should be taken to avoid stack overflows, or to avoid infinitely entering the ISR for those cases where the AVR hardware does not clear the respective interrupt flag before entering the ISR. infinite ISR is not a vibe, it's a curse π
Use this attribute in the attributes parameter of the ISR macro.
π«§ #define ISR_NOGCCISR
Do not generate __gcc_isr pseudo instructions for this ISR. This has an effect with GCC 8 and newer only.
Use this attribute in the attributes parameter of the ISR macro.
π #define ISR_NOICF
Avoid identical-code-folding optimization against this ISR. This has an effect with GCC 5 and newer only.
Use this attribute in the attributes parameter of the ISR macro.
π #define reti()
Value:
__asm__ __volatile__ ("reti" ::: "memory")
Returns from an interrupt routine, enabling global interrupts. This should be the last command executed before leaving an ISR defined with the ISR_NAKED attribute. closing the door on your way out πͺ
This macro actually compiles into a single line of assembly, so there's no function call overhead. slay. β¨
β οΈ Note
According to the GCC documentation, the only code supported in naked functions is inline assembly.
π #define sei()
Value:
__asm__ __volatile__ ("sei" ::: "memory")
Enables interrupts by setting the global interrupt mask. wakes everything up βοΈ This one also actually compiles into a single line of assembly, so there's no function call overhead. However! The macro also implies a memory barrier, which can cause additional loss of optimization. give and take, bestie, give and take π
In order to implement atomic access to multi-byte objects, consider using the macros from<util/atomic.h>, rather than implementing them manually withcli()andsei(). seriously, they thought of it already.
π #define SIGNAL( vector)
Introduces an interrupt handler function that runs with global interrupts initially disabled.
This is the same as the ISR macro without optional attributes. literally the same thing, just the older name π
π Deprecated
Do not use SIGNAL() in new code. Use ISR() instead. okay? okay. moving on π
π«Ά AUTHOR
Generated automatically by Doxygen for AVR-LibC from the source code. yes, a robot wrote this and it absolutely ate β¨
and that's the whole page, bestie!! ππ we went through every single macro and honestly? we understood all of them. this was avr_interrupts(3avr) from AVR-LibC, Version 2.2.1 β go forth and interrupt responsibly, mwah π¦πΈ
π¦ where this page comes from
- ubuntu resolute: avr-libc 1:2.2.1-1build1 Β· BSD-3-Clause
- ubuntu stonking: avr-libc 1:2.2.1-1build1 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms