Описание функции shiftOut
Выводит последовательно 8 бит информации (1 байт) в порт ввода/вывода. Выводить можно как с левого (старшего) бита, так и с правого (младшего) бита. Каждый бит последовательно выставляется на порту ввода/вывода dataPin, после чего на порт ввода/вывода clockPin устанавливается сигнал, “говорящий” о доступности к считыванию бита.
Синтаксис
shiftOut(dataPin, clockPin, bitOrder, value
Параметры
- dataPin – контакт платы Ардуино, на который выводятся биты.
- clockPin – контакт для синхронизации.
- bitOrder – параметр определяет, с какого бита начинается передача:
LSBFIRST– с левого (старшего) бита;MSBFIRST– с правого (младшего) бита.
- value – один байт (8 бит) информации, которые необходимо передать.
Что возвращает
Ничего
Код функции shiftOut
(hardware/arduino/avr/cores/arduino/wiring_shift.c 1.8.10)
void shiftOut(uint8_t dataPin, uint8_t clockPin, uint8_t bitOrder, uint8_t val)
{
uint8_t i;
for (i = 0; i < 8; i++) {
if (bitOrder == LSBFIRST)
digitalWrite(dataPin, !!(val & (1 << i)));
else
digitalWrite(dataPin, !!(val & (1 << (7 - i))));
digitalWrite(clockPin, HIGH);
digitalWrite(clockPin, LOW);
}
}



