Loading...
Searching...
No Matches
Bits and bytes

Reading and setting bits, splitting and joining bytes. More...

Macros

#define lowByte(w)
 The low (rightmost) byte of a value.
#define highByte(w)
 The second-lowest byte of a value (bits 8-15).
#define bitRead(value, bit)
 Reads bit number bit (0 = rightmost) of a value: 0 or 1.
#define bitSet(value, bit)
 Sets bit number bit of a variable to 1.
#define bitClear(value, bit)
 Sets bit number bit of a variable to 0.
#define bitToggle(value, bit)
 Flips bit number bit of a variable.
#define bitWrite(value, bit, bitvalue)
 Sets bit number bit of a variable to bitvalue (0 or 1).
#define bit(b)
 The value of bit number b: 1, 2, 4, 8, ...
#define word(...)
 Same as makeWord().

Functions

uint16_t makeWord (uint16_t w)
 Returns w as a 16-bit word.
uint16_t makeWord (byte h, byte l)
 Joins two bytes into a 16-bit word.

Detailed Description

Reading and setting bits, splitting and joining bytes.

Macro Definition Documentation

◆ bit

#define bit ( b)
Value:
(1UL << (b))

The value of bit number b: 1, 2, 4, 8, ...

◆ bitClear

#define bitClear ( value,
bit )
Value:
((value) &= ~(1UL << (bit)))
#define bit(b)
The value of bit number b: 1, 2, 4, 8, ...
Definition Common.h:92

Sets bit number bit of a variable to 0.

◆ bitRead

#define bitRead ( value,
bit )
Value:
(((value) >> (bit)) & 0x01)

Reads bit number bit (0 = rightmost) of a value: 0 or 1.

◆ bitSet

#define bitSet ( value,
bit )
Value:
((value) |= (1UL << (bit)))

Sets bit number bit of a variable to 1.

◆ bitToggle

#define bitToggle ( value,
bit )
Value:
((value) ^= (1UL << (bit)))

Flips bit number bit of a variable.

◆ bitWrite

#define bitWrite ( value,
bit,
bitvalue )
Value:
((bitvalue) ? bitSet((value), (bit)) : bitClear((value), (bit)))
#define bitSet(value, bit)
Sets bit number bit of a variable to 1.
Definition Common.h:86
#define bitClear(value, bit)
Sets bit number bit of a variable to 0.
Definition Common.h:87

Sets bit number bit of a variable to bitvalue (0 or 1).

◆ highByte

#define highByte ( w)
Value:
((uint8_t) ((w) >> 8))

The second-lowest byte of a value (bits 8-15).

◆ lowByte

#define lowByte ( w)
Value:
((uint8_t) ((w) & 0xff))

The low (rightmost) byte of a value.

◆ word

#define word ( ...)
Value:
makeWord(__VA_ARGS__)
uint16_t makeWord(uint16_t w)
Returns w as a 16-bit word.

Same as makeWord().

Function Documentation

◆ makeWord() [1/2]

uint16_t makeWord ( byte h,
byte l )

Joins two bytes into a 16-bit word.

Parameters
hHigh byte.
lLow byte.
Returns
h * 256 + l.

◆ makeWord() [2/2]

uint16_t makeWord ( uint16_t w)

Returns w as a 16-bit word.

Parameters
wValue.
Returns
w.