Подключение экрана к ардуино по i2c. Подключение LCD дисплея к Arduino по I2C интерфейсу: пошаговая инструкция

Как подключить LCD дисплей к Arduino по I2C интерфейсу. Какие компоненты нужны для подключения LCD по I2C к Arduino. Как настроить I2C для работы с LCD дисплеем на Arduino. Как написать скетч для вывода информации на LCD по I2C.

Содержание

Что такое I2C интерфейс и зачем он нужен для подключения LCD

I2C (Inter-Integrated Circuit) — это последовательный протокол передачи данных, который позволяет подключать различные устройства к микроконтроллеру, используя всего 2 провода:

  • SDA — линия данных
  • SCL — линия тактирования

Основные преимущества использования I2C для подключения LCD дисплея к Arduino:

  • Требуется всего 2 провода вместо 6-8 при обычном подключении
  • Можно подключить несколько устройств на одну шину I2C
  • Простота подключения и программирования

Таким образом, I2C позволяет значительно упростить подключение LCD дисплея к Arduino и сэкономить контакты микроконтроллера для других целей.

Необходимые компоненты для подключения LCD по I2C

Для подключения LCD дисплея к Arduino по интерфейсу I2C нам понадобятся следующие компоненты:

  • Arduino (любая модель)
  • LCD дисплей 16×2 или 20×4
  • I2C модуль расширения для LCD
  • Соединительные провода
  • Макетная плата (опционально)

I2C модуль расширения представляет собой небольшую плату, которая преобразует параллельный интерфейс LCD в последовательный I2C. Он подключается непосредственно к выводам LCD дисплея.

Схема подключения LCD дисплея к Arduino по I2C

Схема подключения LCD дисплея к Arduino по интерфейсу I2C очень простая:

  • VCC модуля I2C -> 5V Arduino
  • GND модуля I2C -> GND Arduino
  • SDA модуля I2C -> A4 Arduino (SDA)
  • SCL модуля I2C -> A5 Arduino (SCL)

Обратите внимание, что на некоторых моделях Arduino (например, Mega) выводы SDA и SCL могут иметь другое расположение. Уточните это в документации для вашей платы.

Настройка I2C адреса LCD модуля

Каждое устройство на шине I2C должно иметь свой уникальный адрес. Для LCD модуля этот адрес обычно составляет 0x27 или 0x3F. Чтобы определить правильный адрес, можно использовать специальный скетч для сканирования I2C устройств:

«`cpp #include void setup() { Wire.begin(); Serial.begin(9600); Serial.println(«\nI2C Scanner»); } void loop() { byte error, address; int nDevices; Serial.println(«Scanning…»); nDevices = 0; for(address = 1; address < 127; address++ ) { Wire.beginTransmission(address); error = Wire.endTransmission(); if (error == 0) { Serial.print("I2C device found at address 0x"); if (address < 16) Serial.print("0"); Serial.print(address, HEX); Serial.println(" !"); nDevices++; } else if (error == 4) { Serial.print("Unknown error at address 0x"); if (address < 16) Serial.print("0"); Serial.println(address, HEX); } } if (nDevices == 0) Serial.println("No I2C devices found\n"); else Serial.println("done\n"); delay(5000); } ```

Загрузите этот скетч на Arduino и откройте монитор порта. Вы увидите адрес подключенного LCD модуля.

Установка библиотеки LiquidCrystal_I2C

Для работы с LCD дисплеем по I2C потребуется установить библиотеку LiquidCrystal_I2C. Сделать это можно через менеджер библиотек Arduino IDE:

  1. Откройте Arduino IDE
  2. Перейдите в меню Скетч -> Подключить библиотеку -> Управлять библиотеками
  3. В поиске введите «LiquidCrystal I2C»
  4. Найдите библиотеку от Frank de Brabander и нажмите «Установить»

Базовый скетч для вывода текста на LCD по I2C

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

«`cpp #include #include LiquidCrystal_I2C lcd(0x27, 16, 2); // Задаем адрес 0x27 для дисплея 16 символов в 2 строки void setup() { lcd.init(); lcd.backlight(); // Включаем подсветку lcd.setCursor(0,0); // Устанавливаем курсор в начало первой строки lcd.print(«Hello, World!»); // Выводим текст lcd.setCursor(0,1); // Устанавливаем курсор в начало второй строки lcd.print(«I2C LCD Tutorial»); // Выводим еще текст } void loop() { // Здесь можно добавить другой код } «`

Этот скетч инициализирует LCD дисплей и выводит приветственный текст. Обратите внимание на создание объекта lcd с указанием I2C адреса и размеров дисплея.

Дополнительные возможности работы с LCD по I2C

Библиотека LiquidCrystal_I2C предоставляет множество полезных функций для работы с дисплеем:

  • lcd.clear() — очистить экран
  • lcd.setCursor(col, row) — установить курсор
  • lcd.print(«text») — вывести текст
  • lcd.noBacklight() — выключить подсветку
  • lcd.createChar() — создать пользовательский символ

Вот пример более сложного скетча с использованием этих функций:

«`cpp #include #include
LiquidCrystal_I2C lcd(0x27, 16, 2); byte customChar[8] = { 0b00100, 0b01010, 0b10001, 0b10001, 0b10001, 0b01010, 0b00100, 0b00000 }; void setup() { lcd.init(); lcd.backlight(); lcd.createChar(0, customChar); lcd.setCursor(0,0); lcd.print(«Custom char: «); lcd.write(0); lcd.setCursor(0,1); lcd.print(«Count: «); } void loop() { static int count = 0; lcd.setCursor(7,1); lcd.print(count); count++; delay(1000); } «`

Этот скетч демонстрирует создание пользовательского символа, его вывод на экран, а также обновление счетчика в режиме реального времени.

Часто задаваемые вопросы по подключению LCD по I2C

Вот ответы на некоторые распространенные вопросы о подключении LCD дисплея к Arduino по интерфейсу I2C:

Почему не работает подсветка дисплея?

Убедитесь, что вы вызвали метод lcd.backlight() в setup(). Также проверьте правильность подключения VCC и GND.

Как изменить контрастность дисплея?

На I2C модуле обычно есть потенциометр для регулировки контрастности. Аккуратно поверните его отверткой.

Можно ли подключить несколько LCD дисплеев по I2C?

Да, но для этого потребуются модули с разными I2C адресами. Некоторые модули позволяют изменить адрес с помощью перемычек.

Какое максимальное расстояние для подключения LCD по I2C?

Рекомендуемая длина проводов для I2C — не более 1 метра. При больших расстояниях могут возникнуть проблемы с передачей данных.

Заключение

Подключение LCD дисплея к Arduino по интерфейсу I2C значительно упрощает процесс работы с этим популярным компонентом. Использование всего двух проводов вместо 6-8 экономит контакты микроконтроллера и упрощает монтаж. С помощью библиотеки LiquidCrystal_I2C можно легко управлять дисплеем и выводить на него различную информацию.

Надеюсь, эта статья помогла вам разобраться с подключением LCD по I2C к Arduino. Если у вас остались вопросы, не стесняйтесь задавать их в комментариях!


Подключение LCD дисплея 2004 к плате Ардуино

28 июля 2022

Модуль LCD дисплея 2004 с модулем I2C. Данный жидко кристаллический дисплей 2004 имеет 20 символов в каждом рядке, рядков у него соответственно 4. Конечно, есть и другие размеры дисплеев, ознакомиться с ассортиментом ЖК дисплеев можете, перейдя по этой ссылке.

Данный модуль, распространенный в использовании, радиолюбители и разработчики зачастую используют именно его. Конечно, его основными преимуществами является то что он:

  • Недорогой;
  • Простой в подключении;
  • Достаточно функциональный;

Как и на большинство дисплеев, можно выводить различные значение такие как, текстовые, графические, цифровые, изображение. Передача значений по шине I2C просто и понятна даже детям.

Шина I2C это последовательная шина данных, которая служит для связи между интегральными схемами определенного прибора, в нашем случае жидко кристаллического дисплея. Её ещё называют как интерфейсная шина. IIC или I2C (в некоторых документациях пишут по разному), значительно упрощает подключение любого электрического прибора к которому подключена, в нашем случае это подключение ЖК-дисплея. Купить дисплей со встроенным модулем I2C, Вы можете в интернет-магазине RoboStore по самой низкой цене. 

0

Подключение любого дисплея с модулем I2C, достаточно простое, и требует подключить 4 контакта. Размер дисплея при подключении не имеет значения будь то 2004 либо 1602.

LCD

Arduino

GND

GND

VCC

5V

SDA

A4

SCL

A5

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

Нам необходимо скачать библиотеку LCD, использование готовых библиотек гораздо упрощает написания кода.

Скачать библиотеку для дисплеев

Пример программы для вывода текста, можно скачать тут:

Пример программы LCD с платой Arduino

Видео роботы данного скетча:

 

Все необходимое вы можете приобрести в нашем – интернет-магазине RoboStore.

Поделиться

Поделится

Поделится

Новый комментарий

Войти с помощью

Отправить

Arduino lcd i2c в категории «Телекоммуникации и связь»

SunFounder IIC I2C TWI Serial 2004 20 x 4 Pantalla LCD совместимый с Arduino R3 Mega2560

Заканчивается

Доставка по Украине

по 342 грн

от 2 продавцов

342 грн

380 грн

Купить

LCD 1602 для Arduino, ЖК дисплей c зеленой подсветкой с впаянным i2c модулем

На складе в г. Умань

Доставка по Украине

110 грн

Купить

I2C модуль LCD дисплея 1602, 2004 на PCF8574AT, Arduino

Доставка по Украине

23 грн

Купить

LCD модуль интерфейса I2C IIC SPI для экрана 1602 Arduino

На складе в г. Вознесенск

Доставка по Украине

35 грн

Купить

Вознесенск

I2C модуль LCD дисплея 1602, 2004 на PCF8574AT, Arduino

Доставка по Украине

23 грн

Купить

I2C модуль LCD дисплея 1602, 2004 на PCF8574AT, Arduino

Доставка по Украине

113 грн

Купить

Камера VGA OV7670, SCCB, I2C, IIC, модуль Arduino on

Доставка по Украине

199.58 грн

259.20 грн

Купить

OLED дисплей графический SSD1306 I2C 4p 0.96″ 128×64 Arduino, сине-желтый on

Доставка по Украине

263.78 грн

342.57 грн

Купить

OLED дисплей графический SSD1306 I2C 0.91″ 128×32 Arduino AVR STM32 on

Доставка по Украине

187. 91 грн

244.04 грн

Купить

Камера VGA OV7670, SCCB, I2C, IIC, модуль Arduino oo

Доставка по Украине

196.91 грн

255.73 грн

Купить

OLED дисплей графический SSD1306 I2C 4p 0.96″ 128×64 Arduino, сине-желтый oo

Доставка по Украине

261 грн

338.96 грн

Купить

OLED дисплей графический SSD1306 I2C 0.91″ 128×32 Arduino AVR STM32 oo

Доставка по Украине

185.26 грн

240.60 грн

Купить

Адаптер для LCD1602 по I2C Arduino AVR PIC [#G-9]

На складе в г. Запорожье

Доставка по Украине

38 грн

Купить

Запорожье

0.91″ белый OLED LCD дисплей 128х32, I2C, модуль для Arduino

Доставка по Украине

123.50 грн

Купить

LCD 2004 для Arduino, ЖК дисплей, 20х4 (без i2c модуля)

На складе в г. Умань

Доставка по Украине

200 грн

Купить

Смотрите также

Перехідник для LCD HD44780 IIC I2C Arduino AVR PIC

Доставка по Украине

80. 90 грн

Купить

Дисплей LCD 1602 + модуль I2C/IIC быстрого подключения

На складе в г. Вознесенск

Доставка по Украине

110 грн

Купить

Вознесенск

Модуль I2C для подключения LCD1602/2004 дисплея Arduino

Доставка из г. Днепр

41.70 грн

Купить

LCD дисплей 1602A 16×2 с I2C переходником, синяя подсветка ЖК Arduino дисплей

На складе

Доставка по Украине

200 грн

Купить

Модуль 128 X 64 OLED LCD экран 0.96 » I2C IIC SPI

Доставка из г. Днепр

по 123.2 грн

от 2 продавцов

123.20 грн

Купить

ЖК LCD 1602 16х2 модуль с припаянным i2c модулем — синий дисплей

Доставка по Украине

169.99 грн

Купить

PCF8574 Преобразователь I2C интерфейса в LCD16

Доставка по Украине

по 55 грн

от 2 продавцов

55 грн

Купить

Модуль IIC I2C SPI інтерфейсу, для LCD 1602

На складе в г. Николаев

Доставка по Украине

78 грн

98 грн

Купить

Николаев

Адаптер для LCD1602 модуль для Arduino I2C AVR PIC

На складе в г. Николаев

Доставка по Украине

32 грн

Купить

Николаев

Камера VGA OV7670, SCCB, I2C, IIC, модуль Arduino lt

Доставка по Украине

204.89 грн

266.09 грн

Купить

OLED дисплей графический SSD1306 I2C 0.91″ 128×32 Arduino AVR STM32 lt

Доставка по Украине

193.25 грн

250.98 грн

Купить

OLED дисплей графический SSD1306 I2C 4p 0.96″ 128×64 Arduino, сине-желтый lt

Доставка по Украине

268.92 грн

349.25 грн

Купить

Adafruit I2C 16×2 LCD дисплей с клавиатурой для Raspberry Pi

На складе в г. Днепр

Доставка по Украине

690 грн

Купить

OLED дисплей графический SSD1306 I2C 0. 96» 128×64 Arduino, сине-желтый

На складе

Доставка по Украине

190 — 322 грн

от 14 продавцов

227 грн

303 грн

Купить

Project 1 — взаимодействие 16*2 LCD с Arduino с использованием I2C Protocol

Исполнительные программы

Семинары

Проекты

Блоги

Careers

. US

Академическое повышение квалификации


Все курсы

Выберите категорию

Загрузка…

Все курсы

Все курсы


Интерфейс ЖК-дисплея I2C 16×2 с Arduino Uno В этой статье я собираюсь подключить ЖК-дисплей I2C 16×2 к Arduino Uno. В моей предыдущей статье обсуждалось взаимодействие ЖК-дисплея 16×2 с Arduino Uno. Разница в количестве проводов. Там нам нужно больше 12 проводов. Но здесь используйте только 4 провода. Как ?!!!!!! Прежде чем я…

Детали проекта

Загрузка…

Оставить комментарий

Спасибо, что решили оставить комментарий. Пожалуйста, имейте в виду, что все комментарии модерируются в соответствии с нашей политикой комментариев, и ваш адрес электронной почты не будет опубликован по соображениям конфиденциальности. Пожалуйста, оставьте личный и содержательный разговор.

Пожалуйста, войдите, чтобы добавить комментарий

Другие комментарии…

Комментариев пока нет!
Будьте первым, кто оставит комментарий

Подробнее Проекты Манохара Милкури (27)

Проект 1. Взаимодействие ЖК-дисплея 16*2 с Arduino с использованием протокола I2C

Задача:

Интерфейс ЖК-дисплея I2C 16×2 с Arduino Uno статья Я собираюсь подключить ЖК-дисплей 16×2 I2C к Arduino Uno. В моей предыдущей статье обсуждалось взаимодействие ЖК-дисплея 16×2 с Arduino Uno. Разница в количестве проводов. Там нам нужно больше 12 проводов. Но здесь используйте только 4 провода. Как ?!!!!!! Прежде чем я…

27 нояб. 2022 г. 10:51 IST

Подробнее

Проект 1. Взаимодействие ЖК-дисплея 16*2 с Arduino с использованием протокола I2C

Цель:

Интерфейс ЖК-дисплея I2C 16×2 с Arduino Uno интерфейс 16×2 I2C LCD с Arduino Uno. В моей предыдущей статье обсуждалось взаимодействие ЖК-дисплея 16×2 с Arduino Uno. Разница в количестве проводов. Там нам нужно больше 12 проводов. Но здесь используйте только 4 провода. Как ?!!!!!! До…

25 нояб. 2022 г. 05:53 IST

Подробнее

Проект 2. Измерение расстояния до объекта с помощью ультразвукового датчика, а также сглаживание данных датчика с помощью фильтра скользящего среднего

Цель:

Автор Измерение расстояния с помощью Arduino и ультразвука Датчик Ультразвуковые датчики — отличные инструменты для измерения расстояния и обнаружения объектов без фактического контакта с физическим миром. Он используется в нескольких приложениях, например, при измерении уровня жидкости, проверке приближения и, что еще более популярно, в…

23 ноября 2022 г. 12:02 IST

Подробнее

Проект 2 Адаптивный круиз-контроль

Цель:

  Проект адаптивного круиз-контроля Цель: разработать функцию адаптивного круиз-контроля в соответствии с документом требований с использованием MATLAB Simulink. Отслеживание всех процессов, связанных с MBD, таких как маркировка и отслеживание требований, создание SLDD, изменение параметров конфигурации, проверка Model Advisor и генерация кода. Адаптивный…

14 окт. 2022 05:52 IST 9

Проект 1 (Мини-проект по обнаружению направления транспортного средства) Ввод рулевого колеса в виде скорости рыскания (название сигнала: SteeringWheel_YawDegreeInput) является входом для этой системы. Он сравнивается с 3 угловыми значениями, по одному для поворота влево, поворота вправо и прямо…   Цель: Чтобы…

11 Oct 2022 12:51 PM IST

  • MATLAB
  • MBD

Read more

Project 2 — V&V SW Analysis II

Objective:

06 Oct 2022 02:39 AM IST

Read more

Проект 2 — Измерение расстояния до объекта с помощью ультразвукового датчика (HC-SR04)

Цель:

    Проект_2 ЦЕЛЬ: В этом проекте реализация кода для «Измерение расстояния до объекта с помощью ультразвукового датчика расстояния (HC-SR04) КОД: /* Project_2_Distance_Ultrasonic.c** Создано: 14 апреля 22 11:29:12 AM* Автор: Kannaiah */ #define F_CPU 8000000UL#include #include #include #include #include #define LCD_Data_Dir…

27 сент. 2022 05:43 IST

Подробнее

Проект 1 — Управление двигателем постоянного тока использование ШИМ и контроль его рабочего состояния

Задача:

    Проект 1: ЦЕЛЬ: Внедрить систему на симуляторе для управления двигателем постоянного тока с использованием драйвера двигателя L293, контролировать его состояние и выводить рабочее состояние двигателя на ЖК-дисплей. КОД: #include  //мы используем регистры ввода-вывода AVR#define F_CPU 16000000L // определяем частоту кристалла#include «avr/interrupt.h» //…

24 сентября 2022 г. 06:29 IST

Подробнее

Проект 1 — Анализ программного обеспечения V&V — I

Задача:

  if(владелец долго нажимает кнопку питания) { открыть логотип компании в центре; } else if(клиент нажал кнопку питания) { открыть приложения в сетке; } else if(владелец включил телефон) { показывает значок телефона на первой позиции внизу; } else if(владелец включает телефон) { показывает значок словаря на второй позиции внизу;…

23 сентября 2022 г. , 10:32 IST

Подробнее

Проект 2 Тепловое моделирование аккумуляторной батареи

Цель:

ЦЕЛЬ:- Изучить тепловое моделирование аккумуляторной батареи с помощью MATLAB и SIMULINK. ЦЕЛИ:-                      1) Для модели литий-ионного аккумулятора из 10 элементов смоделировать тепловые эффекты и сравнить характеристики жизненного цикла при различных температурах, скоростях заряда и разряда с помощью MATLAB. это будет основано…

23 сент. 2022 06:03 IST

  • MATLAB

Подробнее

Проект 2. Реализация кода для управления уборкой и выпуском шасси самолета

Цель:

#include #include h>typedef enum{ Gear_down_state, checking_before_take_off_delay_3s_state, raising_gear_state, gear_up_state, checking_before_landing_state, dowering_gear_state,}…

21 Sep 2022 10:40 AMT

.0003

Орган:

Read more

Project 2 — Implement the Code for controlling the retraction and extension of Airplane’s landing gear

Objective:

#include#includetypedef enum{     Gear_Down_State,     Checking_before_Take_off_Delay_3s_State,     Raising_Gear_State, Gear_Up_State,     Checking_before_landing_State,     Lowering_Gear_State,}…

08 сент. 2022 10:13 IST

Подробнее

Проект-1: Моделирование электромобиля с литий-ионным аккумулятором

Цель:

Задача: Создать модель электромобиля в MATLAB с литий-ионным аккумулятором и подходящий мотор. Выберите подходящие блоки из набора блоков Simscape или Powertrain. Реализуйте управление скоростью транспортного средства с помощью ПИ-регулятора и сгенерируйте команды торможения и акселератора. Избегайте использования готового драйверного блока для управления скоростью. …

26 июля 2022 06:54 IST

  • HTML
  • MATLAB

Подробнее

Окончательный проект: Моделирование электрической рикши транспортное средство) в соответствии с приведенными ниже подробностями: Задние колеса приводятся в движение двигателем щеточного типа с постоянными магнитами. Предположим, что точки эффективности контроллера двигателя и двигателя Создайте лист Excel со всеми входными и предполагаемыми данными. Результаты:…

21 июля 2022 г. 06:13 IST

  • MATLAB

Читать дальше

Проект 1 Механическая конструкция аккумуляторной батареи

Цель:

ЦЕЛЬ: Емкость аккумуляторной батареи: 18 кВт·ч Ячейка: ANR26650M1-B Подготовьте подробный чертеж аккумуляторной батареи вместе с ее корпусом. AIM: Технические характеристики ANR26650M1-B Номинальные характеристики Напряжение: 3,3 В Емкость: 2,5 Ач Энергия: 8,25 Втч Удельная мощность: 2600 Вт/кг Полное сопротивление (типовое значение 1 кГц переменного тока) 6 мОм Срок службы при 1C/1C, 100%…

30 июня 2022 г. 02:39AM IST

  • Дизайн
  • HEV

Подробнее

неделя 7 Оценка заряда

Цель:

Как смоделировать модель проекта BMS в Simulink? Литий-ионные аккумуляторные батареи широко используются в качестве системы накопления энергии в электромобилях. Система управления батареями (BMS) отвечает за безопасную работу, производительность и…

23 июня 2022 г. 14:20 IST

  • MATLAB

Подробнее

Окончательный проект: Дизайн электромобиля

Цель:

ЦЕЛЬ: Создать электромобиль, использующий батарею и двигатель постоянного тока. выберите подходящий блок из набора блоков трансмиссии   ОБЪЕКТЫ: Чтобы подготовить отчет о технической модели модели транспортного средства ev, включая:        1. Конфигурации системного уровня        2. Параметры модели        3. Результаты        4. Заключение   ТЕОРИЯ:   Какие компоненты…

13 июня 2022 г. 04:00 AM IST

  • MATLAB

Подробнее

Неделя 1 Понимание различных химических элементов аккумуляторов

Цель:

Обеспечение энергоэффективности следующего поколения Ряд активных материалов катода Targray, в том числе наши никель-марганцево-кобальтовые (NMC 622, NMC 811, NMC 532), литий-марганцевые Формулы шпинели (LMO) и литий-никель-марганцевой шпинели (LNMO) использовались американской Аргоннской национальной лабораторией для достижения… самолеты на взлетно-посадочной полосе

Цель:

  Часть A: 1. Найдите и перечислите общий вес различных типов самолетов. 2. Есть ли разница между скоростью по земле и скоростью по воздуху? 3. Почему не рекомендуется использовать мощность двигателя самолета для его перемещения по земле в аэропорту? 4. Как самолет выталкивается на взлетно-посадочную полосу, когда он готов к взлету?…

03 июня 2022 04:22 IST

  • FEA
  • HTML
  • MATLAB

3

3 Project

Задача:

Данный объект: Провести системную симуляцию вездехода. И подготовьте технический отчет с объяснением свойств модели и комментариями к результатам. SIMSCAPE модели модели Bajaj ATV модели Bajaj ATV Модели модели модели модели моделирования выходных вводов

02 июня 2022 г. 11:30 AM IST

Читать больше

неделя-11 Задача: торможение

Объектива:

Объекты: для определенного вождений, цикл, вождении, воротный цикл. рассчитать энергию, необходимую для торможения. Почему электродвигатель не может развить тормозной момент на высокой скорости, аналогичный пусковому? Как согласуются электрические и механические тормоза? Создайте программу MATLAB, которая строит контур заданных значений скорости, крутящего момента и эффективности двигателя. Прикрепите…

02 июня 2022 г. 11:08 IST

  • MATLAB

Подробнее

Задача 7-й недели: управление двигателем постоянного тока

Цель:

Команда TJ HBridge показывает моделирование H-моста, используемого для генерации прерываемого напряжения и управления скоростью двигателя постоянного тока. Gilbert Sybille (Hydro-Quebec)     Описание Транзистор с биполярным переходом (BJT) при использовании в приложениях переключения питания работает…

28 мая 2022 г. 04:48 IST

Подробнее

Задача 6-й недели: трансмиссия электромобиля

Цель:

Поставленные задачи: 1. Какие типы схем преобразователя мощности используются в электрических и гибридных электромобилях? 2. Силовой агрегат электромобиля с аккумуляторной батареей 72 В показан на диаграмме ниже. Коэффициент заполнения для операции разгона равен «d1», а для операции торможения коэффициент заполнения равен…

25 мая 2022 г. 07:02 IST

  • HTML
  • ПРЕОБРАЗОВАТЕЛЬ МОЩНОСТИ

Подробнее

Week-4 Challenge WOT Condition Part-2

Цель:

В чем разница между картографической и динамической моделью двигателя, двигателя и генератора? Как изменить тип модели? Как модель рассчитывает мили на галлон? Какие факторы учитываются при моделировании расхода топлива? Запустите HEV ReferenceApplication с ездовым циклом WOT. Изменить уклон и скорость ветра в окружающей среде…

23 мая 2022 г. 06:21 IST

Подробнее

Неделя-3 Задача: Инструмент ADVISOR

Цель:

  ЦЕЛЬ: ИСПОЛЬЗОВАТЬ ИНСТРУМЕНТ ADVISER ДЛЯ МОДЕЛИРОВАНИЯ   Цель: 1.    Для файла EV_defaults_in, если масса груза составляет 500 кг со всеми остальными условиями по умолчанию, может ли проезд автомобиля на 45 км с ездовым циклом FTP? Завершите свои наблюдения. 2. В приведенном выше случае попробуйте изменить емкость аккумулятора и…

20 мая 2022 г. 07:19 IST

Подробнее

Неделя – 4

Цель:

ЦЕЛЬ: Реализовать логику управления «стиральной машиной» с помощью Stateflow в соответствии с заданной последовательностью: Если источник питания доступен, система активируется. Если подача воды недоступна, остановите процесс и укажите с помощью светодиода Время замачивания должно быть 200 с, затем следует время стирки 100 с. Затем…

11 мая 2022 г. 15:18 IST

Подробнее

Показаны 1 из 27 проектов

Попробуйте наши лучшие инженерные курсы, проекты и семинары уже сегодня!Закажите живую демонстрацию

Интерфейс ЖК-дисплея I2C с ESP32

В этом проекте мы узнаем, как подключить ЖК-дисплей PCF8574 I2C к макетной плате ESP32. Мы увидим, как настроить контакты I 2 C в ESP32, загрузим необходимые библиотеки для Arduino IDE, поймем, как работает ЖК-интерфейс ESP32 I2C, и отобразим некоторые данные на ЖК-дисплее 16×2.

Если вы хотите подключить ЖК-дисплей I2C к плате ESP8266 NodeMCU, я сделал для этого отдельный учебник. Проверьте это.

Outline

Введение

Существует множество устройств отображения, таких как OLED-дисплей, графический дисплей 128×64, дисплей Nokia 5110 и т. д. Но для отображения простого текста и чисел нам нужен только символьный дисплей 16×2 или 20×4.

Основным недостатком ЖК-дисплея 16×2 является то, что для правильной работы требуется как минимум 6 контактов GPIO микроконтроллера. Это даже не 8-битный режим, а сокращенный 4-битный режим (добавьте еще 4 контакта GPIO для 8-битного режима).

Использование такого количества контактов микроконтроллера только для простого символьного ЖК-дисплея нежелательно, особенно если вы разрабатываете проект с большим количеством датчиков и устройств, подключенных к микроконтроллеру.

ЖК-модуль PCF8574 I2C предназначен для преодоления этого недостатка.

Краткое примечание о ЖК-модуле PCF8574 I2C

Как следует из названия, ЖК-модуль PCF8574 I2C представляет собой модуль на основе микросхемы PCF8574, предназначенный для преобразования обычных ЖК-дисплеев 16×2 (или 20×4) символов в символы I 2 Устройства на основе C, то есть вместо использования 8-битного или 4-битного параллельного интерфейса для отправки данных мы можем использовать шину C I 2 для отправки данных на дисплей.

Если вы обратите внимание на схему платы и контакты этого ЖК-модуля I2C, вы увидите, что это модифицированная версия обычного модуля расширения ввода-вывода, который также основан на микросхеме PCF8574.

Этот ЖК-модуль I2C включает в себя POT для регулировки контрастности ЖК-дисплея и подтягивающие резисторы для линий SDA и SCL. Таким образом, вам не нужны дополнительные подключения.

Просто подключите ЖК-модуль I2C к задней панели ЖК-дисплея 16×2 и установите соединение между микроконтроллером и ЖК-модулем I2C. Вот и все.

ЖК-интерфейс ESP32 I2C

Первое, что нам нужно выяснить для работы ЖК-интерфейса ESP32 I2C, — это контакты I 2 C ESP32. Если вы помните, в учебнике по распиновке ESP32 я упомянул, что микроконтроллер ESP32 имеет два I 2 Интерфейсы C и любой вывод GPIO можно настроить для использования в качестве вывода I2C.

Но после использования всех контактов GPIO для различных целей, таких как SPI, UART, ADC и т. д., GPIO 22 и GPIO 21 свободны (без каких-либо важных альтернативных функций). Итак, в этом проекте мы будем использовать GPIO 22 в качестве SCL и GPIO 21 в качестве SDA интерфейса I 2 C.

Еще один важный момент, на который стоит обратить внимание, это то, что ЖК-дисплей 16×2 работает на стандартных уровнях напряжения TTL, то есть от 4,7 В до 5,3 В. Мы не можем подать 3,3 В как VCC на ЖК-модуль I2C, хотя микросхема PCF8574 работает при этом напряжении.

Итак, помня об этом, в следующей таблице показаны все соединения между ЖК-модулем I2C и ESP32

ЖК-модуль PCF8574 I2C

Комплект разработчика ESP32
Земля

ЗЕМЛЯ

ВКЦ

ВИН
ПДД

GPIO 21 (D21)

СКЛ

GPIO 22 (D22)

Как видно из таблицы, VCC ЖК-модуля I2C подключен к контакту VIN платы разработки ESP32. Он подключается к источнику питания USB, когда ESP32 получает питание через USB. Таким образом, мы получим около 5 В на этом выводе.

Необходимые компоненты

  • Плата разработки ESP32 DevKit
  • 16×2 символьный ЖК-дисплей
  • PCF8574 ЖК-модуль I2C
  • Макет
  • Соединительные провода
  • Кабель микро-USB

Принципиальная схема

На следующем изображении показана принципиальная схема для демонстрации ЖК-интерфейса ESP32 I2C.

Подготовка Arduino IDE

Для работы с ЖК-модулем I2C необходимо загрузить одну библиотеку под названием «LiquidCrystal_I2C». Если вы уже установили эту библиотеку, вы можете пропустить этот шаг. Если нет, то следуйте дальше. Откройте IDE Arduino и откройте диспетчер библиотек, выбрав «Инструменты» -> «Управление библиотеками». . .

Когда откроется окно диспетчера библиотек, найдите «liquidcrystal i2c» и установите библиотеку «LiquidCrystal I2C» Франка де Брабандера. Существуют и другие библиотеки для I2C LCD. Вы также можете попробовать их.

Закройте менеджер библиотеки. Выполните все необходимые подключения в соответствии со схемой и подключите плату ESP32 к компьютеру. В Arduino IDE выберите правильную плату (модуль ESP32 Dev), а также правильный COM-порт.

Поиск адреса ведомого модуля ЖК-дисплея I2C

Поскольку мы работаем с интерфейсом I 2 C, адрес ведомого устройства является одной из важных вещей, о которых нам нужно знать. Здесь микроконтроллер ESP32 является ведущим, а ЖК-модуль PCF8574 I2C — подчиненным.

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

На самом деле мы использовали тот же код с Arduino и ESP8266 для других I 2 Связанные проекты. После выполнения всех необходимых подключений между ESP32 и ЖК-модулем I2C загрузите следующий код и откройте последовательный монитор Arduino IDE.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *