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 nrf51-sdk 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 | { UNIT_0_625_MS = 625, UNIT_1_25_MS = 1250, UNIT_10_MS = 10000 } |
Functions | |
static __INLINE uint64_t | value_rescale (uint32_t value, uint32_t old_unit_reversal, uint16_t new_unit_reversal) |
Function for changing the value unit. | |
static __INLINE uint8_t | uint16_encode (uint16_t value, uint8_t *p_encoded_data) |
Function for encoding a uint16 value. | |
static __INLINE uint8_t | uint24_encode (uint32_t value, uint8_t *p_encoded_data) |
Function for encoding a three-byte 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 | uint24_decode (const uint8_t *p_encoded_data) |
Function for decoding a three-byte value. | |
static __INLINE uint32_t | uint32_decode (const uint8_t *p_encoded_data) |
Function for decoding a uint32 value. | |
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 const *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 117 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 120 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 49 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 290 of file app_util.h.
static __INLINE bool is_word_aligned | ( | void const * | 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 328 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 237 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 193 of file app_util.h.
static __INLINE uint32_t uint24_decode | ( | const uint8_t * | p_encoded_data ) | [static] |
Function for decoding a three-byte value.
- Parameters:
-
[in] p_encoded_data Buffer where the encoded data is stored.
- Returns:
- Decoded value (uint32_t).
Definition at line 249 of file app_util.h.
static __INLINE uint8_t uint24_encode | ( | uint32_t | value, |
uint8_t * | p_encoded_data | ||
) | [static] |
Function for encoding a three-byte 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 207 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 262 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 222 of file app_util.h.
static __INLINE uint64_t value_rescale | ( | uint32_t | value, |
uint32_t | old_unit_reversal, | ||
uint16_t | new_unit_reversal | ||
) | [static] |
Function for changing the value unit.
- Parameters:
-
[in] value Value to be rescaled. [in] old_unit_reversal Reversal of the incoming unit. [in] new_unit_reversal Reversal of the desired unit.
- Returns:
- Number of bytes written.
Definition at line 181 of file app_util.h.
Generated on Tue Jul 12 2022 14:11:21 by
