Оглавление:
- Шаг 1: Подключение ЖК-дисплея
- Шаг 2: Подключение кнопок ввода
- Шаг 3: ЖК-эскиз
- Шаг 4: Как это работает
- Шаг 5: техническое описание
Видео: ЖК-дисплей DIY I2C со входами: 6 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Типичный параллельный ЖК-дисплей, используемый с Arduino (16x2 или 20x4), имеет 16 контактов. На Arduino требуется только 6 контактов ввода / вывода, но что, если бы вы могли сократить это количество до двух контактов ввода / вывода, и по-прежнему иметь эти контакты для других устройств?
Интерфейс I2C находится на контактах A4 и A5 Arduino UNO. Они адресные и, следовательно, могут использоваться другими устройствами I2C, имеющими другие адреса. Теперь вы можете купить ЖК-дисплеи I2C и даже найти ЖК-дисплеи I2C с разными адресами, но обычно это двухстрочные ЖК-дисплеи с фиксированными адресами. Я собираюсь показать вам, как создать свой собственный интерфейс I2C, выбрать один из 8 адресов и даже добавить до 8 входов или выходов, используя микросхему расширения MCP23017 на 16 портов. Это тот же самый чип, который использует Adafruit. их I2C LCD Keypad Shield, и использует свою библиотеку для общения с ним. Вы даже можете иметь до 16 ЖК-дисплеев или до 128 цифровых контактов ввода / вывода и их комбинации.
MCP23017
ЖК-дисплей 20x4 или ЖК-дисплей 16x2
Шаг 1: Подключение ЖК-дисплея
На фотографии показаны соединения между параллельным ЖК-дисплеем типа Hitachi (2 или 4 строки) и MCP23017.
SDA (вывод 13 на MCP23017) подключается к Arduino A4, а SCL (вывод 12) подключается к Arduino A5. Некоторые предлагают подтягивающие резисторы на 4,7 кОм (вывод 13 на + 5 В и вывод 12 на + 5 В), но этот проект отлично работает без них.
Обратите внимание на резистор 220 Ом на разъеме k (катод, земля) ЖК-дисплея. Это ОБЯЗАТЕЛЬНО!
Без него можно взорвать штырь подсветки MCP23107. Есть 3 контакта, которые можно использовать для подсветки. Контакт 1 называется СИНИМ в Библиотеке и Эскизе, контакт 28 называется ЗЕЛЕНЫМ, а контакт 27 - КРАСНЫМ. Если у вас монохромный ЖК-дисплей, вы можете использовать любой из трех контактов и использовать соответствующие цветные обозначения. Если у вас есть подсветка RGB, вы можете получить множество комбинаций цветов. Ознакомьтесь с ними на
Контакты 15, 16 и 17 на MCP23017 определяют адрес I2C. У нас все 3 заземлены, так как это адрес по умолчанию, который использует библиотека Adafruit. Чтобы добавить несколько дисплеев или выбрать другой адрес, необходимо изменить библиотеку, поэтому пока мы будем использовать значение по умолчанию.
Adafruit_MCP23017.h содержит следующую строку:
#define MCP23017_ADDRESS 0x20
Контакт 17 = A2, контакт 16 = A1 и контакт 15 = A0
0 = земля, 1 = + 5В
Формат адреса - 0100A2A1A0, поэтому, поскольку мы заземлили все 3 линии, мы используем двоичное 0100000 или 20 в шестнадцатеричном формате (0x20). 0100111 будет 27 в шестнадцатеричном формате (0x27).
Шаг 2: Подключение кнопок ввода
Мы включаем в этот проект 5 кнопок ввода. Мы будем называть их «Влево», «Вправо», «Вверх», «Вниз» и «Выбрать». Стандартные кнопки идеально подходят для этого, но подойдет любой цифровой датчик включения / выключения.
Подключите кнопки следующим образом:
Слева соединяется между Gnd и контактом 25 MCP23017.
Право подключается между Gnd и контактом 22
Up соединяет Gnd и контакт 24
Вниз подключается между Gnd и контактом 23
Выберите соединение между Gnd и контактом 21
Шаг 3: ЖК-эскиз
Загрузите и установите библиотеку Adafruit, запустите пример «Hello World», и этот ЖК-интерфейс станет работоспособным. Мы использовали вывод 27 на MCP23017, поэтому указывайте КРАСНЫЙ только для монохромной подсветки.
Мы обратимся к редактированию адреса библиотеки, чтобы в будущем можно было использовать до 8 микросхем MCP23017. Напишите мне с вопросами.
Чтобы узнать о других проектах, в которых используется этот чип и дополнительный код, см.:
arduinotronics.blogspot.com/2015/11/wifi-rechargeable-internet-clock.html
arduinotronics.blogspot.com/2015/10/add-up-to-128-inputsoutputs-or-mix-to.html
Шаг 4: Как это работает
Вот проект, который мы создали с использованием версии этого проекта для Adafruit. Версия DIY имеет такую же проводку, но у вас может быть монохромная версия вместо подсветки RGB.
Шаг 5: техническое описание
Полная таблица доступна на
Рекомендуемые:
Реле I2C с IDE Arduino: 5 шагов
I2C Relay встретил Arduino IDE: я заказываю хорошую релейную плату, но не было инструкции ArduinoIDE, только Raspberry Pi e.o. Я узнаю, как использовать его с Arduino, и хочу поделиться им, чтобы вы могли сэкономить время. Исходный пример RaspberryPi: wiki.52pi.com/index.php/DockerPi_4_Channel_R
Монитор температуры с ЖК-дисплеем DHT11 и I2C 20x4: 6 шагов
Монитор температуры с ЖК-дисплеем DHT11 и I2C 20x4: В этом уроке мы узнаем, как сделать простой монитор температуры с помощью датчика DHT11 и ЖК-дисплея I2C. Посмотрите видео
Soundplant + 2 неизолированные платы = цифровой инструмент с 24 входами: 7 шагов
Soundplant + 2 неизолированные платы = цифровой прибор с 24 входами: Этот проект представляет собой документацию для рабочего проекта, выполняемого мной в CEISMC (Центр образования, объединяющего естественные науки, математику и вычислительную технику). CEISMC - это образовательное отделение Технологического института Джорджии в Атланте, штат Джорджия. Я участвую в программе " GoS
Символьный ЖК-адаптер I2c (пример подключения I2c): 12 шагов (с изображениями)
Символьный ЖК-адаптер I2c (пример подключения I2c): я создаю схему подключения для символьного адаптера i2c. Проверяю обновления на моем сайте. Теперь я добавляю также схему подключения проводов, чтобы использовать исходную библиотеку, а не мою вилку. для символьных ЖК-дисплеев, разветвленного проектора
Пассивный стереомикшер с 3 входами: 4 шага
Пассивный стереомикшер с 3 входами: это руководство покажет вам, как создать простой стереомикшер. Хотя в этой коробке всего 3 стереовхода, вы можете легко обновить ее до необходимого количества! Я хотел построить этот блок для подключения нескольких аудиовходов к одному выходу. Я