Basic Library
Digital I/O
Analog I/O
Advanced I/O
Time
Math
Trigonometry
Random Numbers
Bits and Bytes
Interrupts
Serial Comm.
Standard Library
Servo Motor
Stepping Motor
Character LCD
EEPROM
SPI
I2C (Wire)
SD Card
SD (File Operations)
Ethernet
Ethernet (Server)
Ethernet (Client)
Firmata
Periodic Operation
Power Save
Clock (RTC)
SoftwareSerial
Utility
Bits and Bytes
This library is for extracting the byte of a variable and accessing a bit of a number etc.
lowByte
- Description
- Extracts the low-order (rightmost) byte of a variable.
- Syntax
- lowByte(x)
- Parameters
- x: A value of any type
- Returns
- Byte (unsigned char)
highByte
- Description
- Extracts the high-order (leftmost) byte of a word (or the second lowest byte of a larger data type).
- Syntax
- highByte(x)
- Parameters
- x: A value of any type
- Returns
- Byte (unsigned char)
bitRead
- Description
- Reads a bit of a number.
- Syntax
- bitRead(x, n)
- Parameters
- x: The number from which to read
n: Which bit to read, starting at 0 for the least-significant (rightmost) bit - Returns
- The value of the bit (0 or 1).
bitWrite
- Description
- Writes a bit of a numeric variable.
- Syntax
- bitWrite(x, n, b)
- Parameters
- x: The numeric variable to which to write
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) - Returns
- None
bitSet
- Description
- Sets (writes a 1 to) a bit of a numeric variable.
- Syntax
- bitSet(x, n)
- Parameters
- x: The numeric variable whose bit to set
n: Which bit to set, starting at 0 for the least-significant (rightmost) bit - Returns
- None
bitClear
- Description
- Clears (writes a 0 to) a bit of a numeric variable.
- Syntax
- bitClear(x, n)
- Parameters
- x: The numeric variable whose bit to clear
n: Which bit to clear, starting at 0 for the least-significant (rightmost) bit - Returns
- None
bit
- Description
- Computes the value of the specified bit (bit 0 is 1, bit 1 is 2, bit 2 is 4, etc.).
- Syntax
- bit(n)
- Parameters
- n: The bit whose value to compute
- Returns
- The value of the bit
Example
Byte control.
#include <Arduino.h>
void setup(){
Serial.begin(9600);
uint16_t original_data = 0b1111000010100101;
Serial.println("BIN");
Serial.print("original:\t");
Serial.println(original_data, BIN);
Serial.print("lowByte:\t");
Serial.println(lowByte(original_data), BIN);
Serial.print("highByte:\t");
Serial.println(highByte(original_data), BIN);
Serial.println("HEX");
Serial.print("original:\t");
Serial.println(original_data, HEX);
Serial.print("lowByte:\t");
Serial.println(lowByte(original_data), HEX);
Serial.print("highByte:\t");
Serial.println(highByte(original_data), HEX);
}
void loop(){
}