Еще один обзор довольно интересной самодостаточной платформы для простого создания GUI к Вашим самоделкам.
Вариант 4,3", 480х272.
Другие обзоры данных панелей: раз, два, три.
Сразу уточню, это не «дисплей для Ардуины», это HMI-панель. =)
Распаковка
Пришел дисплей в большой картонной коробке.
Нещадно помятой, надо заметить.
Впрочем, ничего не пострадало.
Железо
Вот и наш дисплей. В симпатичной собственной коробке.
Сверху и снизу проложен мягким материалом, вероятность повреждения крайне мала.
Сам дисплей заклеен пломбой. Это приятно.
Из аксессуаров у нас адаптер на Dupont разъемы и адаптер питания.
Кстати, классная штука. Воткнул в свою макетную плату, да там и оставил.
Сам дисплей, заклеен транспортировочной пленкой. Видна резистивная тач-панель.
Сзади это дело выглядит… весьма мило!
К чистоте и качеству пайки нареканий нет.
К сожалению, слот под карту памяти только для прошивки.
Мозги и сердце девайса — ARM микроконтроллер STM32.
Большая микросхема — ПЛИС Altera MAX II. Производитель называет её «RGB driver», я же от комментариев воздержусь, ибо не очень разбираюсь в ПЛИС.
Постоянная память объемом 16 мегабайт, что довольно некисло.
А тут оперативная память видеоядра.
На преобразователе питания не сэкономили, импульсный с танталовыми конденсаторами.
Качество изображения
Панель построена на TN-матрице. В принципе, это всё объясняет.
Углы обзора у нас ограниченны, цвета не такие сочные, уже привыкшему к IPS глазу.
Но в целом, дисплей довольно качественный. Яркости достаточно, цвета довольно убедительные.
Ну и простите, господа — это же не устройство для просмотра кино.
Кстати, цифры «4,3» и «480х272» во мне всколыхнули кое-какие воспоминания. Это же был мой 2007 и PSP!
Так что делаю скриншот в меню PSP 3000, заливаю в панель и сравниваю:
Это PSP покрупнее:
Это Nextion:
Собственно, было бы сопоставимо, но картину портят неважные градиенты.
Это не критично, просто надо учитывать особенности железки (65K цветов) при создании дизайна GUI.
Софт
nextion.itead.cc/
Ну а вот и то, за что мы платим.
В смысле, софт-то бесплатный и даже с полноценным эмулятором всех панелей изготовителя (да-да, качайте и развлекайтесь, все функции доступны, нажатия на тач выполняются мышкой), но вот залить результат можно только в Nextion. =)
Открываем пустой проект в Nextion Editor, жмем Debug.
Выбираем Nextion Device и соответствующий COM-порт.
В окошке Input пишем «touch_j», Enter.
Запустится программа калибровки:
Отлично, что это предусмотрели.
Ну а теперь можно и помигать.
Hello World
Вот описание проекта: www.itead.cc/blog/product-preview-nextion-in-an-arduino-project-3
К сожалению, что-то устарело и ничего не работает. Но мы разберемся!
Проект сделаем с нуля. Скачать.
Две странички, две картинки, две кнопки.
Кнопкам задаем отсылать по COM порту своё состояние по отпусканию.
В симуляторе всё работает, кажись.
Код Ардуино:
int char1,char2;
int charflag=0;
void setup() {
Serial.begin(9600);
pinMode(13,OUTPUT);
}
void loop() {
if (Serial.available()>1)
{
if (charflag)
{
char2=Serial.read();
if (char2==0x00) digitalWrite(13,HIGH);
else if (char2==0x01) digitalWrite(13,LOW);
charflag=0;
}
else
{
char1=Serial.read();
if(char1==0x65) charflag=1;
}
}
}
Подключаем всё так же, RX-TX, TX-RX. Ну и результат:
Идем далее, ввод-вывод
Мы можем не только управлять чем-то с дисплея, но и посылать на него данные.
Что ж, второе, что нужно сделать после мигания светодиодом — часы, ясное дело.
Подключаю свой к Ардуине свои любимые часы DS3231, иду в редактор.
Набрасываю проект:
Скачать HMI проект.
Вывод дисплея настолько понятный, что читается невооруженным глазом в мониторе COM-порта.
Зачем мне библиотеки, подумал я? Сделаем простейший парсер.
Через часок я вспомнил, что программист из меня неважный.
В общем, идем за библиотекой.
По умолчанию она настроена под Arduilo Mega с двумя физическими портами, так что под Pro Mega и подобные нужно настроить NexConfig.h так:
Разобраться было не очень просто, стиль программирования в примерах… своеобразный.
В качестве отправной точки я использовал эту статью: www.itead.cc/blog/nextion-tutorial-based-on-nextion-arduino-library
Обнаружилась особенность, которая стоила некоторого количества седых волос: обязательно нужно указывать уникальные имена для всех полей, куда будем делать вывод. Nextion Editor позволяет указывать параметр global/local, но железо не всегда с ним согласно.
В общем, вышло как-то так: скетч проекта.
Код кривой и громоздкий, прошу прощения. Но надеюсь, минимально читаемый.
В работе:
Выводы
+ Просто работать
+ Широкие возможности, из которых я использовал малую часть — ползунки, барграфы, стрелочные индикаторы
+ Неубиваемость — проверено выдергивание питания нагорячую при перепрошивке
+ Неплохое качество тачскрина и дисплея
+ Навалом памяти, не удивлюсь, если туда влезет VN-игра целиком, например
— Нет GPIO (впрочем, уже анонсировано следующее поколение Nextion Enhanced с GPIO и RTC на борту)
Благодарю за внимание.
Бонус
Не терпится оставить коммент, что дорого?
У меня в закромах нашелся забавный девайс с подобным функционалом. Уже не выпускается, но на eBay стоит US $895.00, что примерно в 20 раз дороже.
Schneider Electric Magelis XBTGT2120.
Немножко побитый жизнью, но условно-рабочий. Половина дисплея повреждена.
Тоже несколько кнопок на тачскрине, да ввод-вывод.
Так это дело работает:
Товар предоставлен для написания обзора магазином. Обзор опубликован в соответствии с п.18 Правил сайта.
Планирую купить+21Добавить в избранноеОбзор понравился+27
+44
Купил тут себе смарт Tele2 mini за 32$…
Выводы
+ Просто работать
+ Широкие возможности, из которых я использовал малую часть
+ Неплохое качество тачскрина и дисплея
+ Навалом памяти, не удивлюсь, если туда влезет Android 6.0 целиком, например
± Цена. Хотя модели поменьше вполне доступны.
— Нет GPIO
ps^ этот комментарий конечно стёб, но я решительно не понимаю из чего складывается цена на DYI компоненты.
Согласен полностью.
Еще в плюсы готовый корпус и аккумулятор.
Можно еще добавить ESP к смарту или планшету то и неограниченное количество GPIO появится.
Готовность к работе.
Как вы этим смартом как мк программер будете рулить? Писать приложение под ведро? Т.е. вы выучите «новый» язык, с его «новыми» фишками и т.д.?
Да дорого, но скажем делая тот же станок на производство я столкнулся с проблемомй вывода/ввода. Не хватило ножек и на управление и на экран с сенсором. Пришлось перейти на SPI экран пока. Ножек в притык. Следущий этап или этот экран, либо же делать клиент/серверную часть.
Вопрос массовости. Телефоны клепают миллионами, такие панели — сотнями, ну может тысячу продадут. А разработка стоит денег.
Будет такая панель востребована на уровне ардуины и клонов — будет и цена копеечная. А пока увы, какую цену не считай справедливой, есть только то что есть. Вариантов не много.
Как забавно жизнь складывается у электронных компонентов. 8-битная АТмега командует 32-битным стм32, который командует альтеровской ПЛИСиной макс 2. И всё это управляет релюшкой.
С языка сорвали, такой шилд надо делать автономным контроллером с GPIO, подключение к ардуино видимо залог успешных продаж. Хорошо этим ардуинством людям мозги залюбили… Хотя я без ардуины до программирования микроконтроллеров бы никогда не дошел, для меня это было что-то из космической отрасли )
Нет, не дорого, а просто все сыро и по китайски там. Очень малое количество глючных контролов, что то толковое посложнее часов или игры со сменяющимися картинками сложно реализовать.
Подскажите пожалуйста, а есть ли акого плана LCD модули, на который можно подать аналоговый видеосигнал (например с камеры заднего вида авто)?
Спасибо.
Конечно есть. Называются автомобильными мониторами для камеры заднего вида. И стоят 10$. Но если вам нужен именно модуль без корпуса в виде «собери сам», то за вышеозначенные $44.90 готов разобрать монитор до голых плат и выслать вам)))
Как же все-таки хорошо, что мир не без добрых людей. Особенно остроумных и острословных…
Как же я сам не догадался до этого.
Огромное Вам человеческое спасибо!
Один нюанс — мне нужен экран диагональю максимум 2,8", а таких автомониторов я не нашел.
Про размер в вашем комментарии не было ни слова, а в обзоре панель на 4,3 дюйма. Какой вопрос — такой и ответ. По сабжу — на Али есть и маленькие мониторы, ВОТ первый попавшийся на 2,5 дюйма.
Или могу предложить совсем экзотический вариант — 1 сантиметровый ЭЛТ монитор… добывается из видоискателей старых видеокамер, коих куча на авито за копейки.
upd: нашел в закладках где видел
Выводы
+ Просто работать
+ Широкие возможности, из которых я использовал малую часть
+ Неплохое качество тачскрина и дисплея
+ Навалом памяти, не удивлюсь, если туда влезет Android 6.0 целиком, например
± Цена. Хотя модели поменьше вполне доступны.
— Нет GPIO
ps^ этот комментарий конечно стёб, но я решительно не понимаю из чего складывается цена на DYI компоненты.
Еще в плюсы готовый корпус и аккумулятор.
Можно еще добавить ESP к смарту или планшету то и неограниченное количество GPIO появится.
Как вы этим смартом как мк программер будете рулить? Писать приложение под ведро? Т.е. вы выучите «новый» язык, с его «новыми» фишками и т.д.?
Да дорого, но скажем делая тот же станок на производство я столкнулся с проблемомй вывода/ввода. Не хватило ножек и на управление и на экран с сенсором. Пришлось перейти на SPI экран пока. Ножек в притык. Следущий этап или этот экран, либо же делать клиент/серверную часть.
Будет такая панель востребована на уровне ардуины и клонов — будет и цена копеечная. А пока увы, какую цену не считай справедливой, есть только то что есть. Вариантов не много.
Спасибо.
Как же я сам не догадался до этого.
Огромное Вам человеческое спасибо!
Один нюанс — мне нужен экран диагональю максимум 2,8", а таких автомониторов я не нашел.
Или могу предложить совсем экзотический вариант — 1 сантиметровый ЭЛТ монитор… добывается из видоискателей старых видеокамер, коих куча на авито за копейки.
upd: нашел в закладках где видел
Тёплый ламповый ДОС на 1 сантиметре ЭЛТ.
Считаю всё это созданием лишних сущностей.
99% потребностей DIY перекрывает вебконсоль в смарте-планшете.