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

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


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

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

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

Настройка I2C:

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

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

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

 

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

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

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

    Все мы знаем о сланцевой нефти, которая хотя и составляет достаточно незначительный процент в общем объеме добычи, но все же открывает новые возможности по работе с сырьем, использование которого раньше было нерентабельным и оказывает существенное давление на мировые цены на нефть, что даже привело к рождению термина «Сланцевая революция». Интересно, что еще в 1982 году в СССР, в окрестностях села Мордовская Кармалка был создан научно-промышленный полигон, на котором проводился эксперимент по добыче нефти из низкозалегающих твердых битумных пород. Пробурив несколько скважин, экспериментаторы через одну из них поджигали подземные пласты, а через остальные пытались выкачивать разогретый нефтепродукт.