mirror of
https://github.com/idolpx/libMeatloaf.git
synced 2025-12-06 04:38:49 -05:00
16 lines
696 B
C
16 lines
696 B
C
|
|
// Retruns a uint16 value given two bytes in high-low order
|
|
#define UINT16_FROM_HILOBYTES(high, low) ((uint16_t)high << 8 | low)
|
|
|
|
// Returns a uint16 value from the little-endian version
|
|
#define UINT16_FROM_LE_UINT16(_ui16) \
|
|
(_ui16 << 8 | _ui16 >> 8)
|
|
// Returns a uint32 value from the little-endian version
|
|
#define UINT32_FROM_LE_UINT32(_ui32) \
|
|
((_ui32 >> 24 & 0x000000FF) | (_ui32 >> 8 & 0x0000FF00) | (_ui32 << 8 & 0x00FF0000) | (_ui32 << 24 & 0xFF000000))
|
|
|
|
// Returns the high byte (MSB) of a uint16 value
|
|
#define HIBYTE_FROM_UINT16(value) ((uint8_t)((value >> 8) & 0xFF))
|
|
// Returns the low byte (LSB) of a uint16 value
|
|
#define LOBYTE_FROM_UINT16(value) ((uint8_t)(value & 0xFF))
|