Это видео недоступно.
Сожалеем об этом.
Особенности использования TFT Shield для Arduino Uno
HTML-код
- Опубликовано: 4 июн 2017
- Особенности использования TFT Shield для Arduino Uno. Высвобождение контактов для работы других модулей при их полном захвате TFT экраном. Использование шины I2C на примере модуля часов DS1307 и модуля радиоприемника RDA5807M.
drive.google.c...
Хороший проект, продолжайте, сэр. Good Project, go on Sir.
До чего дошел прогресс))) Раньше транзистор найдешь ченить на нем спаяешь и радуешься а сейчас на микроконтроллерах можно собрать что угодно
Привет,увидев это видео ты мне открыл глаза на то что я искал,мне надо было как то реализовать мини радио приемник,а самое мне понравилось то что управление через сенсорный экран.
Всегда рад приносить людям пользу. По поводу радиоприемника- на алике появились платы радиоприемника с усилителем, миниждеком и самое главное с возможностью вывода RDS, так же управляются по I2C и стоят не дорого (около 3$). Называются Si4703 fm тюнер.
Лайк подписка....доходчиво, просто и наглядно....
Вот сам скетч, он едва помещается в память ардуино уно, поэтому некоторый функционал обрублен (например пользовательская настройка времени и бинды радиостанций). На меге ещё есть неплохие резервы по объёму памяти, поэтому перейду на мегу вскорости и реализую пару фитч например +калькулятор, +календарь, +датчики температуры, влажности и давления и их отображение на графике и логирование в файл на флешку. Идей много, а пока выкладываю что просили, нежалко, тем более скетч создан на базе примеров от входящих в состав изделия модулей. В скетче есть немного мусора и закоментированных строк, нужных в основном для отладки интерфейса или модулей.
drive.google.com/open?id=0Bwtzv3gZGdWNR3J1cWVXOWIwSmc
Сергей Лукьянов здравствуйте можно попросить у вас этот скечь пожалуйста
Сергей Лукьянов Может я туплю, но первый вопрос который возникает у каждого новичка, "а зачем монитор, если кроме монитора больше ничего не подключить?" ! Я вот хотел бы к Uno или Mega подключить Ramps 1,4 и такой монитор с картой памяти. А вывод после просмотра, что нереально ибо просто подключать всё это будет некуда...
Сергей Лукьянов Спасибо огромное
В ардуино нельзя как то память добавить?
Спасибо добрый человек! Бьюсь над выводом даты времени на подобный дисплей. (ruclips.net/video/7crTHc_0tuM/видео.html) Задача реализовать часы на UNO и 2.8 TFT LCD Shield без DS1307 использую DS1307 Emulator. MCUFRIEND_kbv.h библиотека отвечает за отрисовку геометрических элементов?
Вот вам - БольшоеЧеловеческоеСпасибо! а то думал - как же мне ай-ту-си подцепить...
лучше купить такой же экранчик на spi - тогда много выводов освободится
Круто! Недавно тоже купил экран на 4 дюйма, уже начал экспериментировать.
Шикарно получилось!
Спасибо за видео, я с этим TFT Shield просто поигрался да обратно в коробочку положил )
Из-за его тормознутости?
Здравствуйте Сергей Лукьянов!
Нашел библиотеку BME280I2C ver 2.1.2 и все заработало, показывает температуру и атмосферное давление. Вопрос снят.
Спасибо.
С уважением к Вам Анисимов Василий!
done a good job 👍🏼 thank you for this kind of video...
насколько я знаю, I2C позволяет использовать максимум 128 устройств, так как последний бит первого байта - уже не часть адреса, а флаг r/w.
Сергей Лукьянов!
И еще BMP280 у меня не один и они рабочие проверял.
С уважением к Вам Анисимов Василий!
Значит проверяйте, как он определен в шапке скетча, может что то и с библиотекой.
@@Lukys30 Спасибо
очень понравилось видео я себе собираюсь прикупить всякого борахла в этом плане! и сделать климат контроль для поддержания температуры картофеля в подвале может когданибудь сделаю
Добрый день, а библиотеку можно и скетч, Пожалуста если не жалко, зарание Спасибо, жду ответа.
Земляку лайк! Тоже есть такой дисплей..голову ломаю чтобы с него соорудить))
отличный видос , от меня лайк и вопрос , не мог бы выложить скетч и изобразить подключение своей хитрой платки , за ранее спасибо, мне интересно как именно на одну шину вы подключили несколько устройств
Very nice demonstration!
А что в этом дисплее ттл 5 вольт обычно в них 3.3 вольта. Или на нем есть преобразователь.
C формированием номера виртуальной кнопки P_Button разобрался, у вас была такое поле виртуальных кнопок:
>
3 - 13 - 23 - 33 - 43
2 - 12 - 22 - 32 - 42
1 - 11 - 21 - 31 - 41
mut0 - 10 - 20 - 30 - 40bas
а на моем дисплее с ID=0x2053 (NoName) поле тач-скрина было развернуто на 90 градусов по часовой стрелке:
>
10 - 11 - 12 - 13 - 14
20 - 21 - 22 - 23 - 24
30 - 31 - 32 - 33 - 34
mut40 - 41 - 42 - 43 - 44bas
Из-за этого при нажатии на кнопки переменная P_Button содержала другие значения.
Вопрос в другом: почему при нажатии на любую часть регулятора громкости (левая, середина, правая) в операторе "сase" c номером нажатой виртуальной кнопки (+)41 42 43(-) (для моего тач-скрина) у вас в скетче указано одно и то-же действие, а именно вызов функции Volume (p_X). Как тогда происходит увеличение/уменьшение громкости???
ой давно это было. если не ошибаюсь по громкости зависимость от координаты Х, в пределах 2 или 3 квадратов (градация 16 шагов).
Библиотека для дисплея где и как слепить?
Фантастика!👍
Молоток!
спасибо!
как раз на ардуино мега остаётся дофига пинов!
спасибо
Здравствуйте Сергей Лукьянов!
Подскажите пожалуйста переключения FM станция производится кнопками BAS в верх и MUT в низ, а не как у Вас верхней большой кнопкой < 1 101.7MYz > и громкость не регулируется кнопкой 3 .
Что я не правильно заделал. Буду очень Вам благодарен за консультацию.
С уважением к Вам Анисимов Василий!
У Вас не правильно определена система координат тачскрина. Попробуйте провести калибровку и занести правильные значения в строке где определен тачскрин.
Лукас однозначно!
Круто! Спасибо)
Всё спасибо не чего не надо сам разобрался
Добрый день Сергей, спасибо за видео и ответы на вопросы аудитории. Какой ток потребляет эта конструкция в активном и спящем режимах микроконтроллера?
Простой блок питания на тфт
Здравствуйте. можете выложить скетч №22 который вы залили в видео . заранее спасибо.
А какой контроллер установлен в данном дисплее? У меня вот лежит такой же, хочу что-то сделать, вот только с ардуиновской средой я не дружу, а пишу сам свои либы на чистом Си в атмел студии с помощью даташитов на устройства. Вот и Нада модель контроллера, чтоб найти даташит и как с ним общаться...
а есть такой же но поменьше ? для смарт часов
ещё вопрос , с другого края UNO есть свободные пины SCL, SDA их нельзя использовать?
А как можно подать видео сигнал c RCA или HDMI на этот экран?
А часы настраивать как? И скетч неплохо бы выложить :-) если не жалко конечно. Я вот даже с замечаниями, но лайкнул. За то, что просто и по делу, без воды...
Установка времени происходит разово, при заливке скетча, потом строка комментируется, но можно и прописать процедуру для пользователя если позволяет память.
// установка времени
// time.settime(0,20,1,6,6,17,2); // _ сек, _ мин, _ час, _ день месяца, _ месяц, _ год, день недели 0-вск 6-суб
Благодарствую. А "немного мусора" это не страшно, это не с нуля пилить.
Обо всём рассказал, кроме подключения TFT Shield
он просто втыкается в уно
bme.read (pres, temp, hum, true, B101); Я ошибаюсь, можно ли что-то сделать?
Спасибо за видео очень полезное видео .у меня возник вопрос Ну точнее вопрос возник давно и я ищу на него ответ. вопрос такого характера -Как подключить три с половиной дюйма TFT дисплей подобный вашему через i2c Спасибо
Спасибо за пояснение. Какой экран можно будет подключить, на уно и цнц?
если ЦНЦ оставляет свободные пины, то на них и можно рассчитывать. Например если 4 и 5 пины свободны то легко можно будет подключить экран по шине I2C, монохромный экран 128*64 работает на этой шине в названии модели есть цифры 1306. На серьезный экран с тачскрином врятли можно будет рассчитывать при таких условиях.
Здравствуйте Сергей Лукьянов!
У меня вопрос по “Особенности использования TFE Shield” для Arduino Uno.
Я понимаю, что прошло много времени но может Вы сомните.
Я применил Ваш скетч залил в Arduino Mega 2560 подключил BMP280 и часы DS3231 к пинам 20 SDA и 21 SCL.
Дисплей заработал как и у Вас на видео. Часы работаю без проблем (время установил и идут).
По BMP280 температуру показывает 32.0’C и не изменяется, влажность 0.0% и атмосферное давление nan torr.
Подскажете (я в программировании почти 0) какие необходимо внести изменение в скетч что бы заработал BMP280 (библиотеку установил BME280I2C.h).
RDA5807M пока у меня нет он идет по почте и я думаю, что он установить и за работает.
Буду очень Вам благодарен за консультацию.
С уважением к Вам Анисимов Василий!
Я бы посоветовал для начала запустить голую БМП280 на тех пинах к которым сейчас часы подключены , залить скетч только для датчика и проверить какие значения он выдает в порт вывода. Если ложные, то оставить его один на один с ардуиной и повторить. если снова ложные то проблема с датчиком или его подключением.тиногда китайцы путают маркировку выводов. Проверяйте натурно работу датчика. То что в скетче ошибка маловероятно, но на всякий случай проверьте как вы датчик прописали в скетче.
если кулер запитан от 5В, то нужно искать другой кулер )
у кулеров разное минимальное напряжение старта.
все работало, реле отрабатывало - "счелкало"
И что, что оно "сЧелкало"? И что ещё за характеристика "минимальное напряжение старта"? Сам придумал или в Дотке услышал? Зачем нести несусветную чушь, если даже элементарного не знаешь и не понимаешь? Вот же позорище. В прочем, какой автор, такие и поклонники: не знать, что механическое реле потребляет огромный ток, который не в состоянии выдать модуль ардуино, и что такие реле нужно запитывать своим собственным хорошим питанием может только редкая бестолочь, возомнившая себя электронщиком. А если надо питать модулем, то используется твердотельное реле. Учите матчасть и не позорьтесь, инжерена мамкины.
👍👍👍
Здравствуйте Сергей Лукьянов!
Повернул экран tft.setRotation(3); на 270 градусов ( теперь по вертикали все нормально), а как поменять действия кнопок с лева на право.
То есть сейчас кнопка MUT выполняет функцию кнопки BAS и наоброт, громкость тоже наоборот регулируется и др.
Можно это поменять?
С уважением Василий!
Пробуйте менять данные в разделе инициализации тачскрина, у Вас инвертирована ось Х. Можно и скетч переписать под Ваш случай, но проще первый вариант. К тому же без калибровки точность тачскрина может быть плохая. Делайте калибровку это 10 мин работы.
Спасибо, все получилось.@@Lukys30
Сергей Лукьянов!
Сергей Лукьянов!
Извините меня я в программировании почти 0.
В библиотеке TouchScreen.h я не нашел калибровку.
Я в библиотеке SPFD5408 TFT Library выполнил spgd 5408_calirate и данные установил #include
// калибровка тачскрина
#define TS_MINX 197
#define TS_MINY 112
#define TS_MAXX 959
#define TS_MAXY 905
Ничего не поменялось: на дисплее все показывает (информация) как и Вас на видео, только у меня кнопка MUT переключается сверху где значек “” , регулировка громкости происходит сверху где информация частоты и названия станции.
Подскажите пожалуйста более подробно как изменить незнающему.
Прости что Вас отвлекаю но хочется довести.
С уважением Василий!
Xotel bi sprosit kak mojno podkluchit cvetnoi ekran?i xochu potom ja naprimer temperaturu maslo i vodi vivodit na ekran kak mojno eto sdelat?Pojaluista pomogite
У меня на таком дисплее буквы перевернуты зеркально вертикально (не сам экран дисплея). Я перепробовал много библиотек, но результата нет. Посоветуйте мне, где копать ???
у меня так и было с этим дисплеем. пришлось изменять файл драйвера. помню что искал даташит на этот экран, там находил параметр mirror, а затем в драйвере уже находил этот параметр и инвертировал. Потратил на это 2 или 3 дня. было давно - более 5 лет, так что врятли сейчас найду. поищите в моих файлах к этому видео модифицированную библиотеку, возможно я выкладывал её.
@@Lukys30 Спасибо !
Уважаемый! Спасибо за видео! подробней про экранчик(чип на борту ), и если даёте скетч, то может и библиотеки закинете в архив, так как библиотеки обновляются и за частую не все функции реализуются и не работают.
i know im asking the wrong place but does anybody know a tool to log back into an instagram account??
I somehow lost my password. I would appreciate any help you can offer me!
@Kendrick Killian Instablaster :)
@Kylo Nikolai i really appreciate your reply. I found the site on google and I'm in the hacking process now.
Takes a while so I will reply here later with my results.
@Kylo Nikolai It did the trick and I now got access to my account again. Im so happy:D
Thank you so much, you saved my account :D
@Kendrick Killian happy to help :)
no matching function for call to 'BME280I2C::read(float&, float&, float&, bool, int)'
молодец.
Ага, тоже из Беларуси. :) Из Могилева кажись. :)
Типа в Беларуси один магилёв только и есть...... Ж)
Прежде всего, я получаю свое приветствие с моими пожеланиями. Ardiuno также получил проблему здесь. Я получаю сообщение об ошибке Arduino: 1.8.7
-------------------------------------------------- -------------------------------------------------- -------------
Hourly Build 2018/10/05 10:33 (Windows 10), Карточка: "Arduino / Genuino Uno"
Ваша программа использовала 35136 байт (108%) пространства для хранения. Максимум 32256 байт.
Глобальные переменные используют до 1454 байт памяти (70%). Для локальных переменных осталось 594 байта. Доступно до 2048 байт.
Проект слишком велик; Советы по уменьшению размера см. По адресу: www.arduino.cc/ru/Guide/Troubleshooting#size
Сбор ошибок для платы Arduino / Genuino Uno.
В этом отчете будет больше информации с
«Показать подробный вывод во время компиляции»
опция включена в Файл -> Настройки.
-------------------------------------------------- -------------------------------------------------- ----
Ожидание вашей помощи
Есть схема подключения?
Hello Sergey!
How to configure the bands and / or radio frequencies in sketch? Because I live in Brazil and certainly the frequencies, for example, FM, are different, isn't it? I may be thinking wrong!
Thank you
Hi. There is two arrays in the sketch: array of frequencies *10 and array of names of radiostations. Change that values for your region and enjoy.
@@Lukys30 Thank you very much
библиотека MCUFRIEND_kbv к моему tft шилду не подходит. У меня адрес 6767 а в бибилиотеке его похоже нет, надо править. У вас сразу все подошло?
Нет, к сожалению стоит отметить, что чем дешевле экран тем больше времени надо потратить на его запуск. Больше всего я провозился с 3.5 дюймовым TFT экраном для Меги 2560. Так и не найдя подходящей библиотеки, методом перебора всех экранов с известных библиотек удалось получить зеркальное изображение от одного драйвера с универсальной библиотеки UTFT, затем читать даташит на найденный экран и изменять работу драйвера (убирать эффект зеркала методом поиска переменной отвечающей за направление отрисовки экрана). На все ушло пару вечеров активного поиска решения проблемы. Вот этот злодей ru.aliexpress.com/item/1pcs-3-5-inch-TFT-LCD-screen-module-for-Arduino-Mega-2560-R3-Mega2560-REV3-ATmega2560/1905714128.html?spm=a2g0s.9042311.0.0.bGCAWX
На мегу кстати придется 4 пина для sd card аткусить и поверх припаятся что бы их перенести на др. пины.
Не уверен в правильности этого. Вроде пины Уно и дублируются на меге.
Сергей Лукьянов, я тоже так думал, но spi у меги в др. месте. :)
@@krepton85you возможно реализовано программное спи
Привет.
Убиваю уже вторую UNO пытаясь запихнуть в нее скетч. Как и на первой плате пол года тому назад слетает bootloader.
К моему сожалению восстановить загрузчик простыми способами не помогло. Проблема в несоответствии библиотеки с дешевыми китайскими дисплеями. До этого arduino использовалась с другой библиотекой в похожем проекте и в ней все работало. В новой схеме она может просто замыкаться уже назначенными на другое дело пинами?
как и прошлый раз - stk500recv programmer not responding
Я с такими проблемами не сталкивался.
@@Lukys30 На обоих платах использовалась перед этим библиотека OPENSMART_kbv.h и подобный скетч при попытках залить скетч с MCUFRIEND_kbv.h сначала отказывается заливаться ссылаясь на то что скетч слишком большой, после удаления части по работе с BME280 размер приходит в рамки.... и вылетает bootloader!!!
Доброго времени суток!
Подскажите, а какая маркировка чипов, припаянных на шилде экрана?
дайвер от 9320 видимо ili9320. я уже давно не использую этот экран, могу ошибиться с точным названием чипа но цифры на плате 9320.
Спасибо!
арудино это привет из 80х пора STM32 переходить, там графика получше выйдет на экране а не как в майнкрафте и дороже чем stm32
Это разные вещи, если не разбираешь то не пиши фигни
А как же пины SDA SCL? Они для I2c и нужны.
Они активны и нормально работают. Как раз на них висит модуль времени и радио.
Возможно ли, подключение тфт экрана и цнц шилда, одновременно?
Подключить то можно, но скомпилировать скетч не получиться,. Пины надо будет назначить либо для вывода информации на экран, либо для вывода команд для работы ЦНЦ (драйверов шаговых двигателей), так же существует вероятность конфликта библиотек. Теоретически можно попытаться подрезать возможность ТФТ, например отключив тачскрин и высвободившиеся пины задействовать для частичной работы ЦНЦ. В результате полноценно запустить ТФТ и ЦНЦ не удастся, получиться ни рыба ни мясо.
Решение вашей задачи- использование Ардуино мега, там пинов хватит и для вывода на экран и для работы ЦНЦ.
Строчку TSPoint p = ts.getPoint(); надо заменить на Point p = ts.getPoint();-выдает ошибку при компиляции
I do not understand correctly what does this sketch, is it a program for Clock and Radio?
Does it work with ILI9341 screens?
Thank you
The video shows the possibility of connecting the I2C bus to TFT LSD Shield in case of contact deficit. On this type of microcontroller did not check.
@@Lukys30 Thank you; Because on a larger screen, it's better for viewing! Nice project!
@@Lukys30 PS. Does it work with SPI screen (not parallel)?
@@Dancopymus I think YES.
Можно код приёмника??? И спасибо за подсказку с пином А4.
А как у вас скетчь для этого устройства позаимствовать?
он ниже в комменте, выкладываю повторно ссылку:
drive.google.com/open?id=0Bwtzv3gZGdWNR3J1cWVXOWIwSmc
извините, как и где мне скачать библиотеку MPE280 I2C, спасибо
Библиотеки доступны из самой среды ардуино, поищите в меню менеджер библиотек и в строке поиска введите BME280 или 280
Добрый день!,можно ли его запрограммировать для работы с инкубатором?
Можно, но лучше заранее обдумать как у вас будут поворачиваться яйца. почитайте про шаговые двигатели или про сервоприводы. возможно не хватит свободных пинов для управления системой поворота яиц, системой увлажнения и конечно же системой поддержания необходимой температуры, так же возможно придется прикрутить искусственное освещение, а так же датчики движения на случай, когда начнут вылупляться птенцы и вы захотите сразу об этом знать. Если не хватит пинов, то лучше взять экран попроще, прикрутить кнопки управления, но обеспечить надежный процесс инкубации. Самый простой экран SSD1306, он садится на шину I2C и больше ничего не просит.
Очень много времени я смогу потерять не имея опыта обращения с ардуино. Потому подумал примитивно таймерами механически проделать переворот. Поддержанием тепла и влажности займется один уже проверенный регулятор.
Так наверно можно две платы ардуино использовать? Я только начинаю, но мне кажется это возможно и не дорого. Обмен между платами ведь не сложно организовать?
Т.е. на одной плате весь сбор данных с датчиков и управление, а для вывода отправлять структурировано данные на вторую плату, и получать управляемые данные с сенсорного экрана, не сырые (координаты), а уже обработанные, т.е. в виде необходимых параметров для обработчиков первой платы.
Для это тёмный лес. Механически организуют простейшими таймерами
если зафиксируешь камеру, будет легче смотреть
либо резко не метайся вслед за мыслью
Не хочет скетч заливаться-пишет C:\Users\Home\Documents\Arduino\libraries\Adafruit_GFX_Library\Adafruit_GFX.cpp: In member function 'drawChar':
C:\Users\Home\Documents\Arduino\libraries\Adafruit_GFX_Library\Adafruit_GFX.cpp:600:9: warning: 'bits' may be used uninitialized in this function [-Wmaybe-uninitialized]
Приобрёл такой шилд горит белый экран контроллер пишет что 6868 но таких библиотек найти не могу тач работает подскажите что делать
MCUFriend любит ставить нестандартные чипы на свои экраны, но это всё в большинстве случаев решается ценой потраченного времени и нервов (но зато экран дешевый:). Попробуйте для начала почитать даташит на свой контроллер и найти наиболее близкий по параметрам к известным контроллерам, далее подключить библиотеку от похожего контроллера. Если не получится то тут уже методом перебора из универсальных библиотек, например UTFT. Однажды я потерял 2 вечера что бы пустить 3.5" экран на чипе к которому не было библиотек, метод простой но долгий - просто подставлять разные чипы в универсальную библиотеку... причем он запустился в зеркальном режиме и я убил ещё вечер чтобы изменить работу драйвера дисплея. Все решается, только надо упорство. Если кажется что уже нет надежды запустить экран, то стоит сделать паузу, отдохнуть, потом на следующий день решение само может прийти в голову.
Связался с продавцом прислал код, залил не помогло. Попробую ваш метод научного тыка может заведующий сея прибор. Спасибо за совет. Если что можно будет советоваться с вами?
Можно ли сэкономить контакты на тачскрине если он не нужен? Если да то какие?
да, в скетче указаны к камим пинам подключены датчики тачскрина, если не ошибаюсь 4 пина можно высвободить.. или 2 (но это не точно :)
спасибо, нашёл. За тачскрин отвечают 8 , 9 цифровые и 2 , 3 аналоговые(может кому пригодится).
hi Sergey ...any chance for connection drawings...I have got sketch !!!
привет! Кто подскажет как затирать значения на 2.4 tft дисплее! Вывожу данные с аналогового порта, а оно либо цифры накладываются одна на одну , либо когда значения было 1023 то когда оно уже 4 то пишет 0024 или 8024 и т.п!
проще всего наверное будет перед новыми цифрами печать пержние цветом фона.
@@Lukys30 Вот вопрос если било 1024 а стало 0, то чем? Но я уже решил задачу!
Скиньте пожалуйста скетч для рисования, просто у меня скачанный не работает и просто серый экран
//Вот вам рисовалка по экрану для этого шилда
//-----------------------------------------------------------------------------------------
// All the mcufriend.com UNO shields have the same pinout.
// i.e. control pins A0-A4. Data D2-D9. microSD D10-D13.
// Touchscreens are normally A1, A2, D7, D6 but the order varies
//
// This demo should work with most Adafruit TFT libraries
// If you are not using a shield, use a full Adafruit constructor()
// e.g. Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);
#define LCD_CS A3 // Chip Select goes to Analog 3
#define LCD_CD A2 // Command/Data goes to Analog 2
#define LCD_WR A1 // LCD Write goes to Analog 1
#define LCD_RD A0 // LCD Read goes to Analog 0
#define LCD_RESET A4 // Can alternately just connect to Arduino's reset pin
#include // f.k. for Arduino-1.5.2
#include "Adafruit_GFX.h"// Hardware-specific library
#include
MCUFRIEND_kbv tft;
//#include
//Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);
#include
// Максимальные и минимальные значения координат, о которых говорилось в статье
// При первом использовании желательно открыть монитор порта и проставить для конкретного дисплея
#define TS_MINX 97
#define TS_MINY 61
#define TS_MAXX 948
#define TS_MAXY 901
// Последним параметром указывается сопротивление между X+ и X-
// Для данных дисплеев 300 подойдет
uint8_t YP = A1; // must be an analog pin, use "An" notation!
uint8_t XM = A2; // must be an analog pin, use "An" notation!
uint8_t YM = 7; // can be a digital pin
uint8_t XP = 6; // can be a digital pin
TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300);
// Assign human-readable names to some common 16-bit color values:
#define BLACK 0x0000
#define BLUE 0x001F
#define RED 0xF800
#define GREEN 0x07E0
#define CYAN 0x07FF
#define MAGENTA 0xF81F
#define YELLOW 0xFFE0
#define WHITE 0xFFFF
#define BOXSIZE 40 // Размер кнопки выбора цвета
#define PENRADIUS 2 // Радиус круга для рисования
int oldcolor, currentcolor;
int p_X, p_Y;
void setup(void) {
// Serial.begin(9600);
// Serial.println("Paint!");
uint16_t ID = tft.readID(); //
tft.begin(ID);
tft.setRotation(1); //Landscape
tft.fillScreen(BLACK);
// Кнопки для выбора цвета
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*6,320, 240,RED );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*5,320, 240,YELLOW );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*4,320, 240,GREEN );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*3,320, 240,CYAN );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*2,320, 240,BLUE );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE,320, 240,MAGENTA );
// Устанавливаем текущий цвет
currentcolor = RED;
pinMode(13, OUTPUT);
}
// Сила нажатия на дисплей
#define MINPRESSURE 10
#define MAXPRESSURE 1000
void loop()
{
digitalWrite(13, HIGH);
// Считываем координаты нажатия
TSPoint p = ts.getPoint();
digitalWrite(13, LOW);
pinMode(XM, OUTPUT);
pinMode(YP, OUTPUT);
// Если сила нажатия попадает в допустимый диапазон
// то начинаем обработку
if (p.z > MINPRESSURE && p.z < MAXPRESSURE) {
// Если попали в зону меню то очищаем экран
// if (p.y < (TS_MINY-5)) {
if (p.y > (TS_MAXY-0)) {
tft.fillScreen(BLACK);
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*6,320, 240,RED );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*5,320, 240,YELLOW );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*4,320, 240,GREEN );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*3,320, 240,CYAN );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE*2,320, 240,BLUE );
tft.fillRect(320-BOXSIZE, 240-BOXSIZE,320, 240,MAGENTA );
}
/* Serial.print(p.x);
Serial.print(" ");
Serial.println(p.y);
*/
// Переводим координаты в размеры разрешения дисплея
p.x = map(p.x, TS_MINX, TS_MAXX, tft.height(), 0);
p.y = map(p.y, TS_MINY, TS_MAXY, tft.width(), 0);
p_X=320-p.y;
p_Y=p.x;
tft.fillCircle(p_X, p_Y, PENRADIUS, currentcolor);
tft.fillRect(0,0,80,60,BLUE );
tft.setTextColor(WHITE);
tft.setTextSize(2);
tft.setCursor(0, 0);
tft.println(" ");
tft.setTextColor(WHITE);
tft.println(p_X);
tft.println(p_Y);
/*
Serial.print(" "); Serial.print(p.x);
Serial.print(" ");
Serial.println(p.y);
*/
// Если попали в зону кнопок выбора цвета, то выбираем цвет
if (p.y < BOXSIZE) {
oldcolor = currentcolor;
if (p.x < BOXSIZE) {
currentcolor = RED;
}
else if (p.x < BOXSIZE*2) {
currentcolor = YELLOW;
}
else if (p.x < BOXSIZE*3) {
currentcolor = GREEN;
}
else if (p.x < BOXSIZE*4) {
currentcolor = CYAN;
}
else if (p.x < BOXSIZE*5) {
currentcolor = BLUE;
}
else if (p.x < BOXSIZE*6) {
currentcolor = MAGENTA;
}
}
// Если попали в зону рисования, то рисуем круг с заранее заданным радусом
if (((p.y-PENRADIUS) > BOXSIZE) && ((p.y+PENRADIUS) < tft.height())) {
// tft.fillCircle(320-p.x, p.y, PENRADIUS, currentcolor);
}
}
}
ДИсплей работает а премник пульсирует неработает неработают кнопки как исправить
Проверьте тачскрин отдельным скетчем.
сколько стоит автоматика и можно ли ее подключить на 7 клапонов 5 тэнов 3 насоса для пивоварни
Хм... что-за пивоварня, либо самодельная, либо старая советская... Уверен современная пивоварня уже имеет всю необходимую автоматику с необходимым комплектом датчиков. Если уж отвечать на вопрос по существу, то нужно найти технологическую схему посчитать все датчики (температуры, давления, уровня и т.д.), затем посчитать все органы управления, воздействующие на тех. процесс (учитывая управляющие токи), и сопоставить с возможностями контроллера. Возможно ардуино мега с малой пивоварней справится, а если нет, то есть контроллеры помощнее. По цене, если самому все делать и покупать, сильно не вдаваясь в требования санитарных норм и правил, покупая недорогие датчики и релюшки, думаю выйдет не дороже 150$, это же конечно с учетом того, что силовые цепи уже имеются (пускатели и т.д.)
Здравствуйте дайте пожалуйста на свой скечь ссылку если можно очень нравится проэкт
ссылка на скетч выше, в одном из моих ответов.
Круто, а можете пожалуйста скетч. Заранее спасибо.
я в описании к видео делаю ссылки на скетчи. посмотрите там.
а где ссылки на скеч?, ))
drive.google.com/open?id=0Bwtzv3gZGdWNR3J1cWVXOWIwSmc
Скетч не компилируется с использованием BME280, если же закоментировать функцию по считыванию данных с него, то все нормально. Но все же хотелось бы использовать этот датчик. Прошу помощи, вот ошибка:
C:\Users\Alexey\Downloads\Radio_Touch_Screen_25\Radio_Touch_Screen_25.ino: In function 'void loop()':
Radio_Touch_Screen_25:197: error: no matching function for call to 'BME280I2C::read(float&, float&, float&, bool, int)'
bme.read(pres, temp, hum, true, B101); // unit: B000 = Pa, B001 = hPa, B010 = Hg, B011 = atm, B100 = bar, B101 = torr, B110 = N/m^2, B111 = psi
C:\Users\Alexey\Downloads\Radio_Touch_Screen_25\Radio_Touch_Screen_25.ino:197:43: note: candidate is:
In file included from C:\Users\Alexey\Desktop\кр\arduino uno\arduino-1.6.13\libraries\BME280-master\src/BME280I2C.h:33:0,
from C:\Users\Alexey\Downloads\Radio_Touch_Screen_25\Radio_Touch_Screen_25.ino:11:
C:\Users\Alexey\Desktop\кр\arduino uno\arduino-1.6.13\libraries\BME280-master\src/BME280.h:186:11: note: void BME280::read(float&, float&, float&, BME280::TempUnit, BME280::PresUnit)
void read(
C:\Users\Alexey\Desktop\кр\arduino uno\arduino-1.6.13\libraries\BME280-master\src/BME280.h:186:11: note: no known conversion for argument 4 from 'bool' to 'BME280::TempUnit'
exit status 1
no matching function for call to 'BME280I2C::read(float&, float&, float&, bool, int)'
если в кратце, то ругается на эту строку: bme.read(pres, temp, hum, true, B101);
Догадка только есть: проверьте тип переменной температуры, возможно она у вас вообще не описана. А так у меня на меге эти датчики работают отлично и выводят значения на экран.
Проблема решилась после удаления "true", т.е. получилось так: bme.read(pres, temp, hum, B101); . Свой вопрос-ответ удалять не буду, может кому пригодится
Еще догадка: Проверьте занимаемую память... возможно уже не хватает памяти...
вы про эту строку: float temp(NAN), hum(NAN), pres(NAN);? Если да, то она есть
Как пишется интерфейс?
Оптимальный метод у каждого разработчика свой, кто-то использует готовые библиотеки интерфейсов, я использовал графику-рисовал прямоугольники и заливал их.
@@Lukys30 вот и тема для видоса.
А как сам интерфейс составлять?
Рисуем кнопки либо шрифтом либо геометрическими фигурами, а опрос нажатия кнопок определяем исходя из выдаваемой тачскрином информации.
Сергей Лукьянов где все это рисовать ? в какой среде? чем пользоваться? извиняй что вопросов много и все сразу, просто сам не все знаю и это пока еще новое для меня. Может ссылки какие ни будь дашь или посоветуешь что почитать по этой теме.Заранее спасибо.
hi there, can you please your code ?
Shared at google drive to all. drive.google.com/file/d/0Bwtzv3gZGdWNR3J1cWVXOWIwSmc/view?usp=drivesdk&resourcekey=0-wmNy-BajPmSviVwAYuNswg
Сергей Лукьянов
Could you translate the sourcecode to English?
sorry, I can't too much time. Please use translater.
А подобный проект возьмётесь сделать ?
к сожалению нет желания заниматься инкубатором. инкубаторов на ардуино хватает в сети, посмотрите внимательно.
Where is your libraries?
Try to download the library from the Internet. I did this project almost 3 years ago and am not sure that I have saved these libraries. If you don’t find it, I'll look in my archives.
Ok :)
Перезалейте скетч снова, не открывается ссылка
Исправил. В описание ссылка должна быть снова рабочая.
@@Lukys30 вот спасибо
etxellent j'aime beaucoup les russes
Здравствуй.можно марку датчика-темперотура+давления+влажность.спасибо.
BME 280, если без влажности BMP 280 он дешевле.
спасибо
У меня точно такой же экран, а изображение в примерах словно через зеркало...
китайцы любят вставлять разные драйверы, некоторые зеркалят, но все по принципу примерно одинаковы. Поищите параметр "отзеркалить" и инвертируйте этот параметр в скетче. может потребоваться почитать даташит на микросхему драйвера экрана.
@@Lukys30 Если бы я не пытался его найти, то и не писал бы...
Хотя... а как это должно быть написано?!
@@user-zw2gp8jh1r У меня как раз была такая проблема, но это было лет 5 назад. Вот что я делал чтобы решить её. 1 определил какой драйвер запаян на плате. 2- скачал даташит на микросхему, 3- изучил даташит и нашел параметры которые отвечают за отрисовку изображений на экране (можно и зеркалить и переворачивать вверх ногами и др.), 4 - нашел этот параметр в файле библиотеки, отвечающей за работу экрана и изменил его в текстовом редакторе (это был булевый тип- истина/ложь). Возможно если его нет, то надо прописать вручную. Всё. пробуйте, я три вечера потратил на изучение, но экран запустил.
@@Lukys30 Не могли бы вы вспомнить, какую библиотеку использовали и что это за параметр?
@@user-zw2gp8jh1r библиотека MCUFRIEND_kbv.h а параметр точно помню mirror назывался в одном из файлов библиотеки надо искать- открывать каждый файл и искать, но лучше начать с даташита на микросхему. Лёгкого пути не будет, может его надо будет добавлять в один из файлов вручную.
сможете вы сделать такую автоматику за деньги
думаю и вам подсилу будет поизучать принцип работы ардуино, потратить на это дополнительно пару недель и самому сваять нужную вам автоматику. Я то могу спаять схему и написать скетч, но это будет не совсем удобно для вас. Во первых придется ждать, тратить дополнительные деньги, помимо расходов на материалы, ну и самое главное: процесс отладки и прошивки разных рецептов, вызовет определенные неудобства (при малейших вопросах по изменению кода, придётся обращаться ко мне). Посмотрите внимательно интернет ресурсы, есть уже готовые варианты отлаженных схем вместе со скетчами.
Да лажовый дисплей, занимает все пины и память, а мне от китайца пришел еще и с нерабочим тачскрином.
Лучше конечно брать Nextion дорого зато нет таких ограничений
тачскрин скорее всего рабочий, попробуйте другую библиотеку и провеьрте какие пины указали в скетче. А на счет лажевого дисплея -- согласен, но у него один плюс, который перекрывает все минусы-это цена.
А ГДЕ ССЫЛКА НА ТОВАР?
ru.aliexpress.com/af/TFT-2.4-%25D0%25B4%25D1%258E%25D0%25B9%25D0%25BC%25D0%25BE%25D0%25B2-TFT-%25D0%2596%25D0%259A%25252d%25D1%258D%25D0%25BA%25D1%2580%25D0%25B0%25D0%25BD-%25D0%25B4%25D0%25BB%25D1%258F-Arduino-UNO-R3.html?SearchText=TFT+2.4+%D0%B4%D1%8E%D0%B9%D0%BC%D0%BE%D0%B2+TFT+%D0%96%D0%9A-%D1%8D%D0%BA%D1%80%D0%B0%D0%BD+%D0%B4%D0%BB%D1%8F+Arduino+UNO+R3<ype=wholesale&d=y&blanktest=0&initiative_id=SB_20170903095608&origin=n&catId=0&isViewCP=y
Скетч слишком большой; прочитайте www.arduino.cc/en/Guide/Troubleshooting#size
Ошибка компиляции для платы Arduino/Genuino Uno.
Скетч вмещается на 32к Уны, причина вероятно в чем-то другом, в качестве эксперимента отрежьте какую нибудь процедуру в скетче, например обработку касания экрана или обработку громкости или уберите графику (отрисовку кнопок) и попробуйте скомпилировать повторно.
Попробуйте сменить версию компилятора avr-gcc. Заметил, что после замены версии 4.9.2 на 7.2 hex-файл уменьшился. Компилятор брал с сайта blog.zakkemble.co.uk/avr-gcc-builds/ там же описание, как это сделать ручками.
@@Al.Sy. Hi friend! I was interested in that.
First, is it good to do this update?
Secondly, how do you know which version of AVR-GCC is currently installed?
And third, does this update bring any benefit?
Thank you
5в мало этому вентилятору, реле то щёлкает...
Сделай реобас на этой штуке
Да можно...пробывал менять питание вентилятора через ШИМ... работает, но не стабильно на малых скоростях- от наклона вентилятора может остановится, так же не хочет стартовать на низких оборотах (но это решается программно).
Как ужастно смотреть когда всё дёргается. Надеюсь за год автор исправился.
Beau projet,dommage ça marche pas !
can you send me code
drive.google.com/open?id=0Bwtzv3gZGdWNR3J1cWVXOWIwSmc
2,8" TFT LCD Shild Driver IC: R61580 ставлю на Arduino UNO v.R3 белый дисплей но под ним видно что-то мелькает. Как решить проблему. Буду очень признателен. Email: tamga2009@yandex.ru Спасибо всем.
Наши друзья китайцы спокойно могут ставить другой чип. Просто пробуйте разные драйверы дисплея методом перебора пока не наткнетесь на нужный. Я таким способом запускал пару экранчиков. Однажды нашел только близкий, который зеркалил картинку, пришлось читать даташит по структуре и менять вручную драйвер из библиотеки. Ничего страшного, только время, нерабочих экранов мне с Китая не попадалась.