 |
 |
 |
 |
| Name |
|
shiftOut() |
 |
|
|
| Examples |
|
int data = 0; // Wiring pin 0 for data
int clock = 1; // Wiring pin 1 for clock
int strobe = 2; // Wiring pin 2 for the strobe (latch)
byte counter = 0;
void setup() {
pinMode(data OUTPUT);
pinMode(clock, OUTPUT);
pinMode(strobe, OUTPUT);
}
void loop() {
digitalWrite(strobe, LOW);
shiftOut(data, clock, LSBFIRST, counter); // writes counter to the register
digitalWrite(strobe, HIGH);
delay(1000);
counter = counter + 1;
}
|
|
|
| Description |
|
The shiftOut() method writes a byte of data one bit at a time. It can start from the most or the least significant bit of the byte (starts from leftmost or rightmost bit). This method is very useful to manage shift registers, which are devices that convert data from serial to parallel using one pin for receiving data, one for the clock, and one for the strobe (latch). |
 |
|
|
| Syntax |
|
shiftOut(dataPin,clockPin,bitOrder,data)
|
 |
|
|
| Parameters |
|
| dataPin |
|
int: the pin used to send out the data
|
| clockPin |
|
int: the pin used as clock
|
| bitOrder |
|
MSBFIRST or LSBFIRST: the bit order to use. MSBFIRST stands for most significant bit first (leftmost bit), LSBFIRST stands for less significant bit first (rightmost bit).
|
| data |
|
byte: the byte to send out.
|
|
 |
|
|
| Returns |
|
none |
 |
|
|
| Usage |
|
Application |
 |
|
|
| Related |
|
MSBFIRST LSBFIRST |
|