Например TDA7294

Форум РадиоКот :: Просмотр темы - STM32 разработка GUI
Форум РадиоКот
https://radiokot.ru/forum/

STM32 разработка GUI
https://radiokot.ru/forum/viewtopic.php?f=59&t=176379
Страница 2 из 2

Автор:  COKPOWEHEU [ Пт апр 02, 2021 18:09:19 ]
Заголовок сообщения:  Re: STM32 разработка GUI

jcxz, ну да, ну да. По DMA отправлять кусок фоновой картинки и куски всех кнопок с разными смещениями. Вместо того чтобы сделать по-человечески и рисовать линиями и прямоугольниками.
Ну и про "по частям" кому другому втирайте.

Автор:  Foxhound [ Сб апр 03, 2021 12:01:36 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Итого в сухом остатке....
Я правильно понимаю, что все изобретают свои велосипеды?

Автор:  Zhuk72 [ Сб апр 03, 2021 13:50:12 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Для работы с цветными графическими дисплеями нужно иметь 2 основные функции: начальную инициализацию (с сопутствующими ресетами, ориентацией и пр.) и вывод одной точки.
Далее создаются или находятся железонезависимые функции графических примитивов: рисование линии, рисование 4-угольника, рисование окружности, ну и работа со шрифтами. Есть еще сопутствующие функции, типа выбора окна, но это уже по ходу дела выявляется.
Так вот GUI часто состоит только из этих примитивов по отдельности и в комбинации друг с другом.

А тач-скрин к самому ЖК никак не относится.
При считывании информации с сенсора вы получаете координаты касания, к которым соотносите координаты графических объектов и так получаете управление.

Это то, что я понял недавно (и реализовал), впервые связавшись с графическим ЖК (ST7735).

Автор:  jcxz [ Сб апр 03, 2021 13:59:04 ]
Заголовок сообщения:  Re: STM32 разработка GUI

jcxz, ну да, ну да. По DMA отправлять кусок фоновой картинки и куски всех кнопок с разными смещениями. Вместо того чтобы сделать по-человечески и рисовать линиями и прямоугольниками.
Ну и про "по частям" кому другому втирайте.
Вижу, что ничего не поняли из того что я писал. :dont_know:
Выдохните и перечитайте ещё раз.

Добавлено after 2 minutes 56 seconds:
вывод одной точки.
Далее создаются или находятся железонезависимые функции графических примитивов:
Если примитивы рисовать поточечно, то GUI будет работать со скоростью черепахи, сжирая все ресурсы CPU при этом.

Автор:  Reflector [ Сб апр 03, 2021 14:01:09 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Для работы с цветными графическими дисплеями нужно иметь 2 основные функции: начальную инициализацию (с сопутствующими ресетами, ориентацией и пр.) и вывод одной точки.

Да, если хочется чтобы STM32 отрисовывал графику медленнее AVR, то именно так и нужно делать :)

Автор:  COKPOWEHEU [ Сб апр 03, 2021 14:44:13 ]
Заголовок сообщения:  Re: STM32 разработка GUI

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

Автор:  jcxz [ Сб апр 03, 2021 15:18:28 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Если вы неспособны сформулировать свою мысль так, чтобы ее можно было однозначно и правильно понять с первого раза, не стоит винить в этом окружающих. Попробуйте еще раз.
Разжую предельно просто: В одном моём проекте используется цветной LCD 320x240 пикселей, на котором рисуется GUI. Рисуется в видеопамяти, которая находится во внутренней памяти STM32F4xx и пересылается затем в память контроллера LCD. Без использования внешней памяти. Скорость вывода - предельная для данного интерфейса подключения.
Начинайте думать как мне это удалось. При том что, как думаете:
Угу. Учитывая, что в контроллере физически не хватит памяти даже на пол-картинки.
:)))
У кого-то "и на полкартинки не хватит", а у меня всё это заняло всего = 38400+4096 байт внутренней памяти МК.
Видимо всё дело в кривости рук. :)))

Автор:  COKPOWEHEU [ Сб апр 03, 2021 16:42:21 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Объем памяти для видеобуфера (поскольку вы говорите о видеобуфере как о едином целом, повода рассматривать отображение по частям нет) 320х240х2 = 150 кБ. Оперативки в контроллере stm32f103 всего 20 кБ. Мы ведь рассматриваем наиболее распространенный случай. Впрочем и в других контроллерах пускать на ветер 150 кБ вряд ли кто станет.
Отсюда вывод: реализовать все именно так, как вы описали невозможно.
Значит описание не соответствует действительности.
Цитата:
Начинайте думать как мне это удалось.
Вы ссылку мою смотрели? Даже не начинайте думать как мне это удалось.

Автор:  linkov1959 [ Сб апр 03, 2021 18:00:41 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Foxhound, Так есть же VTFT для STM32 у ME.https://forum.mikroe.com/
Все как на VB с формами и элементами управления. Нет поддержки SPI, но умельцы решают эту проблему. Я баловался с ILI9341.

Автор:  jcxz [ Сб апр 03, 2021 23:12:46 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Отсюда вывод: реализовать все именно так, как вы описали невозможно.
Ладно бы если-б только вашей квалификации не хватало, чтобы самостоятельно найти решение. Но вы даже не умеете прочитать и понять готовых советов как это делается, а ведь ничего экстраординарного нет:
Для GUI (без полупрозрачностей!) достаточно 4 бит на пиксел - и на весь видеобуфер вполне хватит внутренней памяти многих нежирных МК.
:dont_know:

Автор:  COKPOWEHEU [ Вс апр 04, 2021 09:15:49 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Цитата:
достаточно 4 бит на пиксел - и на весь видеобуфер вполне хватит внутренней памяти многих нежирных МК.

Хорошо, если вы не способны посчитать даже это, я помогу: объем всего видеобуфера для дисплея 320х240х(4/8) = 38400. Объем памяти 20480, чуть ли не вдвое меньше.
Если вы еще пять раз повторите подобную чушь, правдоподобнее она не станет.
.
Конечно, на подобных контроллерах рисовать GUI можно. Но обычно это делается послойно. Сначала из какой-нибудь постоянно памяти загружается фон, потом поверх него рисуются по одному элементы управления. При реакции на события перерисовываются только те элементы, которым нужна анимация.
Более сложный вариант - рисовать как в компьютерных играх чуть ли не трассировкой лучей: на какой координате (и соответственно цвету пикселя) каждого элемента соответствует каждый пиксель экрана. Такой способ более плавный, но гораздо более сложный и затратный по скорости.
В совсем мощных контроллерах - по крайней мере если на плате установлено очень много оперативки - можно уже пользоваться способом jcxz - выделить огромный буфер, отрисовать в него все, потом разом выплюнуть на дисплей.
.
Но по-хорошему, повторяю, не стоит идти на поводу моды и маркетологов: интерфейс в первую очередь должен быть удобным, что подразумевает наличие механических элементов управления и своего индикатора на каждый контролируемый параметр.

Автор:  Eddy_Em [ Вс апр 04, 2021 10:24:42 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Да не нужен там такой огромный буфер! Разделить экран на спрайты 8х8 для цвета, понадобится не более 10 байт на спрайт, т.е. в 6.4 раза меньше, чем надо для попиксельного отображения. Правда, это все равно много.

Автор:  COKPOWEHEU [ Вс апр 04, 2021 15:30:00 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Для обычных применений - разумеется не нужен. Осталось донести эту мысль до jcxz.
Достаточно, как я и описал, по очереди вывести все что нужно - фон, элементы управления и т.д. Ну мигнет оно при первой отрисовке, ну и что.
Но не забывайте о мощных системах, где уже полноценный процессор и полноценная ОС используется. Впрочем, там и полноценные графические библиотеки доступны. Ну хотя бы framebuffer / X11.

Автор:  jcxz [ Вс апр 04, 2021 23:07:06 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Объем памяти 20480, чуть ли не вдвое меньше.
Где 20480??? В STM32F469? Что за бред? :shock: Откройте мануал на него - прочитайте сколько там ОЗУ.
Вижу что вам очень хочется спорить, так что готовы нести любую чушь лишь бы спорить....

Добавлено after 1 minute 18 seconds:
Для обычных применений - разумеется не нужен. Осталось донести эту мысль до jcxz.
Донесите лучше мануал на STM32F469 до себя, чтобы не нести всякую ахинею.

Эксперд млин.... :facepalm:

Автор:  COKPOWEHEU [ Вс апр 04, 2021 23:55:05 ]
Заголовок сообщения:  Re: STM32 разработка GUI

Цитата:
Где 20480??? В STM32F469?
Нет, конечно. В stm32f103, мы же про него говорим.

Страница 2 из 2 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/