Схема для одновременного использования интерфейсов I2C и SPI в микроконтроллерах PIC

ON Semiconductor 2N7000 BSS138

Журнал РАДИОЛОЦМАН, февраль 2019

Soumitra Bhattacharjee

EDN

В микроконтроллерах PIC последовательные шины I2C и SPI мультиплексно делят одни и те же выводы модуля MSSP (master synchronous serial port). Никаких проблем при использовании ни одного, ни другого интерфейса обычно не возникает. Но что, если одновременно понадобятся оба периферийных устройства одного микроконтроллера?

Описанная ниже схема была разработана для портативного прибора, использующего 28-выводной микроконтроллер PIC от Microchip Technology. На плате прибора были установлены часы реального времени, EEPROM и ЖК-индикатор с интерфейсом I2C, а также цифровой потенциометр и карта памяти microSD с интерфейсом SPI.

Эта схема позволяет использовать шины SPI и I2C на одних и тех же выводах периферийного порта.
Рисунок 1. Эта схема позволяет использовать шины SPI и I2C на одних и тех же выводах
периферийного порта.

Схема на Рисунке 1 позволяет без существенного увеличения числа компонентов использовать шины SPI и I2C, задействовав два дополнительных вывода GPIO и добавив всего четыре MOSFET. Использованные нами MOSFET являются легкодоступными N-канальными приборами с логическими уровнями управления. Например, хорошо подходят транзисторы 2N7000 и BSS138, выпускаемые ON Semiconductor. Варианты схемы с обоими MOSFET были проверены и продемонстрировали надежную работу.

По командам микроконтроллера, в соответствии с выбранным периферийным устройством, эти MOSFET коммутируют мультиплексированные выводы SCK/SCL и SDA/SDI. Программа микроконтроллера до инициализации соответствующей шины включает требуемую периферию путем установки высокого уровня на одном выводе GPIO и низкого на другом.

Реальное устройство в работе; интерфейсные шины переключаются автоматически. Реальное устройство в работе; интерфейсные шины переключаются автоматически.
Рисунок 2. Реальное устройство в работе; интерфейсные шины переключаются
автоматически.

Схема очень проста: стоки MOSFET соединены с выводами микропроцессора, за исключением транзистора FET-DI (MOSI), у которого к микроконтроллеру подключен исток. К истокам MOSFET со стороны шины I2C необходимо подключить подтягивающие резисторы.

Материалы по теме

  1. Datasheet ON Semiconductor 2N7000
  2. Datasheet ON Semiconductor BSS138

Перевод: AlexAAN по заказу РадиоЛоцман

На английском языке: A circuit to use PIC peripheral outputs simultaneously

Цена 2N70002N7000 на РадиоЛоцман.Цены — от 1,48 до 15,00 руб.
46 предложений от 26 поставщиков
Транзистор полевой N-канальный (60В, 0.2A, 0.4Вт)
ПоставщикПроизводительНаименованиеЦена
Стандарт СИЗON Semiconductor2N70001,48 руб.
Электродеталь- ПоставкаUnisonic Technologies2N7000L-T92-R TO-921,56 руб.
ЭИКFairchild2N7000_D26Zот 2,43 руб.
LifeElectronicsFairchild2N7000DICTпо запросу
Для комментирования материалов с сайта и получения полного доступа к нашему форуму Вам необходимо зарегистрироваться.
Имя