- Digitrode
- цифровая электроника вычислительная техника встраиваемые системы
- OLED-дисплей 0,96 дюймов и Arduino: как подключить и начать работу
- Arduino.ru
- Не могу подключить дисплей OLED 128×64 по IIC
- Как подключить OLED I2C дисплей к ARDUINO
- Шаг 1: Основные понятия
- Шаг 2: Комплектующие
- Шаг 3: Подключение дисплея
- Шаг 4: Сканер I2C
- Шаг 4: Продолжение:
- Шаг 5: Загрузка и подключение библиотек
- Шаг 6: Тестирование дисплея
- Шаг 7: Пишем свое собственное сообщение
- Не работает oled дисплей ардуино
- Кто сейчас на форуме
Digitrode
цифровая электроника вычислительная техника встраиваемые системы
OLED-дисплей 0,96 дюймов и Arduino: как подключить и начать работу
Итак, вы купили один из этих очень популярных 0,96-дюймовых OLED-дисплеев в Интернете, и у вас возникли проблемы с его работой, или вы не знаете, с чего начать.
В этом материале мы расскажем, как вы можете использовать этот OLED-дисплей с платой Arduino за несколько простых шагов.
Органический светоизлучающий диод или OLED – это светодиод (LED), в котором излучающий электролюминесцентный слой представляет собой пленку из органического соединения, которое излучает свет в ответ на электрический ток.
Благодаря такой технологии можно создавать действительно компактные дисплеи. И в этом примере мы будем использовать популярный Oled-дисплей SSD1306, который подключим к Arduino Nano.
Модель SSD1306 представляет собой монохромный 0,96-дюймовый дисплей с разрешением 128 × 64 пикселей. у него всего четыре контакта, и он взаимодействует с Arduino по протоколу связи I2C. Чтобы подключить дисплей к Arduino, нужно осуществить проводку в соответствии со следующей схемой соответствия контактов.
Теперь вам нужно загрузить библиотеку adafruit ssd1306, и для этого вы можете сделать две вещи: найдите ее на Github (https://github.com/adafruit/Adafruit_SSD1306) и загрузите ее zip-файл, а затем распакуйте его в папку библиотек (library).
Но есть более простой путь. Вы можете найти библиотеку ssd1306 в диспетчере библиотек и скачать ее оттуда. После загрузки библиотеки перезапустите Arduino IDE.
Теперь откройте пример скетча ssd1306 128×64 i2c из меню примеров adafruit ssd1306.
Загрузите этот скетч на свою плату Arduino, и ваша установка отобразит работу скетча hello world. Если ваш OLED не работает, убедитесь, что OLED-дисплей правильно подключен к Arduino, или измените адрес OLED в строке, как показано далее.
Источник
Arduino.ru
Не могу подключить дисплей OLED 128×64 по IIC
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Не могу подключить дисплей по IIC
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
точнее что не получается ,
не можете найти как подключать ?
через какую библиотеку ?
или все подключено но ничего не показывает ?
чтото кроме дисплея подключено ещё ?
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
По spi интерфейсу все нормально работает, а я пытаюсь по i2c, перепробовал все варианты подключения, методом тыка, скетч заливаю i2c scanner, пробовал и от adafruit стандартные скетчи, сканер ничего не находит, скетч от дисплея — ничего не показывает. Там на обратное стороне дисплея написано:
На фотографиях по ссылке видно.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Там на плате резисторы впаяны, они задают режим в котором он будет работать.
Если у вас работает spi- значит в данный момент времени он spi.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Спасибо, только первая ссылка не открывается.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Скажите, вам удалось заставить работать по llc этот дисплей?
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Тоже такой дисплей прислали с АлиЭкспресс, хотя заказывал с I2C-интерфесом. Но должен заметить, что этот дисплей более универсален, чем тот, что только со SPI. Изначально дисплей работает со SPI и для переключения его в режим I2C, необходимо впаять перемычки R1 и R8. Далее, подключаем:
OLED Arduino Uno
GND GND
VCC +3,3v
D0 A5
D1 A4
RES через 10k к +3,3v и 1,0 mk на GND
DC на GND, адрес 0x3C; на +3,3v, адрес 0x3D
CS на GND
Подключаем дисплей, загружаем в Ардуино скетч для I2C и наслаждаемся результатом 🙂
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Изначально дисплей работает со SPI и для переключения его в режим I2C, необходимо впаять перемычки R1 и R8.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Перемычки запаять проще — перепаивать smd резисторы, размером 0402 — тот еще гемор 🙂
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Перемычки запаять проще — перепаивать smd резисторы, размером 0402 — тот еще гемор 🙂
Ну если для вас нет разницы, чем подтягивать линии SDA и SCL к питанию, резисторани номиналом 4,7к или перемычками, то да — проще !
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Вначале так же делал: R3 переставил на R1, а на R8 поставил резистор 5,1k (какой был под рукой). Но на втором кристалле решил попробовать, как многие поступали: впаял перемычки, R3 оставил на месте и дисплей работает уже более 3 месяцев без проблем. Кстати, эти резисторы-перемычки не «подтягивают» питание — иначе, в случае с перемычками там бы было напряжение питания и сигнал бы не проходил, а являются своего рода ключами, сообщающими контроллеру в каком режиме работать. В реале, на контактах D0 и D1наблюдаются импульсы, амплитудой примерно 1,3в — от 2в до 3,3в. Как-то так.
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Запускал этот OLED по SPI, проблем не было, решил все таки запустить его и по I2C, 4 провода это не 7 проводов.
Протестировал — черт, это работает 🙂
И видео тест скеча:
Да и не забывайте вот об этом:
в библиотеке от Adafruit по умолчанию 0x3D, в моем случае 0x3C.
кста подключал все к НАНО на 5 вольт, все работает (потом присмотрелся на OLED есть DC/DC — U2)
Источник
Как подключить OLED I2C дисплей к ARDUINO
Привет! Будучи любителем — энтузиастом электроники, я уверен, что всё что мы делаем – радиоэлектронные игрушки – самоделки, или большие проекты, все это от любопытства и лени. Любопытство стремится понять и постичь необъятное, не познанное, разобраться, как оно там работает, чего делает, как двигается. А лень изобретает, чтобы такого придумать, чтобы не вставать, не подходить, не поднимать, не запачкаться или еще чего ни будь важное.
Так как видеть информацию, это лучше, чем разбираться чего там сейчас должно произойти в нашем устройстве, или уже произошло, или происходит, мы обязательно захотим получить эту самую полезную информацию от наших микроконтроллеров, датчиков, или прочих устройств. А получать, я во всяком случае, хочу какие-либо сообщения, вроде вопросов, предупреждений, напоминаний, смайликов, звездочек, сердечек и тому подобное.
Для тех, у кого тоже возникло подобное желание, — вот краткое руководство по подключению и проверке маленьких и не дорогих дисплеев OLED.
Далее речь пойдет об одной из широко доступных для радиолюбителей моделях OLED дисплеев, управляемых чипом SSD1306, с размером экрана 0,96-дюймов и разрешением 128*64 или 128*32 точки. Эти дисплеи идеально подходят для не больших радиолюбительских конструкций и самоделок.
Шаг 1: Основные понятия
Шаг 2: Комплектующие
Шаг 3: Подключение дисплея
Шаг 4: Сканер I2C
Каждое устройство на шине I2C имеет шестнадцатеричный адрес, поменять нельзя, он вшит намертво, каждый ответственный производитель должен где-то на корпусе или в инструкции указать его. Бывают модули с переключателями и перемычками, которыми можно изменить адрес, но… если устройства дешевые, до безобразия, то производитель может и не удосужиться заниматься такой мелочью, поэтому его придется определять самостоятельно.
Всего на шине может использоваться до 127 адресов — 119 для устройств и 8 адресов служебных. Общение ведется по этим адресам. Есть главный, он же Master, а есть ведомый, он же Slave, — Мастера запрашивают, ведомые отвечают, все просто.
Поскольку на нашем OLED-дисплей используется протокол связи I2C, а адрес может быть и не указан, мы сами попробуем узнать этот самый адрес.
Это можно сделать, загрузив коротенький скетч на свою плату Arduino с подключенным OLED. НО!
Не торопитесь сразу заливать скетч в Arduino! Давайте для начала загрузим «драйвера», т.е. подключим библиотеки, а для этого сразу перейдем к «Шагу №5», а затем вернемся и продолжим.
Шаг 4: Продолжение:
Шаг 5: Загрузка и подключение библиотек
Шаг 6: Тестирование дисплея
Откройте файл Adafruit_SSD1306.h в текстовом редакторе и найдите строки:
Должно получиться так:
Если снова ошибка – необходимо проверить правильность соединений.
После окончания загрузки вы увидите тестовую анимацию на экране, это означает, что вы успешно настроили свой OLED дисплей.
Когда вы вдоволь насладитесь сей анимацией, можете переходить к следующему шагу.
Шаг 7: Пишем свое собственное сообщение
Для написания собственного сообщения, сначала создадим новый скетч в среде программирования ArduinoIDE.
В заголовке мы подключаем 4 библиотеки:
Затем пишем протокол сброса:
В VOID SETUP указываем шестнадцатеричный адрес нашего дисплея 0x3C, который мы узнали на «Шаге №4».
Затем, инициализируем дисплей и очищаем его:
Далее в VOID LOOP пишем основной код, то есть наше сообщение, которое хотим отобразить на дисплее.
Для этого описываем размер текста, цвет текста, позицию курсора, и наконец, выводим сообщение с помощью команды println:
Источник
Не работает oled дисплей ардуино
Купил такой дисплей (см. OLED.jpg) тут: http://ali.onl/16Oi
Хочу подключить его к ATmega48PA, нашёл пример работы на этом же сайте https://www.radiokot.ru/articles/77/
Там пример методом ногодрыга, что меня вполне устраивает, впрочем физически он подключен у меня на макетке на выход
аппаратной шины I2C так что я могу использовать оба варианта.
Выкладываю проект (см. ATmega48P + SSD1306.zip), сделан Atmel Studio 7 + схема Proteus 8.7
Для начала, почему он не хочет работать даже в Протеусе?
Подходящая ли протеуская модель?
Правильно ли подключены выводы в модели экрана, особенно к шине?
Если надо выложить дополнительно скрины пишите, выложу.
Вложения: |
ATmega48P + SSD1306.zip [103.73 KiB] Скачиваний: 494 |
OLED.jpg [136.72 KiB] Скачиваний: 7293 |
Реклама | ||
| ||
ozonn | | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Карма: 6 |
|