Как прошить дисплей nextion
Используйте дисплеи Nextion для создания визуального интерфейса с сенсорным управлением. Набросайте кнопки, регуляторы и индикаторы в наглядном редакторе, добавьте фоновые картинки, залейте прошивку на сенсорный экран — и ваш интерфейс мечты готов. Графика и сценарии работы обрабатываются собственным процессором устройства, высвобождая вычислительные ресурсы управляющей электроники для других задач.
Дисплеи Nextion — это не просто цветные сенсорные экраны, а полноценная универсальная система человеко-машинного интерфейса (Human-Machine Interface, HMI), которую можно подружить с любой управляющей платформой.
Все прелести Nextion мы расписали в отдельной статье «Чем HMI-дисплей отличается от простого экрана».
В качестве тестового дисплея Nextion возьмём модель NX4832K035.
Видеообзор
Список дисплеев Nextion
Линейка HMI-дисплеев Nextion включает в себя четыре семейства:
Основные отличия
Basic | Discovery | Enhanced | Intelligent | |
---|---|---|---|---|
Процессор | 48 МГц | 64 МГц | 48 / 108 МГц | 200 МГц |
ЖК-Матрица | TN | TN | TN | IPS |
Диагональ | 2,4–7,0” | 2,4–3,5” | 2,4–7,0” | 4,3–10,1” |
Flash-память | 4 / 16 МБ | 4 / 16 МБ | 16 / 32 МБ | 128 МБ |
RAM-память | 3,5 КБ | 3,5 КБ | 3,5 / 8 КБ | 512 КБ |
EEPROM-память | Нет | Нет | 1 КБ | 1 КБ |
Порты GPIO | Нет | Нет | 8 | 8 |
Часы реального времени | Нет | Нет | Да | Да |
Анимация | Нет | Нет | Нет | Да |
Прозрачность | Нет | Нет | Нет | Да |
Аудио и видео | Нет | Нет | Нет | Да |
Семейство Nextion Discovery
Модель | Диагональ | Разрешение | Тачскрин | Процессор | Flash |
---|---|---|---|---|---|
NX3224F024 / Документация | 2,4” | 320×240 | Резистивный | 64 МГц | 4 МБ |
NX3224F028 / Документация | 2,8” | 320×240 | Резистивный | 64 МГц | 4 МБ |
NX4832F035 / Документация | 3,5” | 480×320 | Резистивный | 64 МГц | 16 МБ |
Семейство Nextion Enhanced
Модель | Диагональ | Разрешение | Тачскрин | Процессор | Flash |
---|---|---|---|---|---|
NX3224K024 / Документация | 2,4” | 320×240 | Резистивный | 48 МГц | 16 МБ |
NX3224K028 / Документация | 2,8” | 320×240 | Резистивный | 48 МГц | 16 МБ |
NX4024K032 / Документация | 3,2” | 400×240 | Резистивный | 48 МГц | 16 МБ |
NX4832K035 / Документация | 3,5” | 480×320 | Резистивный | 108 МГц | 32 МБ |
NX4827K043 / Документация | 4,3” | 480×272 | Резистивный | 108 МГц | 32 МБ |
NX8048K050 / Документация | 5,0” | 800×480 | Резистивный | 108 МГц | 32 МБ |
NX8048K070 / Документация | 7,0” | 800×480 | Резистивный | 108 МГц | 32 МБ |
Семейство Nextion Intelligent
Модель | Диагональ | Разрешение | Тачскрин | Процессор | Flash |
---|---|---|---|---|---|
NX4827P043-011C / Документация | 4,3” | 480×272 | Ёмкостный | 200 МГц | 128 МБ |
NX4827P043-011C-Y/ Документация | 4,3” | 480×272 | Ёмкостный | 200 МГц | 128 МБ |
NX8048P050-011C / Документация | 5,0” | 800×480 | Ёмкостный | 200 МГц | 128 МБ |
NX8048P050-011C-Y/ Документация | 5,0” | 800×480 | Ёмкостный | 200 МГц | 128 МБ |
NX8048P070-011C / Документация | 7,0” | 800×480 | Ёмкостный | 200 МГц | 128 МБ |
NX8048P070-011C-Y/ Документация | 7,0” | 800×480 | Ёмкостный | 200 МГц | 128 МБ |
NX8048P070-011C-I / Документация | 10,1” | 1024×600 | Ёмкостный | 200 МГц | 128 МБ |
Комплектация
В комплектации каждого дисплейного модуля Nextion входит четырёхпроводной шлейф и переходник питания по USB.
Четырёхпроводной шлейф
Четырёхпроводной шлейф служит для подключения дисплея к питанию и внешнему контроллеру. С одной стороны шлейфа расположен разъём JST PH-4 для подключения к дисплею, а с другой — четыре свободных провода с коннекторами «мама» для подключения питания и данных.
Цвет провода | Обозначение | Описание | Подключение |
---|---|---|---|
Красный | +5V | Питание дисплея | Подключите к питанию 5 В. |
Синий | TXD | Линия передачи данных интерфейса UART | Подключите к пину RX внешнего микроконтроллера. |
Жёлтый | RXD | Линия приёма данных интерфейса UART | Подключите к пину TX внешнего микроконтроллера. |
Чёрный | GND | Общая земля | Подключите к земле. |
Если штатный шлейф утерялся, воспользуйтесь ближайшим аналогом в нашем магазине.
Переходник питания по USB
Адаптер питания USB служит для включения и использования дисплея без внешнего контроллера.
Разъём / Контакт | Подключение |
---|---|
PLS + | Подключите к красному проводу четырёхпроводного шлейфа. |
PLS − | Подключите к чёрному проводу четырёхпроводного шлейфа. |
Micro-USB | Подключите к заряднику 5 В через кабель USB. |
Питание дисплея
Дисплейные модули Nextion питаются напряжением строго от 5 вольт. А потребляемый ток зависит уже от конкретной модели дисплея. В качестве примера возьмём дисплей Nextion Enhanced NX4832K035.
Доступные варианты подключения напряжения:
Питание по USB
При питании дисплея по USB, задействованы только линии питания и земли, а сигнальные линии — не используются. Данный способ подойдёт, если вы планируете использовать дисплей как самостоятельное устройство, т.е. без коммуникации с дополнительными управляющими платами.
Для питания дисплея по USB используйте любой источник напряжения с USB-выходом: блок питания, ноутбук или Power Bank.
Что понадобится
Схема устройства
Питание через Nextion Foca Max
Преобразователь Nextion Foca Max USB-UART позволит запитать дисплей Nextion напряжением от 5 до 25 вольт. А ещё модуль позволит использовать сигнальные линии дисплея для коммуникации с ПК.
Подробности подключения описаны в руководстве по Nextion Foca Max.
Питание от управляющей платы
Питание от управляющей платы подойдёт, если вы планируете использовать дисплей совместно с внешним контроллером, например Arduino или Raspberry Pi.
Подробности подключения описаны в примерах работы.
Nextion Editor
Установка среды
Запустите интегрированную среду разработки Nextion Editor.
Используйте дисплейные модули Nextion для отображения текста, изображений, анимаций, кнопок, переключателей, стрелочных индикаторов, прогресс баров и графиков. Дисплеи с лёгкостью позволяют организовывать меню с выпадающими списками и даже интерактивные игры!
Всё это становится возможным благодаря мощному 32-х разрядному процессору и визуальной среде разработки Nextion Editor. С внешним миром дисплей взаимодействует с помощью резистивного сенсора касаний с собственным контроллером и интерфейса UART. Панель подключается всего по четырём проводам (два из которых — питание). Для обновления прошивки дисплея, помимо UART, предусмотрен разъем для microSD карты.
В зависимости от версии дисплеи оснащаются большим объемом памяти, часами реального времени и даже собственными пинами GPIO, что позволяет использовать дисплей для непосредственного управления устройствами, используя реле и т.п. приборы.
Видеообзор
Комплектация
Каждый дисплей Nextion дополнен комплектующими, которые помогут соединиться с экраном:
Четырёхпроводной шлейф служит для подключения дисплея к питанию и управляющим пинам внешнего контроллера: например Arduino, Espruino или Raspberry Pi. С одной стороны шлейфа расположен разъём JST PH-4 (мама), а с другой — четыре свободных провода с коннекторами «мама» на концах:
Сигнальный (RX) — жёлтый провод, цифровой вход дисплейного модуля. Используется для приёма данных из внешнего контроллера. Подключите к пину TX внешнего микроконтроллера.
Сигнальный (TX) — синий провод, цифровой выход дисплейного модуля. Используется для передачи данных во внешний контроллер. Подключите к пину RX внешнего микроконтроллера.
Адаптер питания «USB to 2 Pin» — используется для подключения напряжения к дисплею, другими словами включает экран.
Демонстрационный режим
Дисплейные модули работают прямо из коробки с демонстрационной прошивкой. Для её старта достаточно подать питание на дисплей:
Сигнальные пины (TX) и (RX) используется для обмена данных с микроконтроллером. В демонстациооном режиме не нужны, т.е. оставьте свободными.
Подключите к полученной конструкции питание через порт micro-USB. Для этого отлично подойдёт зарядник на 5В с кабелем micro USB.
Штатный режим
Состоит из этапов:
- установка среды Nextion Editor (однократно);
- создание проекта для дисплейного модуля;
- прошивка дисплейного модуля.
Установка среды Nextion Editor
Для работы с дисплеем необходимо установить и настроить среду разработки «Nextion Editor»
Для этого перейдите на официальный сайт дисплейных модулей «Nextion». Скачайте и установите последнюю версию среды.
Создание нового проекта в Nextion Editor
Запустите среду «Nextion Editor»
Создайте новый проект: File NEW , напишите название будущего проекта и нажмите кнопку Сохранить . Откроется окно Setting , с двумя вкладками: Device и Display .
Во вкладке Device выберите линейку и модель дисплея . В качестве примера выберем дисплей из линейки Basic модели NX3224T024_011R
Для поддержки кириллицы выбирайте кодировку iso-8859-5
После всех манипуляций нажимайте кнопку OK . Перед вами откроется графическое окно разработки. Рассмотрим его элементы.
Добавление изображений
Нажмите в окне «библиотека изображений» на иконку
Выберите интересующее вас изображение на ПК и нажмите кнопку Открыть .В окне «библиотека изображений» появиться загруженное изображение.
Выделите область отображение дисплея.
В окне «зона редактирование атрибутов» в пункте sta измените поле solid color на image .
В поле pic выберите интересующую вас картинку из «библиотеки изображений» и нажмите кнопку OK Если вы всё сделали правильно, в окне «область отображение дисплея» вы увидите вашу картинку.
Это значит всё получилось и можно смело переходить к прошивки дисплея.
Прошивка дисплейных модулей
Компиляция проекта
Рассмотрим их подробнее.
Прошивка через UART
Для прошивки дисплея через UART понадобится USB-Serial адаптер.
RX дисплея — в TX USB-Serial-адаптера.
Прошейте ваш дисплей, нажав на кнопку . Процесс прошивки будет отображаться в окошке в программы и на дисплейном модуле. После этого загруженный проект будет выполняться и отображаться на дисплейном модуле.
Прошивка через microSD
Прошивка через UART занимает достаточно долгое время и требует дополнительного UART-преобразователя. В связи с этим существует альтернативный способ прошивки дисплеев Nextion с помощью microSD-карты.
Откройте папку с компилированными проектами: File Open builder folder
Скопируйте файл с именем вашего проекта на microSD-карту.
После всех действий загруженный проект будет выполняться и отображаться на дисплейном модуле.
Примеры работы
Для старта воспользуйтесь нашим проектом: Игра «Убей крота» на дисплее Nextion.
Это обусловлено тем, что у данного дисплея есть ряд преимуществ:
1. Собственный редактор прошивки Nextion Editor. В котором достаточно просто сделать интерфейс, при этом не нужно много писать кода.
2. Сенсорный экран. Все активные элементы привязываются автоматически и нет требуется калибровка. Все дисплеи идут откалиброванные с завода.
3. Не расходует мощности нашей Arduino. Так как дисплей оснащен своим микроконтроллером.
Минусы на мой взгляд:
1. Резистивный сенсор. Срабатывает только при нажатии. Что достаточно не привычно. Но при этом срабатывает достаточно быстро и точно.
2. Ограничения разработки возможностью редактора nextion editor . Некоторые задачи не возможно реализовать. Или приходиться делать костыли.
3. Nextion Editor достаточно коряво выводит русские буквы и нет переноса по словам. Только буквенный перенос на новую строчку для любого шрифта.
4. Не поддерживаются картинки с прозрачным фоном . Заливает их черным фоном.
Но это не так критично. Сделать можно очень красивые и сложные панели управления.
Также можно установить Nextion Editor на OS Linux . Я установил на Ubuntu. Для этого устанавливаем PlayOnLinux. Ищем наше приложения.
Нажимаем установить и программа PlayOnLinux автоматически все установит.
После установки запускаем программу. Создаем новый проект для этого в пункте меню выбираем New, вводим название проекта lesson-one и сохраняем. Наш проект будет сохранен в файл lesson-one. hmi. В окне Setting во вкладке Device выберем модель дисплея.
Во вкладке Display выбираем ориентацию дисплея и кодировку iso-8859-5, для поддержки русского языка. Во вкладке project можно установить пароль для доступ к проекту.
После создания проекта откроется рабочее поле
2. Меню управления выравниванием и порядком элементов.
3. Библиотека элементов.
4. Область отображения.
5. Список страниц проекта.
6. Библиотека изображений /Библиотека шрифтов.
7. Окно вывода результатов компиляции.
8. Окно для ввода кода, выполняемого при возникновении события.
9. Зона редактирования атрибутов выбранного элемента.
Давайте добавим картинку в наш проект на Arduino для этого воспользуемся вкладкой загрузки изображений в проект. Загружать нужно картинки соответственного размер. Если разрешение вашего экрана 480х320. Картинка должна быть такого же размера. Программа не умеет подгонять размеры картинок. Это касается и других элементов.
Также не поддерживается прозрачный фон, он его заливает черным цветом.
Основные элементы
— Добавить изображение. При нажатии этой кнопки откроется стандартное окно выбора файла изображения на диске.
— Вставить новое изображение перед выделенным.
— Опустить изображение в списке вниз.
— удалить все изображения.
Сейчас мы можем использовать наше изображение в проект.
Давайте сделаем его фоном нашей первой страницы.
Поменяем свойства страницы pages0, sta на image и выберем нашу картинку.
Наш первый проект готов.
Нажимаем кнопку Debug в панели меню. В новом окне откроется пример, как это будет отображаться на дисплее Nextion.
Давайте переименуем страницу с нашим логотипом на Logo. В следующем уроке расскажу для чего я это сделал.
И еще один небольшой нюанс использования программы Nextion Editor . Пока вы не нажмете кнопку Debug или Compile. Бинарный файл для прошивке не обновиться. Можно сделать много изменения, загрузить на дисплей, а изменений нет. Возможно это в моей версии программы или в Linux она себя так ведет. Но у меня такая ситуация была.
Прошить дисплей Nextion можно двумя способами:
1. С помощью UART программатора. Для прошивки воспользуйтесь пунктом меню Upload. Это достаточно долгий процесс. И в Linux нужно заморочиться с портами. Поэтому я пользуюсь вторым способом.
2. П рошивка с Sd карты . Для этого в пункте меню file выбираем open builed folder.
Выбираем файл lesson-one.tft и копируем его на карту памяти. Карту предварительно нужно отформатировать в формате FAT32. Карта памяти должна быть 10 класса.
Прошивка дисплея Nextion.
Отключаем дисплей. Ставим флешку. Подаем питание на дисплей. Если у вас дисплей задумался и после вывел демонстрационную информацию. Ваша флешка не подходит. Если загрузил экран на котором показывает скорость 9600 и больше ни чего не происходит значит у вас на флешке есть постороннии файлы.
При прошивке у вас побегут проценты загрузки прошивки. При завершении прошивка. Отключите дисплей. Достаем флешку. И можно пользоваться дисплее.
В нашем случае мы вывели логотип. В следующем уроке научим дисплей общаться с Arduino.
Сегодня в уроке научимся делать анимацию и выводить ее на дисплей Nextion. Вся программная часть будет реализована с использованием возможностей Nextion Editor, без использования Arduino.
Подготавливаем картинки для вывода анимации на экран Nextion.
Nextion display не умеет выводить gif анимацию или видео на экран. Это касается старых моделей. Новые модели, скорее всего, умеют воспроизводить видео и звук, так как в Nextion Editor появились инструменты позволяющие добавлять элементы медиа. Но у меня нет таких дисплеев, поэтому будем делать анимацию по старинке. То есть покадрово. Для того, чтобы разбить gif анимацию на кадры я использую онлайн сервис picasion.
Внизу статьи вы можете скачать gif анимацию, которую я использовал. А также для самых ленивых прикрепил архивы с разобранной анимацией по кадрам.
Анимация процесса загрузки.
Самая простая анимация, но при этом одна из самых распространенных - это анимация загрузки. Для начала создадим новый проект в Nextion Editor, если вы не знаете, как это сделать, смотрите урок: Nextion Editor урок 1. Скачиваем и первый пример hmi.
Затем загрузим картинки для анимации. Для этого в панели Picture 1 - нажмем на кнопку в виде плюса. В отрывшемся окне 2 выберем нужные картинки и нажмем на копку «Открыть» – 3 .
У нас получиться список картинок с порядковыми номерами от 0 до 51, которые мы и будем использовать.
В панели инструментов «Toolbox» выбираем элемент «Timer», этот элемент невидимый и он появиться в панели элементов данного типа.
Выбираем элемент «Timer», его название - tm0. Установим значение 50 в параметре tim, это интервал срабатывания в миллисекундах, то есть картинка будет меняться каждые 50 мс. Теперь нам нужно написать код, который будет обновлять картинки, это будет небольшое условие.
На поле экрана нужно добавить картинкус номером 0. Это будет первый кадр.
Можно проверять Nextion пример анимации.
Две кнопки по краям это просто перенаправление на другие страницы урока. Nextion hmi и tft nextion можно скачать внизу статьи, в разделе материалы для скачивания.
Эквалайзер при воспроизведении музыки.
Второй пример основан на первом. Загружаем nextion картинки и добавляем таймер.
Мы уже знаем, что данная анимация будет повторяться постоянно. Как же ее нам остановить, например, при нажатии кнопки? Для этого достаточно остановить таймер, и, при необходимости, снова запустить.
Давайте загрузим картинки для кнопок.
И добавим нужные элементы в проект.
следующий код для нажатия кнопки.
Будем включать и выключать таймер 0, а также менять картинку кнопки.
Еще один nextion пример готов.Осталось запустить и проверить.
Nextion hmi и tft nextion можно скачать внизу статьи, в разделе материалы для скачивания.
Анимация по времени.
В проектах часто приходится делать вывод времени и обработку событий по определённому расписанию или через определённый интервал. В следующем примере будем производить отсчет времени на дисплее nextion без использования Ардуино. Для этого разместим элементы на экране.
Загрузим картинки для кнопок и для анимации.
Анимация тут будет без повтора, поэтому код будет видоизменен.
Также добавим второй таймер и переменную. На панели невидимых элементов это будет выглядеть вот так.
Переменная va0 остается без изменений, а параметр val должен быть равен 0.
таймера пропишем вот такой код.
Интервал tim для второго счетчика устанавливаем 500 мс. Рассмотрим код подробнее.
Если мы оставим только лишь эти строки, то мы увидим мигание точек у часов. Картинки 96 и 97 -это токи и просто белый фон. Они меняются местами с интервалом в пол секунды.
n0.val++ - добавляет ежесекундно «1» к числу в данном поле. И мы видим секунды на наших импровизированных часах.
va0.val=n0.val%10 получаем остаток от деления на 10 и сохраняем в переменнуюva0.val.
Когда время достигло 60 сек., то меняем значение на 10. Но по-хорошему это должен быть 0. Тогда будет полноценное изменение времени. Тут можно добавить прибавление минут ко второму числу часов, но я не стал писать много кода, чтобы было более понятно.
Тут мы проверяем, какое значение в нашей переменной. Если остаток от деления равен 0, тогда задаём начальную картинку анимации, что автоматически запустит анимацию. Это прописано в нашем первом таймере. Если остаток от деления равен 2, то выводим белую картинку. Это закрывает последний кадр анимации.
По данному алгоритму анимация повторяется каждые 10 секунд. «Интервал», «время» и прочие параметры можно настроить и дописать для решения вашей задачи.
Чтобы запустить анимацию с использованием Arduino достаточно отправит на nextion display
значения для включения таймера.Как это сделать смотрите в nextion уроке: Дисплей Nextion урок 2. Подключаем и передаем данные на Arduino.
Если вам интересна эта тема, смотрите мой проект часов: Часы на Arduino и дисплее Nextion с выводом температуры и влажности. В данном проекте нашел пару недочётов, скоро будет доработанная версия с еще большим функционалом.
Пишите ваши предложения и пожелания в комментариях. Чем больше будет откликов, тем чаше будут выходить проекты и уроки с использованием дисплея Nextion.
Не забывайте подписываться на канал Youtube и вступайте в группы в Вконтакте и Facebook.
Создавать проекты, и загружать картинки в Nextion Editor мы научились в предыдущем уроке. Сегодня продолжаем осваивать работу с дисплеем Nextion, также подключим данный устройство к Arduino.
Но прежде чем начать сегодняшний урок хотелось бы напомнить некоторые особенности работы с дисплеям.
Знание которых поможет вам сэкономить время при разработке проектов:
1. Команды заканчивается тремя байтами "0xff 0xff 0xff"
2. Все команды и параметры находятся в ASCII
3. Все команды написаны строчными буквами.
Любая электроника нуждается в корпусе, исполнительном механизме. Где же заказать изготовление деталей? Для данных работ отлично подойдет ООО «М-Техника».
Основные направления деятельности компании:
- изготовление деталей и металлических изделий различной сложности;
- нанесение защитных и декоративных покрытий гальваническим способом на металлоизделия заказчика;
- термообработка металлоизделий;
Вернемся к нашему уроку. Первое что мы сделаем это добавим страницу в наш проект для этого воспользуемся областью вывода списка страниц.
Добавляем страницу с названием Button.
Сейчас у нас есть 2 страницы. Как же нам сделать переключения между страницами. Переключает между страницами можно командой:
Переключение происходит по имени страницы или по ее индикатору. Для меня проще по имении. Вы можете использовать и по индексу страница.
Куда же добавить данную команду?
В данном уроке мы сделаем переключение со страница Logo с задержкой в 3 сек на страницу Button.
Для этого нажмем на страницу Logo и в обработчике событий загрузки страницы добавим следующие строки.
Первая строка delay=3000 работает аналогично delay() в Arduino IDE. Задержка 3000 мс.
Все параметры и команды вы можете посмотреть в официальной документации. Здесь есть кое-какие ошибки в синтаксисе. Но описано все подробно.
Давайте сделаем индикатор загрузки, через сколько мы будем перенаправлены на с траницу Button. Для этого добавим прогресс бар, и в его свойствах добавим цикл.
Как поменять цвет прогресс бара, и прочие настройки расскажу в видео.
Из цикла видно, что мы добавляем по 1 к свойству j0.val. Это значение заполнения школы в свойствах прогресс бара.
Прогресс бар. Отображает заполненную на заданное значение процентов линейку.
- Sta – возможные значения: solid color и image
- dez – направление. Возможные значения:
- horizontal – по горизонтали
- vertical – по вертикали
Прогресс бар не будет обновляться если не добавить переменную
doevents //обновление экрана во время цикла
Приветственная страница готово.
Оформим страницу Button.
Добавим прогресс бар и кнопку с двумя состояниями.
-Кнопка с двумя положениями.
- bco0 – цвет переключателя в положении 0. Этот атрибут появляется при выборе значения solid color в атрибуте sta
- bco1 – цвет переключателя в положении 1. Этот атрибут появляется при выборе значения solid color в атрибуте sta
- pic0 – индекс картинки переключателя в положении 0. Этот атрибут появляется при выборе значения image в атрибуте sta
- pic1 – индекс картинки переключателя в положении 1. Этот атрибут появляется при выборе значения image в атрибуте sta
- picс0 – индекс вырезанной картинки переключателя в положении 0. Этот атрибут появляется при выборе значения crop image в атрибуте sta
- picс1 – индекс вырезанной переключателя в положении 1. Этот атрибут появляется при выборе значения crop image в атрибуте sta
- val – положение переключателя. Возможные значения 0 и 1
- x и y – координаты вставки кнопки
- w и h – ширина и высота кнопки.
В атрибутах кнопки sta поменяем значение на image. И подгрузим картинки в поля: pic0 и pic1.
В свойствах кнопки добавим такой код, который отправится на Arduino при нажатии.
Просто я не использую стандартную библиотеку Nextion.h. Поэтому формировать команды нужно вручную. Но на мой взгляд это оправданно. Как вы считаете, пишите в комментариях.
С дизайном и подготовкой в Nextion Editor закончили. Сейчас нашу прошивку можно загрузить в дисплей.
Подключаем дисплей Nextion к Arduino NANO по схеме.Подключение к Arduino UNO аналогично.
Скетч также подойдет для обоих плат. При желании можно использовать и на A rduino MEGA, ESP32, ESP8266 и пр.
У данной платы всего 1 аппаратный Serial Port. Будем использовать программный порт. Для этого нужно установить и подключить библиотеку SoftwareSerial.h.
Следующие две функции формируют и отправляют цифровые параметры на дисплей.
Здесь мы считываем полученные параметры и сравниваем, если пришла команда то выполняем.
Эта строчка отправляет состояние кнопки на дисплей. Для чего это нужно? Чтобы не получилось так, что на дисплее кнопка нажата, а светодиод не горит.
Читайте также: