Главная chevron_right Функции chevron_right Связь chevron_right SPI.setBitOrder()

SPI.setBitOrder()

Устаревшая SPI.setBitOrder() задаёт порядок передачи битов по шине SPI: с младшего (LSBFIRST) или со старшего (MSBFIRST); в новых проектах лучше указывать порядок через SPISettings.

Полная статья

Описание

setBitOrder() определяет, в каком порядке биты отправляются и принимаются по шине SPI: начиная с наименее значимого бита (LSBFIRST) или с наиболее значимого (MSBFIRST). Выбор зависит от того, какой порядок ожидает подключённое устройство — это всегда указывается в его документации.

Функция входит в состав библиотеки SPI. Подробнее — в разделе SPI.

Внимание: setBitOrder() считается устаревшей и не рекомендуется для новых проектов. Вместо неё используйте SPISettings совместно с SPI.beginTransaction() для задания всех параметров шины в одном месте.

Синтаксис

SPI.setBitOrder(order)

Параметры

  • order — порядок битов при передаче. Допустимые значения:
  • LSBFIRST — сначала передаётся младший бит;
  • MSBFIRST — сначала передаётся старший бит.

Возвращает

Ничего.

Где применяется

Порядок битов — обязательный параметр при работе с любым SPI-устройством. Большинство современных датчиков, дисплеев и микросхем памяти используют MSBFIRST, однако встречаются и исключения — например, некоторые сдвиговые регистры и старые интерфейсные микросхемы требуют LSBFIRST. Всегда сверяйтесь с datasheet конкретного компонента.

Практические замечания

  • Если порядок битов выбран неверно, данные будут приходить искажёнными: биты окажутся в зеркальном порядке, и показания датчика или команды дисплея не будут работать корректно.
  • Функцию нужно вызывать до начала передачи данных, в идеале — сразу после SPI.begin().
  • В новых скетчах передавайте порядок битов через объект SPISettings внутри SPI.beginTransaction(): это более читаемый и поддерживаемый подход, который хранит все настройки шины в одном месте.
  • Если вы работаете с несколькими SPI-устройствами с разными настройками, SPISettings и SPI.beginTransaction() особенно удобны — они позволяют переключаться между конфигурациями без риска забыть обновить отдельные параметры.