Common implementations and headers for ATmega family based micro-controllers. More...
Common implementations and headers for ATmega family based micro-controllers.
Basic definitions for the ATmega common module
When ever you want to do something hardware related, that is accessing MCUs registers directly, just include this file. It will then make sure that the MCU specific headers are included.
Definition in file atmega_common/include/cpu.h.
CPU_ATMEGA_CLK_SCALE_DIV1 = 0, CPU_ATMEGA_CLK_SCALE_DIV2 = 1, CPU_ATMEGA_CLK_SCALE_DIV4 = 2, CPU_ATMEGA_CLK_SCALE_DIV8 = 3,
CPU_ATMEGA_CLK_SCALE_DIV16 = 4, CPU_ATMEGA_CLK_SCALE_DIV32 = 5, CPU_ATMEGA_CLK_SCALE_DIV64 = 6, CPU_ATMEGA_CLK_SCALE_DIV128 = 7,
CPU_ATMEGA_CLK_SCALE_DIV256 = 8, CPU_ATMEGA_CLK_SCALE_DIV512 = 9
|ATmega system clock prescaler settings. More...|
|For downwards compatibility with old RIOT code. More...|
|static void||__enter_isr (void)|
|Flag entering of an ISR. |
|static void||__exit_isr (void)|
|Flag exiting of an ISR. |
|Initialization of the CPU. |
|static void||cpu_print_last_instruction (void)|
|Print the last instruction's address. |
|static void||atmega_set_prescaler (uint8_t clk_scale)|
|Initializes system clock prescaler. |
|Initializes avrlibc stdio. |
|Exit ISR mode and yield with a return from interrupt. More...|
Exit ISR mode and yield with a return from interrupt.
Use at the end of ISRs in place of thread_yield_higher. If thread_yield is needed, use thread_yield followed by thread_yield_isr instead of thread_yield alone.
|volatile uint8_t __in_isr|
For downwards compatibility with old RIOT code.
TODO: remove once core was adjusted global in-ISR state variable