Дискретные входы-выходы для STM32 на I2C-расширителе PCF8574

В случае, если в системе на базе микроконтроллера STM32F4XX не хватает GPIO-выводов для организации достаточного количества дискретных входов-выходов или есть необходимость организовать «длинную руку» в рамках многоплатной системы, на помощь придет I2C-расширитель портов ввода-вывода.


Подключение двух микросхем I2C-расширителей PCF8574DW к 100-выводному STM32F407 показано на рисунке ниже.

В желтом прямоугольнике справа — стандартная схема включения STM32F407 (МК + цепи тактирования, сброса и подключения ST-Link), в сером прямоугольнике слева — подключение к I2C двух расширителей PCF8574. Расширители могут работать как на вход, так и на выход, управляются программно.

Пример программы, в которой DD2 настраивается на ввод, а DD3 на вывод, показан ниже.

Настройка I2C:

Вывод байта в DD3:

Ввод байта от DD2:

Пример использования в основной программе:

 

Закладка Постоянная ссылка.

Добавить комментарий

  • Несколько случайная, но довольно любопытная информация:

    Проект «Чаган» — попытка мирного использования энергии термоядерного взрыва. 15 января 1965 года советские физики взорвали термоядерный заряд мощностью 170 килотонн, заложенный на глубину 178 м. Взрывом выбросило 10,3 млн тонн грунта, воронку с оплавленными стенками, оставшуюся после взрыва (названную озером Атом-Коль), планировалось использовать в качестве буферного мелиоративного накопителя при пересыханиях ближайшей реки Чаган. К сожалению (или к счастью — уровень радиации в озере до сих пор очень высок, и вода непригодна ни для питья, ни для орошения), река ушла, найдя себе новое русло, в настоящее время Казахстан внёс Чаган и Атом-Коль в список мест, особо сильно пострадавших от ядерных испытаний.