0 голосов

Пытаюсь объединить несколько I²C модулей в одном устройстве на базе WiFi Slot. Когда добавляю четвертый I²C модуль, дисплей перестает отображать информацию.

То есть, Текстовый дисплей 16×2 (Troyka-модуль) становится невидим когда например:

Последний вариант я собственно и пытаюсь собрать.

Проверяю адреса подключенных I²C модулей с помощью скетча i2cdetect из одноименной библиотеки Arduino IDE. Все адреса разные. Адрес дисплея (0x3E) появляется только если кроме него есть еще только один или два каких-нибудь адреса.

(6 баллов) 1 2
Какой код используете? Как подключаете?Адрес slot Expander'ам задавали?
Три slot Expander'а, барометр и метеодатчик работают вместе.
Плата при работе не зависает?
Питания хватает?

2 Ответы

0 голосов
Вроде бы перекрытия по адресам нет, если вы не дали slot Expander'ам адреса 93,92,62 и т.д. в десятичной системе иссечения.

Возможно проблемы со всей шиной т.к. сопротивление подтягивающих резисторов может оказаться слишком мало при параллельном подключении. Они стоят на каждом модуле и на wifi slot. Их номинал варьируется от 1.6кОм до 4.7кОм.

При параллельном подключении четырёх модулей общее сопротивление между контактом sda или scl и питанием будет около 1кОм.

Также может быть превышена максимальная ёмкость шины 400пф, хотя это мало вероятно если провода короткие или их нет вообще.
(3.1 тыс. баллов) 14 20 41
исправил
0 голосов

Спасибо всем откликнувшимся.

Я пробовал разные варианты конфигураций. В любом случае слоты расширений подключались к управляющему слоту WiFi винтовыми соединениями комплектных слот коннекторов. Модули I²C подключались в разные разъемы с пометкой DC (их по одному на слот расширения и два на управляющем модуле).

i2cdetect находил следующие адреса:

  • Slot Expander 1: 51 (0x33)
  • Slot Expander 2: 52 (0x34)
  • Slot Expander 3: 53 (0x35)
  • Метеодатчик: 68 (0x44)
  • Барометр Troyka-модуль: 92 (0x5С)
  • Дисплей 16x2 Troyka-модуль: 62 (0x3E) появлялся только если адресов (включая дисплей) было от одного до трех.

В идеале хотел собрать компактный блок из слота WiFi и одного довеска расширения. Получилось найти нужный поворот платы расширения чтобы подключить места:

  1. Дисплей I²C (3 квадрата)
  2. ~ накрыто дисплеем ~
  3. ~ накрыто дисплеем ~
  4. Кардридер SPI (квадрат)
  5. Метеосенсор I²C (квадрат)
  6. Барометр I²C (квадрат)
  7. 3D-джойстик (квадрат)
  8. Свободное место (квадрат)

Питание: по микро-USB от компьютера при прошивке и мониторинге порта. Так же пробовал запитать от розетки тем же шнуром к блоку питания от iPad.

(6 баллов) 1 2
У меня этот дисплей не уживается с часами troyka-rtc (будильник). Причём поработает- поработает, может день, может 3 дня, иногда несколько часов - после портится выводимая информация и блокируется выполнение. Пока не разбирался. При подключении "классического" LCD дисплея с кучей проводов - всё работало отлично.
Добро пожаловать на Бредборд! Сайт вопросов и ответов на тему Arduino, Raspberry Pi и хоббийной электроники в целом. Цель Бредборда — быть максимально полезным. Поэтому мы строго следим за соблюдением правил, боремся с холиворами и оффтопиком.

    За этот месяц ещё никого.

    ...