mbed library sources
Dependents: Encrypted my_mbed lklk CyaSSL_DTLS_Cellular ... more
Superseded
This library was superseded by mbed-dev - https://os.mbed.com/users/mbed_official/code/mbed-dev/.
Development branch of the mbed library sources. This library is kept in synch with the latest changes from the mbed SDK and it is not guaranteed to work.
If you are looking for a stable and tested release, please import one of the official mbed library releases:
Import librarymbed
The official Mbed 2 C/C++ SDK provides the software platform and libraries to build your applications.
targets/hal/TARGET_Atmel/common2/services/delay/sam0/systick_counter.h
- Committer:
- mbed_official
- Date:
- 2015-07-17
- Revision:
- 592:a274ee790e56
- Parent:
- 579:53297373a894
File content as of revision 592:a274ee790e56:
#ifndef CYCLE_COUNTER_H_INCLUDED #define CYCLE_COUNTER_H_INCLUDED #include <compiler.h> #include <clock.h> #ifdef __cplusplus extern "C" { #endif /** * \name Convenience functions for busy-wait delay loops * * @{ */ /** * \brief Delay loop to delay n number of cycles * Delay program execution for at least the specified number of CPU cycles. * * \param n Number of cycles to delay */ static inline void delay_cycles( const uint32_t n) { if (n > 0) { SysTick->LOAD = n; SysTick->VAL = 0; while (!(SysTick->CTRL & SysTick_CTRL_COUNTFLAG_Msk)) { }; } } void delay_cycles_us(uint32_t n); void delay_cycles_ms(uint32_t n); /** * \brief Delay program execution for at least the specified number of microseconds. * * \param delay number of microseconds to wait */ #define cpu_delay_us(delay) delay_cycles_us(delay) /** * \brief Delay program execution for at least the specified number of milliseconds. * * \param delay number of milliseconds to wait */ #define cpu_delay_ms(delay) delay_cycles_ms(delay) /** * \brief Delay program execution for at least the specified number of seconds. * * \param delay number of seconds to wait */ #define cpu_delay_s(delay) delay_cycles_ms(1000 * delay) /** * @} */ #ifdef __cplusplus } #endif #endif /* CYCLE_COUNTER_H_INCLUDED */