Writes to a bit of a variable, e.g. bool, int, long. Note that float & double are not supported. You can write to a bit of variables up to an unsigned long (32 bits / 4 bytes).
Use the following function to freely modify the bit state on the n position of the x variable:
bitWrite(x, n, b)
The function admits the following parameters:
x: the numeric variable whose bit to modify.n: which bit of the number to write, starting at 0 for the least-significant (rightmost) bit.b: the value to write to the bit (0 or 1).The function returns nothing.
Demonstrates the use of bitWrite by printing the value of a variable to the Serial Monitor before and after the use of bitWrite().
void setup() {
Serial.begin(9600);
while (!Serial) {} // wait for serial port to connect. Needed for native USB port only
byte x = 0b10000000; // the 0b prefix indicates a binary constant
Serial.println(x, BIN); // 10000000
bitWrite(x, 0, 1); // write 1 to the least significant bit of x
Serial.println(x, BIN); // 10000001
}
void loop() {}