Запуск 7-контактного OLED-дисплея с 4 контактами (I2C)

У меня есть OLED-дисплей с такой 7-контактной распиновкой:

My OLED

Я хочу использовать существующий код, который я нашел, который использует U8Glib. Но в приведенном примере use использует 4 контакта для управления OLED через I2C. Вот распиновка, которую он использует:

Pinout

Можно ли управлять моим OLED-дисплеем через 4 контакта и использовать U8Glib для упрощения моего проекта, используя пример кода, который я нашел?

РЕДАКТИРОВАТЬ: Вот также изображение задней части печатной платы OLED, в котором упоминается, как использовать IIC, но я этого не понимаю! back of pcb

, 👍1

Обсуждение

Похоже, это может быть интерфейс SPI, а не I2C, так что нет. Ты не можешь., @Majenko

Если, конечно, у U8Glib нет примера SPI для этой платы. Я полагаю, это SSD1306? Таковы большинство небольших OLED-дисплеев..., @Majenko

Выглядит настраиваемым для I2C / 3-проводного SPI / 4-проводного SPI в зависимости от наличия / отсутствия R1-R4., @djones


4 ответа


Лучший ответ:

2

На этой странице есть ответы на ваши вопросы. Для справки:

Настройка соединения SPI / I2C с OLED-модулем GMS096A

Будучи новичком на рынке, на этот маленький кусочек чуда (GMS096A) доступны только ограниченные ресурсы. Конфигурация I2C / SPI всегда требует полезных ресурсов, как и в любом другом случае. Для настройки SPI модуль по умолчанию поставляется в 4-проводной конфигурации SPI, и чтобы заставить его работать с ардуино, вы можете использовать эти библиотеки из Adafruit.

Для настройки I2C требуется немного поработать над модулем. На самом деле, один из наших клиентов поделился с нами этими простыми шагами настройки: начните с перепайки резистора из положения R3 в положение R1, а затем закоротите резистор R8 небольшим количеством олова для припоя (резистор 0 Ом). Подтягивающие резисторы R6 и R7 уже припаяны, там делать нечего. После этого модуль готов к I2C -коммуникации! Вывод CS не обязательно нужен, поэтому просто подключите его к GND. Вывод постоянного тока выбирает адрес. Для получения стандартного адреса подключите его к GND. Вывод RES-pin нуждается в низком импульсе при запуске и высоком напряжении во время работы (как в режиме SPI), конденсатор 100nF для GND и 10k res для VCC были бы идеальными!

Ваш модуль может сильно отличаться. Но вы должны быть в состоянии понять это оттуда. Мне потребовалось некоторое время, чтобы выяснить импульс на выводе RES, необходимый при запуске!

,

1

Это интерфейс SPI. Часто CS отсутствует, но у вас, похоже, есть этот контакт. Я предлагаю начать с программного PCI-режима U8Glib.

Это лучшее объяснение, которое я могу найти: Github: OLED на базе SSD1306, подключенный к Arduino

Не могли бы вы рассмотреть возможность использования более новой библиотеки U8g2?
Его проще использовать с платами Arduino, которые имеют больше памяти. Но он также имеет тот же режим для низкого использования памяти, что и U8Glib.

,

0

Можно ли управлять моим OLED-дисплеем через 4 контакта и использовать U8Glib для упрощения моего проекта, используя пример кода, который я нашел?

я уверен, что где-то есть мост i2c-> spi. если нет, вы всегда можете запрограммировать свой arduino так, чтобы он вел себя как один.

короче говоря, вы можете просто закодировать управление платой через spi.

,

2

Да, это работает IIC, как описано выше, с моим Arduino MEGA. Вы также можете подключить первый вывод по сигналу сброса Arduino, поэтому нет необходимости в дополнительных компонентах R и C.

,