TFT 3,5" и Ардуино

slider
Offline
Зарегистрирован: 17.06.2014

1. бывает резервный регистр , он может иметь преимущество . его не раз указывал в разных темах

2. бывает что надо послать в B0h разблокировку , только тогда дисп будет реагировать на mirror , (указывал в мессагах про диспы от сониэриков vivaz U5 U8 )

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

diger67
Offline
Зарегистрирован: 25.07.2015

На каких тестах проверяете конфигурацию битов данного реристра? В даташите кроме описания регистра в виде таблици есть еще глава в которой описано как себя ведет координатная сетка x, y и вектор направления прорисовки выбранной области. Рассказывать все про этот регистр долго. В кратце, если выводить текст и при этом поиграть битами данного регистра, то вы увидите что при одной и тойже ориентации текст будет выводится зеркально или по вертикали, или по горизонтали. И читаться задом на перед.

 

arduino328
Offline
Зарегистрирован: 01.09.2016

Набрёл на несколько страничек про TFT интерфейсы: http://www.mirpu.ru/lcd/75-shtmatrcnics/118-interftftp1.html

Logik
Offline
Зарегистрирован: 05.08.2014

Logik пишет:

....  Начинается  с команды 0xEF. А вот нету такой в доке!

 

У ili9341 нету, и у других контролеров нету, штук 5 просмотрел. Как нет и других команд заданых магическими числам (наверно потому, что авторы тоже не знают что оно такое). Че за хрень с инитом?

Частично отвечу на свой вопрос. Некоторые магические команды  есть у контроллера HX8357. Его дока - https://cdn-shop.adafruit.com/datasheets/HX8357-D_DS_April2012.pdf .

Dash
Offline
Зарегистрирован: 15.09.2017
Являются ли штыри 5-вольт толерантными?
James
Offline
Зарегистрирован: 26.02.2016

к геям? или ты о чем? я думаю они нетерпимы

viki13viki
Offline
Зарегистрирован: 14.11.2016

Upss

James
Offline
Зарегистрирован: 26.02.2016

ну а вы посмотрите зачем он там нужен и на схему/плату. У меня без стабилизатора, ибо 5В с дуни уже с LM-ки идет

CheS_66
CheS_66 аватар
Offline
Зарегистрирован: 08.02.2017

От малины дисплеи никто не пробовал подключать? Типа такого - 

slider
Offline
Зарегистрирован: 17.06.2014

CheS_66 пишет:

От малины дисплеи никто не пробовал подключать? Типа такого - 

найти бы схему этого шилда у продавцов

пробуйте подключать

предположительно судя по тому что управляющие пины CD(RS) и RW возможно заведены тож через сдвиговые регистры как и шина данных , то будет невероятно медленно. + обычные библиотеки самому конкретно пилить прийдется.

Посмотрите шилды где SPI берется аппаратно с дисплея, тогда подойдут либы adafruit  и UTFT , в них есть поддержка ili9431 spi . инит подменить на ili9488 и разрешение на 320x480 и все пойдет.

в инете уже есть решения , достаточно поискать ili9488 spi , 3.5 spi lcd tft .

http://www.instructables.com/id/Arduino-and-35-Inch-320x480-TFT-LCD-ILI9488-SPI-In/

http://www.avrfreaks.net/forum/ili9488-spi-mode-xmega

http://forum.arduino.cc/index.php?topic=390823.0

 

slider
Offline
Зарегистрирован: 17.06.2014

от известного mcufriend.com для arduino     3.5 tftlcd spi  (однако, на шилде под дисплеем используется  расширитель  MCP23S17  ) , скетч для этого шилда имеется http://forum.arduino.cc/index.php?action=dlattach;topic=282144.0;attach=104910  из http://forum.arduino.cc/index.php?topic=282144.0

к ардуино нано + microSD параллельно

источник фото http://forum.arduino.cc/index.php?topic=337514.0

 

от известного   Adafruit    ,   3.5" TFT 320x480   SPI

https://www.adafruit.com/product/2050

https://cdn-learn.adafruit.com/downloads/pdf/adafruit-3-5-color-320x480-tft-touchscreen-breakout.pdf

 

https://world.taobao.com/item/555886032112.htm

black-stripe
Offline
Зарегистрирован: 03.07.2018

Всем привет.

Подскажите способ вывода изображения через буфер дисплея, попиксельный вывод с SD очень медленный и для интерфейса не подходит.

Дисплей 3,5", 310*480, зеленый, ili9486.

Вот такой
https://arduino54.ru/catalog/platy-moduli-shildy/3-5-tft-lcd-ekran-modul...

Спасибо.

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

black-stripe пишет:
Всем привет. Подскажите способ вывода изображения через буфер дисплея, попиксельный вывод с SD очень медленный и для интерфейса не подходит. Дисплей 3,5", 310*480, зеленый, ili9486. Вот такой https://arduino54.ru/catalog/platy-moduli-shildy/3-5-tft-lcd-ekran-modul... Спасибо.

А как Вы себе это представляете?

Объем экранной памяти около 350 кбайт, а на Меге - всего 8 кбайт. Где будем делать буфер?

black-stripe
Offline
Зарегистрирован: 03.07.2018

Видимо, никак.
Сколько памяти на один пикселя требуется?
Может как-то частями можно перерисовывать изображение через буфер?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

black-stripe пишет:
Видимо, никак. Сколько памяти на один пикселя требуется? Может как-то частями можно перерисовывать изображение через буфер?

Обычно 18 бит.

Думаю, что придумать способ в конкретных условиях ускорить вывод на экран при условии параллельного интерфейса дисплея возможно. Но следует помнить, что и интерфейс SD тоже не отличается высокой скоростью. Обмен по SPI, насколько я помню, происходит на скорости 4 Мбита/с. Т.е. 0.5 Мбайта. Итого, просто считать экран с карты - две трети секунды. А еще нужно время на отображение.

black-stripe
Offline
Зарегистрирован: 03.07.2018

Я использую библиотеку tft_hx8357 и не нашел там вывода фрагмента битмапа по задаеным координатам в файле, но точно видел в сети библиотеку с такой возможностью, подскажите какая так умеет?

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

Господа, такой вопрос: имею 3.2 шилд от open-smart на драйвере hx8352b, котрый почему-то при подключении к меге работат в 2 раза медленнее, чем на уно. По началу  думал, что косяк я, но потом увидев видео от самих open-smart с примером работы, понял, что таки это "изюменка" экрана.

Какие есть шилды с размером >= 3.5 , которые не болеют чем-то подобным и одинаково хорошо рботают не только на уно, но и на меге? А, и запускаются с адафру, чтобы скетчи не переписывать.

Нашёл вот такой приятный вариант. Пойдёт под мои запросы?

https://www.ebay.com/itm/3-5-inch-TFT-LCD-Display-Arduino-Touch-Screen-Module-UNO-R3-Board-Plug-and-Play/292610516389?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m1438.l2649

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

ReD_LioN, как Вы определяете, что на Меге работает вдвое медленнее, чем на Уно?

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

Скороть отрисовки весьма нагрядный параметр)

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

Разобрался со скоростью отрисовки. Виновата оказалась либа MCUFRIEND_kbv, без которой этот шилд не запустить, у неё в оприсании написано "This library is only intended for UNO and these specific Shields. It will work on a MEGA2560 but not very fast."

Так что получается нужен шилд с которым адафру будет дружить без неё

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

ReD_LioN пишет:

Скороть отрисовки весьма нагрядный параметр)

Поясните плз эту мысль поподробнее?

Каким именно образом скорость отрисовки может являться наглядным параметром?

Или хотя бы как вообще Вы эту скорость отрисовки определяете?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Ну дак наглаз же. 

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Вопрос даже не в этом (хотя - на глаз - это не совсем серьезно).

Меня интересует - что именно измерялось (какие операции, чем и как заполняли экран)?

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

Думаю, настолько его наглаз не прастираеца.

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

---

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

andriano пишет:
Каким именно образом скорость отрисовки может являться наглядным параметром?

 А что может быть нагляднее этого при работе с графикой?

Я же выше написал в чём дело - корявая либа.

Решение проблемы для себя вижу в покупке шилда на каком-нибудь популярном драйвере.(библиотеку-то мне ума поправить вряд ли хватит)

slider
Offline
Зарегистрирован: 17.06.2014

ReD_LioN пишет:

Господа, такой вопрос: имею 3.2 шилд от open-smart на драйвере hx8352b, котрый почему-то при подключении к меге работат в 2 раза медленнее, чем на уно. По началу  думал, что косяк я, но потом увидев видео от самих open-smart с примером работы, понял, что таки это "изюменка" экрана.

Какие есть шилды с размером >= 3.5 , которые не болеют чем-то подобным и одинаково хорошо рботают не только на уно, но и на меге? А, и запускаются с адафру, чтобы скетчи не переписывать.

Нашёл вот такой приятный вариант. Пойдёт под мои запросы?

https://www.ebay.com/itm/3-5-inch-TFT-LCD-Display-Arduino-Touch-Screen-Module-UNO-R3-Board-Plug-and-Play/292610516389?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2060353.m1438.l2649

если прочитаете тему то поймете , ответы были .  Равно и тема здесь про дисплеи от сотиков.

Очень вкратце - если не хотите переходить на  stm32 , то берите шилд для меги у которого только одна гребенка справа (а не сверху и снизу) , тем самым шина данных целиком приходится на цельный порт меги (8бит) , а не на винигрет портов как в вашем случае , в итоге тратиться очень много времени на распихивание 8бит дисплея на биты аж на 3х разных портов меги (гребенка сверху D2-D9).

самый быстрый вариант это 16бит шилд для меги , Если пойти дальше вырезать из либы: CS (приводилось уже), другие лишние драйвера диспов, проверки в либе на разные вариации плат, битности и диспов, Из setxy иногда можно исключить лишние команды . Выбрать дисп с меньшим количеством командам в setxy.

 если совсем тяжко сообразить , ищите на али шилд дисп  320 480 ili9488  (ili9486,....HX....) arduino mega  , с длинной гребенкой справа , либа mcufriend_kvb ,   ( adafruit , utft чутка м.б. помедленней)    и в ус не дуете.

https://ru.aliexpress.com/item/-/32885894353.html

 

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

спасибо за ответ

Не очень понял:

slider пишет:

 если совсем тяжко сообразить , ищите на али шилд дисп  320 480 ili9488  (ili9486,....HX....) arduino mega  , с длинной гребенкой справа , либа mcufriend_kvb

https://ru.aliexpress.com/item/-/32885894353.html

Так у меня сейчас и есть связка  с mcufriend_kvb и HX. Работает на меге жутко медленно, причём по словам автора из-за либы

 

slider
Offline
Зарегистрирован: 17.06.2014

ReD_LioN,  читайте внимательно, я вам ответил на ваших 2 вопроса

1.  почему ваш дисп работает медленно -  8бит подключены не на единый порт у меги (пины D2-D8) //предположительно , т.к. вы так и не удосужились выложить фото диспа 

2. и ответил на второй вопрос , какой дисп вам надо - с длинным разъемом справа (такие диспы бывают с тачем и без)  . библиотека mcufriend_kvb для 16бит лежит на известном гитхабе  https://github.com/Bodmer/TFT_HX8357  

// взято отсюда http://forum.arduino.cc/index.php?topic=411082.0

16бит также поддерживает библиотека UTFT

//// на UNO D2-D8 состоит уже не из 3х разных портов, а из 2х поэтому и работает побыстрее . А теперь преставьте, есть шилды , пины которых приходят на D0-D7 ардуиныUNO (цельный порт)  - будет работать еще быстрее. Для меги шилды бывают на цельные порты расположенные на D22-D29 или D30-D37 . И представьте у диспа выведены полностью 16бит , и они приходят на 2цельных 8ми битных порта D22-D29 или D30-D37   - будет самая быстрая скорость (что можно выжать из стоковых плат УНО и МЕГА)

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

ReD_LioN
Offline
Зарегистрирован: 04.01.2014

slider,  всё понял, спасибо большое.

Правда что-то то ли я искать не умею, то ли... Но без тача нашёл такой за 600р, а вот с тачем что-то 900р.

Юрий48
Offline
Зарегистрирован: 19.06.2018

Покупал такой дисплей будучи уверен, что смогу подключить его по SPI поскольку увидел на распиновке сигналы, относящиеся к этому интерфейсу без предположения по наивности, что они могут относиться к SD слоту. Подключать хочу к Blue Pill. В результате получил такой:

Самый для меня важный на данный момент вопрос: "Есть ли вариант подключить его к Blue Pill по SPI?"

b707
Offline
Зарегистрирован: 26.05.2017

Юрий48 пишет:

Самый для меня важный на данный момент вопрос: "Есть ли вариант подключить его к Blue Pill по SPI?"

по SPI к Blue Pill -  нет.  К Blue Pill его можно подключить по его интерфейсу 16бит - пинов на Blue Pill хватит. Либо нужен какой-то преобразователь из SPI в параллель - типа SPI экспандера на 16 портов... но придется переписывать библиотеку работы с дисплеем.

Юрий48
Offline
Зарегистрирован: 19.06.2018

b707 пишет:
по SPI к Blue Pill -  нет.  К Blue Pill его можно подключить по его интерфейсу 16бит - пинов на Blue Pill хватит. Либо нужен какой-то преобразователь из SPI в параллель - типа SPI экспандера на 16 портов... но придется с нуля писать библиотеку работы с дисплеем.

Спасибо. Пинов то хватит, но меня такой вариант не устраивает. С печалью принимаю следующее решение. Кто сможет/хочет обменять этот дисплей на нечто подобное, которое я смог бы прикрутить к Blue Pill по последовательному  интерфейсу. (Конструктивно надо иметь мало связующих проводов.) Действия, которые я сделал с этим дисплеем, это то, что разорвал его упаковку и сфотографировал.

b707
Offline
Зарегистрирован: 26.05.2017

Юрий48 пишет:

Кто сможет/хочет обменять этот дисплей на нечто подобное, которое я смог бы прикрутить к Blue Pill по последовательному  интерфейсу.

ну, обменять - не знаю... это на почте разоришься :) Просто положите пока в ящик, может потом пригодится.

Подобный SPI 2.8 дисплей стоит чуть дороже 400 рублей

https://www.ebay.co.uk/p/2-8-240x320-SPI-TFT-LCD-Serial-Port-Module-With-PCB-Ili9341-

 

diger67
Offline
Зарегистрирован: 25.07.2015

можно сваять на 74hc4040 и трех 4094 переходник SPI->16bit parallel. Заморочка, но так делают для raspberry PI.

 

Юрий48
Offline
Зарегистрирован: 19.06.2018

b707 пишет:
Просто положите пока в ящик, может потом пригодится.

Не тот возраст, чтобы успеть ещё что ни будь полезное сотворить.

diger67 пишет:
можно сваять на 74hc4040 и трех 4094 переходник SPI->16bit parallel. Заморочка, но так делают для raspberry PI.

Можно, но, опять же, это уже не для меня. Лет 12 нзад, на работе, это ещё мог бы себе позволить, может, даже с интересом. Сей час живу в глуши. А пересечся можно в Питере или в Пскове.

diger67
Offline
Зарегистрирован: 25.07.2015

Ну так если можите доежать до питера то в чем вопрос. Микросхемы можно приобрести в чип и дип. Я так понимаю делаете для себя. Можно все собрать на монтажке МГТФ-ом. А плата mega328 или stm32f103c8t6?

Юрий48
Offline
Зарегистрирован: 19.06.2018

diger67 пишет:

Ну так если можите доежать до питера то в чем вопрос. Микросхемы можно приобрести в чип и дип. Я так понимаю делаете для себя. Можно все собрать на монтажке МГТФ-ом. А плата mega328 или stm32f103c8t6?

Понятно всё это, намакетировался достаточно. Дети наезжают - их прошу привести, что нужно. Может, и сейчас не посчитал всё это за труд, если бы была готовая схема и уверенность, что с ПО всё будет без проблем. А плата stm32f103c8t6.

Валерон
Offline
Зарегистрирован: 25.11.2018

Народ!!! Помогите заюзать дисплей с чипом R61509 от сотика. При чтении ID выдает 0A0A. Где может быть косяк? Шилда у меня нет, переходник делал сам.

Maka
Offline
Зарегистрирован: 24.10.2015

Добрый день! Скажите вот такое https://ru.aliexpress.com/item/480-320-3-95-3-8-TFT/32916041971.html?spm=a2g0s.13010208.99999999.279.47d13c00QG6V1i на мегу встанет сразу, или шилд еще нужен? 

Есть еще такое https://ru.aliexpress.com/item/1-3-3-2-TFT-Touch-TFT-3-2/32859425753.html?spm=a2g0s.13010208.99999999.273.47d13c00QG6V1i но я не понимаю зачем шилд, занимающий/перекрывающий все пины меги?! 

slider
Offline
Зарегистрирован: 17.06.2014

Maka пишет:

Добрый день! Скажите вот такое https://ru.aliexpress.com/item/480-320-3-95-3-8-TFT/32916041971.html на мегу встанет сразу, или шилд еще нужен? 

Есть еще такое https://ru.aliexpress.com/item/1-3-3-2-TFT-Touch-TFT-3-2/32859425753.html но я не понимаю зачем шилд, занимающий/перекрывающий все пины меги?! 

1-й по распиновке , шилд переходной уже не нужен . Все необходимые микросхемы переместили на плату дисплея (это новые версии шилдов дисплеев).

2-й это старая версия , поэтому  переходной шилд нужен . Там на одной плате дисп + тач , а на переходной плате преобразователи уровней с питанием. Доп пины чтоб плата не перекашивалась (гребенка снизу , от туда бралось питание) , они поособому то не нужны. И тач раньше приходился на програмный SPI (дополнительная гребенка сверху) , сейчас уже такого не нужно , все решается аппаратным на котором сидит и microSD.
 

//
Для больших 7" диспов , пока остается актуальным переходной шилд. там и питание для прожорливой большой подсветки можно перехватить с Vin , уменьшив его импульсным DC-DC до 5в.

////
есть в этой же ценовой категории диспы HMI (с графическим ядром) от DWIN    DGUS, но опыта с ним нет пока в русскоязычном инете .
Будет по деньгам столько же , если размер больше (4.3") , но разрешение поменьше , и матрица обычная.
https://ru.aliexpress.com/store/product/DMT48270C043-04WN-4-3-inch-DWIN-Command-Screen-Singlechip-LCD-Serial-LCD/3510051_32879353895.html
Будет немного подороже с мощным процессором , но разрешение поменьше (=3.5") , при IPS должно быть матрице и разрешении 480x320
https://ru.aliexpress.com/store/product/DMT48320C035-06W-DMT48320C035-06WT-3-5-inch-DWIN-serial-screen-DGUS-II-smart-screen-touch-screen/3510051_32881309091.html 
 https://ru.aliexpress.com/store/product/DMT48320C035-06WN-3-5-inch-DWIN-serial-screen-DGUS-II-smart-screen-no-tuch-screen/3510051_32954624680.html 
   https://ru.aliexpress.com/store/product/DMT48320C035-07WN-T-3-5-inch-DWIN-serial-port-capacitive-DGUS-II-screen-RTC/3510051_32881348831.html 
ну и дальше там много разных вариаций
 

Maka
Offline
Зарегистрирован: 24.10.2015

slider пишет:

Maka пишет:

Добрый день! Скажите вот такое https://ru.aliexpress.com/item/480-320-3-95-3-8-TFT/32916041971.html на мегу встанет сразу, или шилд еще нужен? 

Есть еще такое https://ru.aliexpress.com/item/1-3-3-2-TFT-Touch-TFT-3-2/32859425753.html но я не понимаю зачем шилд, занимающий/перекрывающий все пины меги?! 

1-й по распиновке , шилд переходной уже не нужен . Все необходимые микросхемы переместили на плату дисплея (это новые версии шилдов дисплеев).

2-й это старая версия , поэтому  переходной шилд нужен . Там на одной плате дисп + тач , а на переходной плате преобразователи уровней с питанием. Доп пины чтоб плата не перекашивалась (гребенка снизу , от туда бралось питание) , они поособому то не нужны. И тач раньше приходился на програмный SPI (дополнительная гребенка сверху) , сейчас уже такого не нужно , все решается аппаратным на котором сидит и microSD.
 

//
Для больших 7" диспов , пока остается актуальным переходной шилд. там и питание для прожорливой большой подсветки можно перехватить с Vin , уменьшив его импульсным DC-DC до 5в.

////
есть в этой же ценовой категории диспы HMI (с графическим ядром) от DWIN    DGUS, но опыта с ним нет пока в русскоязычном инете .
Будет по деньгам столько же , если размер больше (4.3") , но разрешение поменьше , и матрица обычная.
https://ru.aliexpress.com/store/product/DMT48270C043-04WN-4-3-inch-DWIN-Command-Screen-Singlechip-LCD-Serial-LCD/3510051_32879353895.html
Будет немного подороже с мощным процессором , но разрешение поменьше (=3.5") , при IPS должно быть матрице и разрешении 480x320
https://ru.aliexpress.com/store/product/DMT48320C035-06W-DMT48320C035-06WT-3-5-inch-DWIN-serial-screen-DGUS-II-smart-screen-touch-screen/3510051_32881309091.html 
 https://ru.aliexpress.com/store/product/DMT48320C035-06WN-3-5-inch-DWIN-serial-screen-DGUS-II-smart-screen-no-tuch-screen/3510051_32954624680.html 
   https://ru.aliexpress.com/store/product/DMT48320C035-07WN-T-3-5-inch-DWIN-serial-port-capacitive-DGUS-II-screen-RTC/3510051_32881348831.html 
ну и дальше там много разных вариаций
 

Спасибо за ответ. А еще вопрос можно? :) Есть ли в природе таких же размеров (3+ дюймов) монохроматические, не цветные экранчики, с библиотеками готовыми? И чтобы с тачем. В моем прожекте цветность не особо нужна, даже излишня, но тач необходим.

На али что-то не найти, может не то ищу.

slider
Offline
Зарегистрирован: 17.06.2014

2 варианта , в зависимости от задачи использования

1. ищите на али    e-paper display , к примеру
https://ru.aliexpress.com/store/product/400x300-4-2inch-E-Ink-display-module-Black-White-two-color-display-SPI-Interface-No-Backlight/418423_32827160632.html внизу там табличка размеров.  Тач отдельно сами приладите. 

2. ищите на али  12864 lcd touch  или 12864 lcd
https://ru.aliexpress.com/item/COG-128x64-12864-lcd-display-graphic-module-ST7565P-COG-DIP-pin-connecter-with-resistor-touch-panel/32813808000.html 
   https://ru.aliexpress.com/item/12864-COG/32899394317.html

или обычные 12864
https://ru.aliexpress.com/item/Free-shipping-12864-128x64-Dots-Graphic-Blue-Color-Backlight-LCD-Display-Module-for-arduino-raspberry-pi/32624363605.html тач отдельно купить и самому поставить. 

// эти резистивные тачи подключаются на 4аналоговых пина , либо 2ан+2цифр. все библиотеки найдете , они есть , эт просто. 

///// возможно существуют еще какие диспы таких размеров , к примеру oled module  , особо таки не искал.

serg76
Offline
Зарегистрирован: 06.04.2019

Здравствуйте. Есть дисплей. Тип дисплея 3,95 UNO  (480x320 chip ILI9327). Есть ли возможность регулировать яркость у него. В библиотеке нашел команду:

void UTFT::setBrightness(byte br)
{
cbi(P_CS, B_CS);
switch (display_model)
{
case CPLD:
if (br>16) br=16;
LCD_Write_COM_DATA(0x01,br);
LCD_Write_COM(0x0F);   
break;
}
sbi(P_CS, B_CS);
}
Но я мало что понимаю в этом. Подскажите, пожалуйста!!!
_BadWolf_
Offline
Зарегистрирован: 24.04.2019

Судя по фотографии у вас шилд на 3.5 дюймов на контроллере ILI9486 (как и у меня), насколько я понимаю питания подсветки идет независимо, через реристор R1

sdkf70
Offline
Зарегистрирован: 25.04.2019

_BadWolf_ пишет:

Судя по фотографии у вас шилд на 3.5 дюймов на контроллере ILI9486 (как и у меня), насколько я понимаю питания подсветки идет независимо, через реристор R1

Какие библиотеки используете , если не секрет ?

_BadWolf_
Offline
Зарегистрирован: 24.04.2019

sdkf70 пишет:

Какие библиотеки используете , если не секрет ?

https://github.com/prenticedavid/MCUFRIEND_kbv универсальная библиотека под все случаи жизни, сейчас ковыряю ее, чтобы перенести дата-пины на другой порт блюпила. (разпиновку можно узнать в файле utills/mcufriend_shield.h в разделе своего МК)

kipriyan
Offline
Зарегистрирован: 13.06.2017

Добрый день. Подскажите пож-та подключаю 8-ми битный дисплей к ардуино нано 328p на пины d4-d7;d8-d11. при этом перестает работать команда digitalWrite на d12 и d13. Что нужно поправить в этом файле HW_ATmega328P.h для корректной работы?

// *** Hardwarespecific functions ***
void UTFT::_hw_special_init()
{
}

void UTFT::LCD_Writ_Bus(char VH,char VL, byte mode)
{   
		PORTB = VH & 0x0F;//   0F=00001111
  		PORTD = VH & 0xF0; //  F0=11110000
  		pulse_low(P_WR, B_WR);
				
  		PORTB = VL & 0x0F;  //   0F=00010111
  		PORTD = VL & 0xF0;  //  F0=11110000
  		pulse_low(P_WR, B_WR);
}

void UTFT::_set_direction_registers(byte mode)
{
DDRB = 0x0F;//DDRB |= 0x0F;
	DDRD = 0xF0;//DDRD |= 0xF0;
}

void UTFT::_fast_fill_16(int ch, int cl, long pix)
{
}

void UTFT::_fast_fill_8(int ch, long pix)//OK
{
	
		long blocks;
	
	PORTB =  ch & 0x0F;            //00001111 
	PORTD =  ch & 0xF0;            //00001111 
	
	blocks = pix/16;
	for (int i=0; i<blocks; i++)
	{
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
	}
	if ((pix % 16) != 0)
		for (int i=0; i<(pix % 16)+1; i++)
		{
			pulse_low(P_WR, B_WR);pulse_low(P_WR, B_WR);
		}
}

 

slider
Offline
Зарегистрирован: 17.06.2014

 kipriyan, как бы конструкция 

32     PORTB =  ch & 0x0F;            //00001111
33     PORTD =  ch & 0xF0;            //00001111
 

не очень правильная , она все байты кидает целиком в порты без поправки что на порту было, т.е. PortB  (ардуино пины  D13 )  ,     PortD (ардуино  пины  D0  D1 D2 D3 ) насильно устанавливает в 0 .  Эта конструкция хороша для целого байта в порт ( к примеру PORTB =  ch ; ) . 
Посмотрите в файлах  HW_ATmega32U4.h,... как там решается .
там конструкция к примеру 
PORTD += ((VH & 0x40)<<1) + (VH & 0x10) + ((VH & 0x08)>>3) + ((VH & 0x04)>>1) + ((VH & 0x03)<<2); 

PORTD |= ((VH & 0x40)<<1) + (VH & 0x10) + ((VH & 0x08)>>3) + ((VH & 0x04)>>1) + ((VH & 0x03)<<2) + ((VL & 0x10)<<2);

в принципе допетрите как измнить , можете сами для своей задачи .
в вашем случае проще , ничего сдвигать не нужно.

kipriyan
Offline
Зарегистрирован: 13.06.2017

Подскажи как правильно записать