Параметры интерфейса ввода / вывода Pi 4… и где их найти

10

В аппаратной документации BCM2711 перечислены несколько вариантов интерфейса ввода / вывода. Среди других это:

  • до 6 × I2C,
  • до 6 × UART (смешанный с I2C),
  • до 6 × SPI (только пять экспонируются на Raspberry Pi 4B)

Pi 4, однако, делит распиновку своего заголовка GPIO со старшими моделями ( см. Здесь ).

Так где же находятся дополнительные последовательные интерфейсы?

Ганима
источник

Ответы:

12

Предварительный Raspberry Pi 4 Модель B техническое описание , раздел «5.1.1 GPIO Назначение контактов» , говорит:

Помимо возможности использования в качестве простого программного управления входом и выходом (с программируемыми тягами), выводы GPIO могут переключаться (мультиплексироваться) в различные другие режимы, поддерживаемые выделенными периферийными блоками, такими как I2C, UART и SPI.

В дополнение к стандартным периферийным опциям, имеющимся в устаревших Pis, в чип BCM2711 были добавлены дополнительные периферийные устройства I2C, UART и SPI, которые доступны в качестве дополнительных опций мультиплексирования на Pi4. Это дает пользователям гораздо больше гибкости при подключении дополнительного оборудования по сравнению со старыми моделями.

«Дополнительные» интерфейсы - это альтернативные функции, которые мультиплексируются в существующие выводы GPIO. Таким образом, хотя это правда, что это дает пользователю больше гибкости, использование любой из этих функций уменьшит количество доступных выводов ввода / вывода общего назначения. Альтернативные функции перечислены в разделе «5.1.2 Альтернативные функции GPIO»:

введите описание изображения здесь


Как активировать альтернативные функции: как я могу включить GPIO в его альтернативную функцию?

Ганима
источник
3
Кстати, этот тип «мультиплексирования» очень распространен на встроенных системах / процессорах. Например, микроконтроллеры почти всегда содержат больше «функций», то есть периферийных устройств, чем доступные физические выводы. Самая базовая форма позволяет разъединить вывод (ы) периферийного устройства и использовать его как GPIO. Очевидно, что каждый вывод может обслуживать только одну функцию за раз, и физическое соединение вывода с другим устройством в большинстве случаев не позволяет переключать функции способом мультиплексирования по времени.
JimmyB