Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of nRF51822 by
Utility Functions and Definitions
Various types and definitions available to all applications. More...
Data Structures | |
struct | uint8_array_t |
Byte array type. More... | |
Typedefs | |
typedef uint8_t | uint16_le_t [2] |
type for holding an encoded (i.e. | |
typedef uint8_t | uint32_le_t [4] |
type for holding an encoded (i.e. | |
Enumerations | |
enum | app_irq_priority_t |
The interrupt priorities available to the application while the softdevice is active. More... | |
enum | { UNIT_0_625_MS = 625, UNIT_1_25_MS = 1250, UNIT_10_MS = 10000 } |
Functions | |
static __INLINE uint8_t | uint16_encode (uint16_t value, uint8_t *p_encoded_data) |
Function for encoding a uint16 value. | |
static __INLINE uint8_t | uint32_encode (uint32_t value, uint8_t *p_encoded_data) |
Function for encoding a uint32 value. | |
static __INLINE uint16_t | uint16_decode (const uint8_t *p_encoded_data) |
Function for decoding a uint16 value. | |
static __INLINE uint32_t | uint32_decode (const uint8_t *p_encoded_data) |
Function for decoding a uint32 value. | |
static __INLINE uint8_t | current_int_priority_get (void) |
Function for finding the current interrupt level. | |
static __INLINE uint8_t | battery_level_in_percent (const uint16_t mvolts) |
Function for converting the input voltage (in milli volts) into percentage of 3.0 Volts. | |
static __INLINE bool | is_word_aligned (void *p) |
Function for checking if a pointer value is aligned to a 4 byte boundary. |
Detailed Description
Various types and definitions available to all applications.
Typedef Documentation
typedef uint8_t uint16_le_t[2] |
type for holding an encoded (i.e.
little endian) 16 bit unsigned integer.
Definition at line 69 of file app_util.h.
typedef uint8_t uint32_le_t[4] |
type for holding an encoded (i.e.
little endian) 32 bit unsigned integer.
Definition at line 72 of file app_util.h.
Enumeration Type Documentation
anonymous enum |
- Enumerator:
UNIT_0_625_MS Number of microseconds in 0.625 milliseconds.
UNIT_1_25_MS Number of microseconds in 1.25 milliseconds.
UNIT_10_MS Number of microseconds in 10 milliseconds.
Definition at line 38 of file app_util.h.
enum app_irq_priority_t |
The interrupt priorities available to the application while the softdevice is active.
Definition at line 32 of file app_util.h.
Function Documentation
static __INLINE uint8_t battery_level_in_percent | ( | const uint16_t | mvolts ) | [static] |
Function for converting the input voltage (in milli volts) into percentage of 3.0 Volts.
The calculation is based on a linearized version of the battery's discharge curve. 3.0V returns 100% battery level. The limit for power failure is 2.1V and is considered to be the lower boundary.
The discharge curve for CR2032 is non-linear. In this model it is split into 4 linear sections:
- Section 1: 3.0V - 2.9V = 100% - 42% (58% drop on 100 mV)
- Section 2: 2.9V - 2.74V = 42% - 18% (24% drop on 160 mV)
- Section 3: 2.74V - 2.44V = 18% - 6% (12% drop on 300 mV)
- Section 4: 2.44V - 2.1V = 6% - 0% (6% drop on 340 mV)
These numbers are by no means accurate. Temperature and load in the actual application is not accounted for!
- Parameters:
-
[in] mvolts The voltage in mV
- Returns:
- Battery level in percent.
Definition at line 261 of file app_util.h.
static __INLINE uint8_t current_int_priority_get | ( | void | ) | [static] |
Function for finding the current interrupt level.
- Returns:
- Current interrupt level.
- Return values:
-
APP_IRQ_PRIORITY_HIGH We are running in Application High interrupt level. APP_IRQ_PRIORITY_LOW We are running in Application Low interrupt level. APP_IRQ_PRIORITY_THREAD We are running in Thread Mode.
Definition at line 227 of file app_util.h.
static __INLINE bool is_word_aligned | ( | void * | p ) | [static] |
Function for checking if a pointer value is aligned to a 4 byte boundary.
- Parameters:
-
[in] p Pointer value to be checked.
- Returns:
- TRUE if pointer is aligned to a 4 byte boundary, FALSE otherwise.
Definition at line 299 of file app_util.h.
static __INLINE uint16_t uint16_decode | ( | const uint8_t * | p_encoded_data ) | [static] |
Function for decoding a uint16 value.
- Parameters:
-
[in] p_encoded_data Buffer where the encoded data is stored.
- Returns:
- Decoded value.
Definition at line 199 of file app_util.h.
static __INLINE uint8_t uint16_encode | ( | uint16_t | value, |
uint8_t * | p_encoded_data | ||
) | [static] |
Function for encoding a uint16 value.
- Parameters:
-
[in] value Value to be encoded. [out] p_encoded_data Buffer where the encoded data is to be written.
- Returns:
- Number of bytes written.
Definition at line 170 of file app_util.h.
static __INLINE uint32_t uint32_decode | ( | const uint8_t * | p_encoded_data ) | [static] |
Function for decoding a uint32 value.
- Parameters:
-
[in] p_encoded_data Buffer where the encoded data is stored.
- Returns:
- Decoded value.
Definition at line 211 of file app_util.h.
static __INLINE uint8_t uint32_encode | ( | uint32_t | value, |
uint8_t * | p_encoded_data | ||
) | [static] |
Function for encoding a uint32 value.
- Parameters:
-
[in] value Value to be encoded. [out] p_encoded_data Buffer where the encoded data is to be written.
- Returns:
- Number of bytes written.
Definition at line 184 of file app_util.h.
Generated on Tue Jul 12 2022 18:44:26 by
