theCore C++ embedded framework
|
Various routines for CM* architectures, altering execution flow. More...
#include <limits.h>
Namespaces | |
ecl | |
Functions | |
void | arch_delay (uint32_t loop_count) |
Provides a small delay. More... | |
ecl::__attribute__ ((noreturn)) static inline void abort() | |
Aborts execution of currently running code. Never return. More... | |
static void | ecl::wfi () |
Waits for interrupts. More... | |
static void | ecl::wfe () |
Waits for events. More... | |
static void | ecl::arch_spin_wait (uint32_t ms) |
Performs a dummy busy wait for specified amount of milliseconds. More... | |
Various routines for CM* architectures, altering execution flow.
void arch_delay | ( | uint32_t | loop_count | ) |
Provides a small delay.
loop_count | is the number of delay loop iterations to perform. |
This function provides a means of generating a delay by executing a simple 3 instruction cycle loop a given number of times. It is written in assembly to keep the loop instruction count consistent across tool chains.