Хорошая тема. Самое главное актуальная. Сейчас много таких экранов, а информации по их подключению ноль. Считаю что тема до конца не раскрыта. Три страницы про программное подключение и все. Светлые головы подскажите (желательно как пост №4) как подключить тач, SD и тд. Только если можно попроще для простого обывателя типа: пин такой-то с экрана подключается к пину такому-то на ардуино. Если это будет сделано тему можно будет закрыть. Заранее бдагодарен.
Мучаюсь с таким точно дисплеем. Вернее теперь мучаюсь только с SD, но в большей степени потому что неправильно соединил некоторые пины. Кому интересно - я его запустил немного не так как тут описано.
Хорошая тема. Самое главное актуальная. Сейчас много таких экранов, а информации по их подключению ноль. Считаю что тема до конца не раскрыта. Три страницы про программное подключение и все. Светлые головы подскажите (желательно как пост №4) как подключить тач, SD и тд. Только если можно попроще для простого обывателя типа: пин такой-то с экрана подключается к пину такому-то на ардуино. Если это будет сделано тему можно будет закрыть. Заранее бдагодарен.
Когда такой шилд попал ко мне в руки, первое что я решил запустить - это дисплей. Потом - тач. Сейчас бьюсь над SD, но сдаётся мне что "для тех, кто в танке" - всё написано около штырьков самого дисплея. Во всяком случае то что касается тача и SD - так точно. Вследствии - я неправильно распаял тач и теперь не могу запустить SD, потому что выводы аппаратного SPI, заделаны под определенные контакты, к которым и следует подключать соответвующие, подписанные выводы самого шилда. По другому - никак. Поэтому что у меня работает только дисплей (на правленой UTFT.cpp) и неправильно подключеный тач.
Единственное в этом всё неудобство заключается в том, что между дисплеем и ардуиной должна стоять плата согласования(при подключении 5-ти вольтовой меги - так сто пудово!) или придётся соединять проводками. Кстати на 34-х пиновый шилд дисплея удачно садится 34-х пиновый шлейф от FDD-дисковода. Остаётся только отрезать от него один из разъёмов и распаять на отдельную контактную колодку провода, в соответствии со схемой подключения.
Если подключить контакт BL (подсветка) не на +5В, а на цифровой выход с ШИМ - можно включать/ выключать и регулировать яркость подсветки. Ток через этот контакт при включеной подсветке - 4мА.
Всем привет!Тоже не пойму каквставить здесь изображение На днях получил с али вот такую аурдину и дисплей Никак не пому как правильно ее вставить Всавлял так со сторон разьема питания +3,3 на +3,в +5 вольт на + 5 вольт GND на GND ну и дальше по цепочке С другой стороны LCD_2 на вывод 2 аурдино и выше по цепочке в сторону усб разьема Ни ни накакие действия дисплей не реагирует горит немного только подсветка Вводил и программу для этого дисплея и примеры с урдино -Диод RX мигает а дисплей нулями Я аурдиноист только 3 дня может что не так сделал но сильно кажется что что то с дисплеем не так- ни на какие действия не реагирует ПОМОГИТЕ ПОЖАЛУЙСТА!!! http://www.cqham.ru/forum/attachment.php?attachmentid=267172&d=1500569844
Не ерундите, UTFT умеет работать по всем протоколам. Надо только грамотно пользоваться библиотекой. К тому же, если в библиотеке конкретный контроллер TFT используется по неподходящему протоколу, легко можно подправив библиотеку поменять и протокол обмена, и разрешение.
да,библиотека пошла,спасибо,только прошивал hex своим прогером
а эта ардуиновская приблуда для прошивки никак не хочет работать
такой ошибки как в статье у меня не показует,всеравно установил драйвер с статьи и ничего не изменилось
пишет
avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"
Using Port : COM1
Using Programmer : wiring
Overriding Baud Rate : 115200
avrdude: ser_open(): can't open device "\\.\COM1": Не удается найти указанный файл.
avrdude: ser_drain(): read error: Неверный дескриптор.
Проблема загрузки на плату. Для достижения дзен, курить http://www.arduino.cc/en/Guide/Troubleshooting#upload .
загрузчик через CH340 в ардуиновском исполнении вы и не зашьете (ибо нужно подключение по SPI) . Залить можно только скетчи , когда загрузчик уже зашит и отвечает по rx tx.
загрузчик через CH340 в ардуиновском исполнении вы и не зашьете (ибо нужно подключение по SPI) . Залить можно только скетчи , когда загрузчик уже зашит и отвечает по rx tx.
поищите в инете arduino загрузчик
т,е когда я подключал по SPI и стер загрущик то уже ничего не сделать?
Игрался с этим дисплеем который в начале темы с желтеньким разъёмом.
Это чудо инициализируется при одном условии регистр 0xC7 должен быть в 0xC0 как в доке указано значение по умолчанию.
Во всех же типовых инициализациях там другое значение.
Инит он проходит но рисовать не желает всё равно. Нужен ещё какой то секретик найти но какой я не знаю :(
На шлейфе потом переставили перемычку с R2 на R1 ( IM0 c GND на +3.3v ) для перевода его с 16бит на 8бит . Была снова протестирована UTFT (16/8бит) и теперь Adafruit (ему необходим 8ми битный режим). Была взята либа Адафруит (для 8ми бит а не SPI) https://yadi.sk/d/G1wGU8CumLxEZ пример
Понимаю что давно манипуляции были с дисплеем, но все таки спрошу.
Хочу дисплей перевести с 16 бит на 8 бит и судя по даташиту надо изменить IMO с 1 на 0, а по тексту у вас наоборот - это особенность дисплея?
Запустил этот дисплей на stm32f103 arduino ide (не устраивала скорость отрисовки) с помощью библиотеки 8 битной, но на экране только синие цвета (оттенки), а с библиотекой 16 бит дисплей не запускается, если кому интересно общаюсь с создателем портированой библиотеки 16 бит http://www.stm32duino.com/viewtopic.php?p=36142&sid=08ab1a785fc9c48e14a541e55ded9c68#p36142
и как при 16битах? STM32 против arduino mega . быстрее стало одно рисование? (у меня железо то есть, но нет времени проверить.)
а что вы сделали чтоб дисплей физически переключить на 8бит? разные шлейфы - по разному, а иногда и вообще невозможно - когда у самого стекла впритык на шлейфе закорочены все IM.
все верно сказал
речь шла о ili9341, в даташите чтобы с 16бит на 8бит надо IM0 с 0(GND) в 1(+3.3в) при условии что IM3 сидит на +3.3в .
или проследив дорожки в шлейфе и предположить где какие IM
или посмотреть какие D он использует при 16битах D[17:10],D[8:1] или D[15:0] (тоже глянуть на шлейф)
или методом тыка IM и опроса пинов со светодиодом.
или методом тыка IM и запуска диспа
в одном случае надо подключаться к нижним 8бит D[7:0] дисплея , а в другом к верхним 8бит D[17:10] дисплея
раз у вас синим запоказывало, значит физически вы его не переключили в 8 бит, а только лишь воспользовались библиотекой.
// возможно у разных контроллеров есть небольшая разница в рисовании при 16бит и при 8бит . для одних это безболезненно, для других маленькая корректировка, иначе бы не родилась либа UTFT ili9327 turbo
/// потом сюда черкните по возможности сравнение по времени тестов
8 и 16бит ардуино и stm32
рекомендую прочитать статьи - ускорение ардуино . самые большие задержки это опрос и настройка пинов .
судя по видосам автора библиотеки , прирост в скорости хороший. (на других, смежных видосах c SPI шиной диспов, гораздо быстрее , особенно с разогнанной stm на 128мгц)
большие дисплеи шилды 3.5" на spi шине в продаже существуют.
А если взять stm32f103vet и использовать FSMC, то работать еще быстрее будет. Тут и DMA уже можно заюзать. Тоже дает неплохой прирост. Вот так примерно работает, правда это уже на F429. https://www.youtube.com/watch?v=CGoGelFqEys
судя по видосам автора библиотеки , прирост в скорости хороший. (на других, смежных видосах c SPI шиной диспов, гораздо быстрее , особенно с разогнанной stm на 128мгц)
большие дисплеи шилды 3.5" на spi шине в продаже существуют.
stevstrong позаимвствовал либу у iwalpola. Упоминание было на форуме stm32duino
diger67 пишет:
А если взять stm32f103vet и использовать FSMC, то работать еще быстрее будет. Тут и DMA уже можно заюзать. Тоже дает неплохой прирост. Вот так примерно работает, правда это уже на F429.
Я любитель в среде программирования МК. И разбираться, к сожалению, в оптимизация/тонкостях у меня катастрафически нет времени.
Если использовать бибилотеку от автора stevstrong, то он тестил FSMC на серии stm32f4 и не гарантирует работу на stm32f103.
Безкоштовні фільми 2017 року жанрі комедій і кінокоміксів типу «Вартові галактики 2» або «Покидьки» відмінно підійдуть для перегляду в компанії, а новинки мультфільмів, таких як «Історія Фердинанда» або новий варіант «Красуні і чудовиська» краще дивитися всією сім'єю. Для любителів полоскотати нерви підійде нова екранізація творів Стівена Кінга «Темна вежа» або не менш цікаві і страшні «Ренделл» і «Біошок», серіал «24 години: Спадщина».
У 2017 році вийде ціла серія очікуваних бойовиків від відомих режисерів, таких як «Зоряні війни: Епізод 8», «Месники: Війна нескінченності», «Тор: Рагнарек» та інші. Для тих, хто віддає перевагу різноманітність в переглядах, можна звернути увагу на історичні фільми «Дюнкерк», «Битва на Секігахара». Фільми літа 2017 року дозволять, в першу чергу, провести цікаві канікули: виходить мультфільми «Капітан підштаників», «Гидке Я. 3» і «Тачки», фільми «Фантастична четвірка», чергові «Мумія», «Трансформери», «Людина- павук ».
Жанри багатьох фільмів можна охарактеризувати одним стилем, вони перегукуються, об'єднує їх інше: солідні бюджети, цікаві сценарії, знайомі актори, заради яких і чекаєш з нетерпінням фільм, якісна режисерська робота. Перераховані фільми лише мала дещиця варіантів для перегляду на нашому сайті, ви без проблем зможете переглянути найбільш повну колекцію з різними сюжетами в найкращій якості.
1) как отодрать экран, он просто приклеен? отрывать экран от пластиковой рамки или вместе с пластиковой рамкой;
2) можно чуток подробней про Пины IM0-IM3, требуется на последовательный интерфейс переключить. Судя по фото в этом варианте только на 8 бит реально переделать?
3)насколько я понимаю, на SPI ili9143 автоматически не переходит при выборе контроллера через "CS". Но при этом распайка выполнена и если вручную его заставить работать на SPI, то должно запуститься?
1) приклеен на двухсторонний скотч. Разогреть плату (не экран) феном градусов до 150 и потихоньку поднимать.
2)как лично я понял, что да только на 8 бит
3) Остальные пины для подключения флешки и тача.
Из прочитанного на разных форумах, как я понял, SPI реализация зависит от производителя, если он ее предусмотрел то будет, либо с паяльником делать франкенштейна.
Из прочитанного на разных форумах, как я понял, SPI реализация зависит от производителя, если он ее предусмотрел то будет, либо с паяльником делать франкенштейна.
Я пока начинающий "изобретатель".
Экранов таких много на форуме было. Я отодрал экран, но толку мало. Доступа к контроллеру нет. Надо либо сам экран дальше расковырять, для доступа к телу контроллера ILI. Или схему шлейфа.
Сейчас экран отложил, буду изучать среду Ardruino IDI. Датчики разные поподключаю. Руку набъю буду через сдвиговые регистры оживлять - как есть в 16-bit режиме.
я цепляю к ESP8266, количество ножек сильно огранично.
Странно, но получилось с первого раза.
ESP266+ЖК на ili9341 16-bit
Пока тестовый вариант, задействовал 6 ног контроллера и два сдвиговых регистра. Позже попробую сократить количество ног контроллера до 4-х. Добавив счетчик или еще один регистр. Окончательный вариант подключения опубликую.
Появилось еще 2 вопроса, точнее просьбы посоветовать:
1)Посоветуйте готовую библиотеку работы с экраном, что бы в ручную все функции и шрифты не делать
2) все делал на Ardruino IDI. для ESP266 нет более адекватной среды? без тормозов, глюков.
Или как в UTFT , подсмотреть , там на програмном уровне вообще SPI реализован, причем в библиотеке реализовано 2 вида SPI ili9341 - 4х проводный и 5ти .
Если делать через hc595 , то можно посмотреть где в либе (esp8266 ili9341) вывод по SPI , и подкорректировать на свои особенности вывода SPI через hc595 .
//// где-то здесь была темка про видосы cbm80amiga tft lcd 8bit esp8266 (можно так и по инету пошукать), что автор обещал закончить и выложить , но прошел год , и походу он уже все забыл , зажилил короче. В темке приводил кое-какие наводящие ссылки, сейчас её не нашел.
////// вообще бы хорошо создать отдельную темку esp8266 и 8bit 16bit TFT LCD дисплей подключение , где выложить все разработки (напрямую или через вспомогательные регистры).
Выложу, через пару дней - когда время будет и подшлифую все.
Библиотеки использую только SPI адаптированная под ESP8266.
Функции передачи данных, инициализации и рисования - пока самописные.
В этой связи и возник вопрос про другую среду разработки в Ardruino IDI не удобно перемещаться по многофайловому проекту. Простейших функций отладки и эмуляции работы нет. Компиляция медленно идет.
мельком заглянул в UTFT - монстер, для универсальности. Инициировать дисплей можно одной строкой, закрасить 2-мя. А в UTFT целые библиотеки "драйверов".
8 -бит напрямую - это почти все пины, а я еще штук 6 датчиков буду вешать и пару реле.
А через регистр без разницы 8, 16 или сколько угодно - количество пинов не меняется. Но падает скорость передачи с увеличением битности. Производительность - я еще буду оптимизировать.
По поводу "Переделки" на 8-бит. Своим 40Вт паяльником трогать резистор размером 1мм на шлейфике - решил, что не мой вариант, проще поставить регистр и припаять еще лишних 16 проводков, но размером побольше :)
А как насчет скорости отрисрвки экрана, можно демо видео? Ну и если делать вывод на 16 bit, лучше использовать mcp23s17 настроив ее на 16 битный режим. В этой микросхеме два порта. Есть таже микросхема работающая по I2C. Правда остаются еще RS, WR, СS и управление посветкой BL.
Спасибо, еще бы чуток раньше про эту микруху узнать. Она еще и в обе стороны гоняет, можно чтение данных организовать. У нас она под заказ, может следующию версию на ней сделаю, экранов несколько подобных.
Пока остаюсь на hc595.
Эксперементы только по ночам получается ставить, днем работа. Думаю пару дней и сделаю отчет, сейчас безжалостно удаляю все из библиотеки UTFT, меньше объем и меньше путанцы в коде. Функции передачи данных и инициализации свои оставляю, там они через чур.
По скорости - пока только устно - медленно, примерно 0,7-1 сек на заливку экрана 320*240. Увеличить частоту SPI не получается - данные теряются. Много времени уходит на дерганье ножек, защелки на регистре и WR на экране. Попробую от них избавиться через счетчик, как на одном из примеров.
Я не понимаю, почему нет функций заливки на самом ILI. Указал цвет и указал колличество пикселей на заливку. Базовые функции по отрисовке интерфейсов - будут моментально работать.
ArtemRu, коли копаете UTFT , то можете взять ускоренную версию UTFT 8bit turbo с вырезанными уловиями для других контроллеров (осталось только 8бит ili9327, и ей подобным ili9341 ili9488 ) , к тому же c нее вырезал еще в добавок Reset , CS , RD . номер диспа использовать именно №31 , разрешение на ваши 320х240 пикс можете подправить в UTFT.cpp
disp_x_size =239; //dsx[model];
disp_y_size = 319; //dsy[model];
ну и пример выбрать 320х240 . Вызов функции UTFT myGLCD(... взять из примера 400х240 (480х320) .
//// mcufriend_kvb тож неплохая либа (на базе adafruit) , но в ней тратится время на универсальность , и некоторые контроллеры надо включать , ибо не залазиют все иниты в atmega328 .
Все конечно хорошо, но вот вопрос вот такие вещи сможет ваш модуль делать. Видео надо прокрутить почти до конца что бы посмотреть на результат работы. И этого удалось добится только применив DMA и естественно контроллера более высокого уровня(с более высоким быстродействием и наличием на его борту узла управления периферией). https://youtu.be/8xuIp0JbNwQ
Все конечно хорошо, но вот вопрос вот такие вещи сможет ваш модуль делать. Видео надо прокрутить почти до конца что бы посмотреть на результат работы. И этого удалось добится только применив DMA и естественно контроллера более высокого уровня(с более высоким быстродействием и наличием на его борту узла управления периферией). https://youtu.be/8xuIp0JbNwQ
Самоцели подобной нет. Задача просто термостат сделать с кнопками или крутилкой на экране плюс возможность в будущем интегрировать в большую сеть. Может пару других функций по отображению параметров и управлению переферией. Тут экран выступает в качестве универсальной кнопки, хочешь две клавиши на свет, хочешь одна, а хочешь это крутилка терморегулятора. Функционал и управляемость устройства можно задать программно.
Пока ради самообучения вешаю экран и с 10-ток датчиков.
Для локальных отображений площадью 50*50 пиксел визуализация должна быть моментальной и с топорными методами.
Но если задуматься... да можно повесить буферную память в контроллер, даже в ESP ресурсов хватит. А пересылку делать "умной". К примеру - при обходе отправлять только новые данные.
Локальный обход массива много быстрее чем SPI.
Если дисплей информационный - информация менятся редко и только небольшая часть - остальное не изменный фон. - та же бабочка на ура будет летать.
Если динамичное изображение - то тут в пролете скорость чуть ниже станет.
PS. Офтоп пошел, по подключению и скорости отпишусь как соберу все воедино.
Мне надо подключить тач чтобы работал.
Вам надо с использованием FMC или
Желательно под BitBang, контроллера с FMC у меня еще нет. Есть stm32f103c8 (rbt), stm32f303cbt.
Хорошая тема. Самое главное актуальная. Сейчас много таких экранов, а информации по их подключению ноль. Считаю что тема до конца не раскрыта. Три страницы про программное подключение и все. Светлые головы подскажите (желательно как пост №4) как подключить тач, SD и тд. Только если можно попроще для простого обывателя типа: пин такой-то с экрана подключается к пину такому-то на ардуино. Если это будет сделано тему можно будет закрыть. Заранее бдагодарен.
diger67, можете помочь с примером работы под stm32, который у Вас есть?
Есть с использованием FMS и сногодрыгом, под какое ядро M3 или M4. Можите посмотреть пока вот эти видео.
https://youtu.be/2yn_j_dLoy4
Мучаюсь с таким точно дисплеем. Вернее теперь мучаюсь только с SD, но в большей степени потому что неправильно соединил некоторые пины. Кому интересно - я его запустил немного не так как тут описано.
Когда такой шилд попал ко мне в руки, первое что я решил запустить - это дисплей. Потом - тач. Сейчас бьюсь над SD, но сдаётся мне что "для тех, кто в танке" - всё написано около штырьков самого дисплея. Во всяком случае то что касается тача и SD - так точно. Вследствии - я неправильно распаял тач и теперь не могу запустить SD, потому что выводы аппаратного SPI, заделаны под определенные контакты, к которым и следует подключать соответвующие, подписанные выводы самого шилда. По другому - никак. Поэтому что у меня работает только дисплей (на правленой UTFT.cpp) и неправильно подключеный тач.
Единственное в этом всё неудобство заключается в том, что между дисплеем и ардуиной должна стоять плата согласования(при подключении 5-ти вольтовой меги - так сто пудово!) или придётся соединять проводками. Кстати на 34-х пиновый шилд дисплея удачно садится 34-х пиновый шлейф от FDD-дисковода. Остаётся только отрезать от него один из разъёмов и распаять на отдельную контактную колодку провода, в соответствии со схемой подключения.
подскажите пожалуйста библиотеку для дисплея ILI9143 от осциллографа DSO138 ,8 битный порт,не нашел всети...
У меня с этими библиотеками работает
Если подключить контакт BL (подсветка) не на +5В, а на цифровой выход с ШИМ - можно включать/ выключать и регулировать яркость подсветки. Ток через этот контакт при включеной подсветке - 4мА.
привет
помогите разобраться с дисплеем,нет никаких надписей
что где,куда,какой вывод не понятно
как сюда фото прекрепить не пойму,снял видео
https://www.youtube.com/watch?v=BXoVnC0mP9w
Судя по тому что на плате установлены двунаправленные порты этот шилд можно запустить с помощью библиотеки UTFT.
Всем привет!Тоже не пойму каквставить здесь изображение На днях получил с али вот такую аурдину и дисплей Никак не пому как правильно ее вставить Всавлял так со сторон разьема питания +3,3 на +3,в +5 вольт на + 5 вольт GND на GND ну и дальше по цепочке С другой стороны LCD_2 на вывод 2 аурдино и выше по цепочке в сторону усб разьема Ни ни накакие действия дисплей не реагирует горит немного только подсветка Вводил и программу для этого дисплея и примеры с урдино -Диод RX мигает а дисплей нулями Я аурдиноист только 3 дня может что не так сделал но сильно кажется что что то с дисплеем не так- ни на какие действия не реагирует ПОМОГИТЕ ПОЖАЛУЙСТА!!! http://www.cqham.ru/forum/attachment.php?attachmentid=267172&d=1500569844
Вот еще ссылка на фото http://www.cqham.ru/forum/attachment.php?attachmentid=267173&d=1500569917
UTFT - она же по spi А у меня паралейная 16 битная шина
UTFT - она же по spi А у меня паралейная 16 битная шина
сергей 80 - нет это я не вам писал , знал бы подсказал а так я сам не особо опытный
у меня вобще ардуина не хотела прошиваться через стандартный юсб
пришлось снести загрущик и прошивать нек на прямую
Не ерундите, UTFT умеет работать по всем протоколам. Надо только грамотно пользоваться библиотекой. К тому же, если в библиотеке конкретный контроллер TFT используется по неподходящему протоколу, легко можно подправив библиотеку поменять и протокол обмена, и разрешение.
diger67 - я новичек в ардуино (работал с другой стодией) но даже я вижу что у меня библиотека 2 версии и там толька СПИ
может и я не туда смотрю,но я просил с распиновкой разобраться
на самом дисплеи никакие вывода не подписаны и это меня убивает
я вот такое только нагуглил , вопрос правильно ли
http://img.banggood.com/thumb/water/oaupload/banggood/images/64/6C/6f365...
а нужен ли дополнительный драйвер что бы работать через стандартный юсб кабель?
Это распиновка совпадающая с распределением пинов в библиотеке UTFT на mega2560.
а нужен ли дополнительный драйвер что бы работать через стандартный юсб кабель?
Александр, привет от подписчика по теме БП АТХ.!
прочти статью
библиотека для HX8357
Александр, привет от подписчика по теме БП АТХ.!
[/quote]
привет,ничего се я наследил ,уже и тут узнают)
да,библиотека пошла,спасибо,только прошивал hex своим прогером
а эта ардуиновская приблуда для прошивки никак не хочет работать
такой ошибки как в статье у меня не показует,всеравно установил драйвер с статьи и ничего не изменилось
пишет
попробовал на ноуте - была ошибка как в статье,обновил драйвер и ничего не изменилось,теже ошибки
даже загрущик не могу записать
загрузчик через CH340 в ардуиновском исполнении вы и не зашьете (ибо нужно подключение по SPI) . Залить можно только скетчи , когда загрузчик уже зашит и отвечает по rx tx.
поищите в инете arduino загрузчик
загрузчик через CH340 в ардуиновском исполнении вы и не зашьете (ибо нужно подключение по SPI) . Залить можно только скетчи , когда загрузчик уже зашит и отвечает по rx tx.
поищите в инете arduino загрузчик
т,е когда я подключал по SPI и стер загрущик то уже ничего не сделать?
та и до стирания загрущика скеч не прошивался(((
у кого то есть библиотека для протеуса для дисплея сконтроллером HX8357B ?
Игрался с этим дисплеем который в начале темы с желтеньким разъёмом.
Это чудо инициализируется при одном условии регистр 0xC7 должен быть в 0xC0 как в доке указано значение по умолчанию.
Во всех же типовых инициализациях там другое значение.
Инит он проходит но рисовать не желает всё равно. Нужен ещё какой то секретик найти но какой я не знаю :(
если кому надо вот схемы на этот шилд и либы для STM и C51 https://yadi.sk/d/sOkpTV6nmLxeU
Понимаю что давно манипуляции были с дисплеем, но все таки спрошу.
Хочу дисплей перевести с 16 бит на 8 бит и судя по даташиту надо изменить IMO с 1 на 0, а по тексту у вас наоборот - это особенность дисплея?
Запустил этот дисплей на stm32f103 arduino ide (не устраивала скорость отрисовки) с помощью библиотеки 8 битной, но на экране только синие цвета (оттенки), а с библиотекой 16 бит дисплей не запускается, если кому интересно общаюсь с создателем портированой библиотеки 16 бит http://www.stm32duino.com/viewtopic.php?p=36142&sid=08ab1a785fc9c48e14a541e55ded9c68#p36142
- это особенность шлейфа.
и как при 16битах? STM32 против arduino mega . быстрее стало одно рисование? (у меня железо то есть, но нет времени проверить.)
а что вы сделали чтоб дисплей физически переключить на 8бит? разные шлейфы - по разному, а иногда и вообще невозможно - когда у самого стекла впритык на шлейфе закорочены все IM.
все верно сказал
речь шла о ili9341, в даташите чтобы с 16бит на 8бит надо IM0 с 0(GND) в 1(+3.3в) при условии что IM3 сидит на +3.3в .
при одном раскладе как вы посмотрели
slider
Сейчас у меня нет mega2560, сравнить не могу. Сравнивал по памяти (своей) с stm32.
16бит я запускал на Due, но для простого проекта слишком дорогой МК.
Если на IM3 1, то не спорю.
Короче надо отклеить от платы дисплей и посмотреть как используются конфигурационные пины.
Про ускорения arduino я все темы перечитал, кроме каких-то частных случаев под определенные мк дисплеев.
Может кому пригодиться...
Подключил дисплей к stm32 по шине 8бит.
Библиотека Adafruit_ILI9341_8bit_STM автор iwalpola
хорошо.
судя по видосам автора библиотеки , прирост в скорости хороший. (на других, смежных видосах c SPI шиной диспов, гораздо быстрее , особенно с разогнанной stm на 128мгц)
большие дисплеи шилды 3.5" на spi шине в продаже существуют.
// а что там за библиотека от другого автора ? ##Better library is available here: https://github.com/stevstrong/Adafruit_TFTLCD_8bit_STM32
А если взять stm32f103vet и использовать FSMC, то работать еще быстрее будет. Тут и DMA уже можно заюзать. Тоже дает неплохой прирост. Вот так примерно работает, правда это уже на F429. https://www.youtube.com/watch?v=CGoGelFqEys
хорошо.
судя по видосам автора библиотеки , прирост в скорости хороший. (на других, смежных видосах c SPI шиной диспов, гораздо быстрее , особенно с разогнанной stm на 128мгц)
большие дисплеи шилды 3.5" на spi шине в продаже существуют.
// а что там за библиотека от другого автора ? ##Better library is available here: https://github.com/stevstrong/Adafruit_TFTLCD_8bit_STM32
А если взять stm32f103vet и использовать FSMC, то работать еще быстрее будет. Тут и DMA уже можно заюзать. Тоже дает неплохой прирост. Вот так примерно работает, правда это уже на F429.
Я любитель в среде программирования МК. И разбираться, к сожалению, в оптимизация/тонкостях у меня катастрафически нет времени.
Если использовать бибилотеку от автора stevstrong, то он тестил FSMC на серии stm32f4 и не гарантирует работу на stm32f103.
Можно подробнее про переделку:
1) как отодрать экран, он просто приклеен? отрывать экран от пластиковой рамки или вместе с пластиковой рамкой;
2) можно чуток подробней про Пины IM0-IM3, требуется на последовательный интерфейс переключить. Судя по фото в этом варианте только на 8 бит реально переделать?
3)насколько я понимаю, на SPI ili9143 автоматически не переходит при выборе контроллера через "CS". Но при этом распайка выполнена и если вручную его заставить работать на SPI, то должно запуститься?
Заранее спасибо за помощь.
1) приклеен на двухсторонний скотч. Разогреть плату (не экран) феном градусов до 150 и потихоньку поднимать.
2)как лично я понял, что да только на 8 бит
3) Остальные пины для подключения флешки и тача.
Из прочитанного на разных форумах, как я понял, SPI реализация зависит от производителя, если он ее предусмотрел то будет, либо с паяльником делать франкенштейна.
я бы посоветовал обратиться к slider.
....
Из прочитанного на разных форумах, как я понял, SPI реализация зависит от производителя, если он ее предусмотрел то будет, либо с паяльником делать франкенштейна.
все верно .
вот один из вариантов франкенштейна http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=17#comment-322689 дисп параллельного интерфейса в SPI . если повезет с возможностями дорожек в шлейфе. Иначе регистр 74HC595 в помощь , или искать дисплей с SPI , такие и шилды готовые на Али есть , хоть 3.5" размерчиком 320x480 .
Спасибо за информацию. Сегодня возьму фен и попробую разобраться с пинами и с распайкой шлейфа.
Регистр я уже прикупил, как резервный вариант :)
Поделитесь потом своим опытом:) даже если неуданый будет.
Тоже бы хотелось переделать на spi, но времени нет разбираться.
Я пока начинающий "изобретатель".
Экранов таких много на форуме было. Я отодрал экран, но толку мало. Доступа к контроллеру нет. Надо либо сам экран дальше расковырять, для доступа к телу контроллера ILI. Или схему шлейфа.
Сейчас экран отложил, буду изучать среду Ardruino IDI. Датчики разные поподключаю. Руку набъю буду через сдвиговые регистры оживлять - как есть в 16-bit режиме.
я цепляю к ESP8266, количество ножек сильно огранично.
Странно, но получилось с первого раза.
ESP266+ЖК на ili9341 16-bit
Пока тестовый вариант, задействовал 6 ног контроллера и два сдвиговых регистра. Позже попробую сократить количество ног контроллера до 4-х. Добавив счетчик или еще один регистр. Окончательный вариант подключения опубликую.
Появилось еще 2 вопроса, точнее просьбы посоветовать:
1)Посоветуйте готовую библиотеку работы с экраном, что бы в ручную все функции и шрифты не делать
2) все делал на Ardruino IDI. для ESP266 нет более адекватной среды? без тормозов, глюков.
ArtemRu , хорошо получилось. хоть бы схему нарисовали и скетч бы привели и какие либы использовали.
А не проще 8 бит гонять по SPI используя одну hc595 , на шлейфе же есть перемычка R1R2 , можно же переставить 8 бит .
Или дисп переведенный на 8 бит можно подключить напрямую к ESP8266 как здесь cbm80amiga https://youtu.be/aquHkKU-PNk , можете также сообразить. Полагаю бибилиотека Adafruit взята за основу. Хотя есть и UTFT для esp8266 https://github.com/gnulabis/UTFT-ESP8266 , http://usemodj.com/2016/03/21/esp8266-utft-320x240-lcd-display-arduino-code/
Или как в UTFT , подсмотреть , там на програмном уровне вообще SPI реализован, причем в библиотеке реализовано 2 вида SPI ili9341 - 4х проводный и 5ти .
Если делать через hc595 , то можно посмотреть где в либе (esp8266 ili9341) вывод по SPI , и подкорректировать на свои особенности вывода SPI через hc595 .
// еще вариант SPI 74HC4094 (вроде подобие настоящего аппаратного SPI , не смотрел), с зачем-то либой на гитхабе http://arduino.ru/forum/apparatnye-voprosy/pomogite-zapustit-24tft-lcd-s-ili9341-v-rezhime-spi#comment-286963
//// где-то здесь была темка про видосы cbm80amiga tft lcd 8bit esp8266 (можно так и по инету пошукать), что автор обещал закончить и выложить , но прошел год , и походу он уже все забыл , зажилил короче. В темке приводил кое-какие наводящие ссылки, сейчас её не нашел.
////// вообще бы хорошо создать отдельную темку esp8266 и 8bit 16bit TFT LCD дисплей подключение , где выложить все разработки (напрямую или через вспомогательные регистры).
Выложу, через пару дней - когда время будет и подшлифую все.
Библиотеки использую только SPI адаптированная под ESP8266.
Функции передачи данных, инициализации и рисования - пока самописные.
В этой связи и возник вопрос про другую среду разработки в Ardruino IDI не удобно перемещаться по многофайловому проекту. Простейших функций отладки и эмуляции работы нет. Компиляция медленно идет.
мельком заглянул в UTFT - монстер, для универсальности. Инициировать дисплей можно одной строкой, закрасить 2-мя. А в UTFT целые библиотеки "драйверов".
8 -бит напрямую - это почти все пины, а я еще штук 6 датчиков буду вешать и пару реле.
А через регистр без разницы 8, 16 или сколько угодно - количество пинов не меняется. Но падает скорость передачи с увеличением битности. Производительность - я еще буду оптимизировать.
По поводу "Переделки" на 8-бит. Своим 40Вт паяльником трогать резистор размером 1мм на шлейфике - решил, что не мой вариант, проще поставить регистр и припаять еще лишних 16 проводков, но размером побольше :)
А как насчет скорости отрисрвки экрана, можно демо видео? Ну и если делать вывод на 16 bit, лучше использовать mcp23s17 настроив ее на 16 битный режим. В этой микросхеме два порта. Есть таже микросхема работающая по I2C. Правда остаются еще RS, WR, СS и управление посветкой BL.
Спасибо, еще бы чуток раньше про эту микруху узнать. Она еще и в обе стороны гоняет, можно чтение данных организовать. У нас она под заказ, может следующию версию на ней сделаю, экранов несколько подобных.
Пока остаюсь на hc595.
Эксперементы только по ночам получается ставить, днем работа. Думаю пару дней и сделаю отчет, сейчас безжалостно удаляю все из библиотеки UTFT, меньше объем и меньше путанцы в коде. Функции передачи данных и инициализации свои оставляю, там они через чур.
По скорости - пока только устно - медленно, примерно 0,7-1 сек на заливку экрана 320*240. Увеличить частоту SPI не получается - данные теряются. Много времени уходит на дерганье ножек, защелки на регистре и WR на экране. Попробую от них избавиться через счетчик, как на одном из примеров.
Я не понимаю, почему нет функций заливки на самом ILI. Указал цвет и указал колличество пикселей на заливку. Базовые функции по отрисовке интерфейсов - будут моментально работать.
ArtemRu, коли копаете UTFT , то можете взять ускоренную версию UTFT 8bit turbo с вырезанными уловиями для других контроллеров (осталось только 8бит ili9327, и ей подобным ili9341 ili9488 ) , к тому же c нее вырезал еще в добавок Reset , CS , RD . номер диспа использовать именно №31 , разрешение на ваши 320х240 пикс можете подправить в UTFT.cpp
ну и пример выбрать 320х240 . Вызов функции UTFT myGLCD(... взять из примера 400х240 (480х320) .
http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=2#comment-192385
http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=19#comment-325460
// на некоторых диспах (не высокого разрешения) , можно безболезненно выкинуть некоторые команды из часто вызывающегося setxy.h
к примеру http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov#comment-93736
//// mcufriend_kvb тож неплохая либа (на базе adafruit) , но в ней тратится время на универсальность , и некоторые контроллеры надо включать , ибо не залазиют все иниты в atmega328 .
http://arduino.ru/forum/apparatnye-voprosy/arduino-i-displei-ot-sotikov-mobilnykh-telefonov?page=15#comment-318766
если задействовать в ней все иниты, то надо ардуину мегу.
Все конечно хорошо, но вот вопрос вот такие вещи сможет ваш модуль делать. Видео надо прокрутить почти до конца что бы посмотреть на результат работы. И этого удалось добится только применив DMA и естественно контроллера более высокого уровня(с более высоким быстродействием и наличием на его борту узла управления периферией). https://youtu.be/8xuIp0JbNwQ
Все конечно хорошо, но вот вопрос вот такие вещи сможет ваш модуль делать. Видео надо прокрутить почти до конца что бы посмотреть на результат работы. И этого удалось добится только применив DMA и естественно контроллера более высокого уровня(с более высоким быстродействием и наличием на его борту узла управления периферией). https://youtu.be/8xuIp0JbNwQ
Самоцели подобной нет. Задача просто термостат сделать с кнопками или крутилкой на экране плюс возможность в будущем интегрировать в большую сеть. Может пару других функций по отображению параметров и управлению переферией. Тут экран выступает в качестве универсальной кнопки, хочешь две клавиши на свет, хочешь одна, а хочешь это крутилка терморегулятора. Функционал и управляемость устройства можно задать программно.
Пока ради самообучения вешаю экран и с 10-ток датчиков.
Для локальных отображений площадью 50*50 пиксел визуализация должна быть моментальной и с топорными методами.
Но если задуматься... да можно повесить буферную память в контроллер, даже в ESP ресурсов хватит. А пересылку делать "умной". К примеру - при обходе отправлять только новые данные.
Локальный обход массива много быстрее чем SPI.
Если дисплей информационный - информация менятся редко и только небольшая часть - остальное не изменный фон. - та же бабочка на ура будет летать.
Если динамичное изображение - то тут в пролете скорость чуть ниже станет.
PS. Офтоп пошел, по подключению и скорости отпишусь как соберу все воедино.