реклама на сайте
подробности

 
 
> LTDC + ChromART в STM, Проконсультируйте, кто работал.
SasaVitebsk
сообщение Mar 1 2016, 10:26
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Наконец, дошли руки до нового проекта. Изучил, насколько мозгов хватает. Мне непонятны некоторые моменты.
1. Допустим я хочу работать с LTDC в режиме L8 через CLUT. 565 на выходе. Вроде бы всё понятно никаких проблем не вижу.
При копировании цветных картинок тоже проблем не вижу. Получается что их надо кратными 4 точкам делать да и запускать в 32-ух битном цвете 1 в 1.
Фонты я сделал L4 b вот тут проблема. Либо вручную разворачивать L4 в L8, либо пробовать обычным DMA память - память, источник байт, получатель 16 бит, на предварительно очищенную память (если такое есть ещё). После чего делать альфа преобразование с цветом фонта. и потом прямое копирование DMA2D.
2. Допустим я хочу работать с LTDC в режиме 565 на прямую, а цветные картинки выводить через LUT. Вот тут проблема. По описанию CLUT имеет 2 режима 32/24 бита. Я что-то не пойму. То есть если я хочу преобразовать L8 -> 565(16), то такой возможности в DMA2D нет? И L4 -> 565 тоже нет. Или я чего-то недогоняю?
PS: Нашёл в регистре (DMA2D output PFC control register (DMA2D_OPFCCR)) Color mode: These bits define the color format of the output image. И там режим RGB565. То есть вариант работы 2 просматривается.
Для варианта L4 -> 8, только косвенные подходы. То есть сформировать CLUT на две точки Получится конструкция типа L4L4 -> L8L8.
Правда размер LUT не маленький 256 * 3 = 768 по минимуму. Вроде бы где-то читал, что можно FLASH таблицу использовать.
Короче буду думать пока. Наверное склоняюсь к варианту 2.
===
Если есть кто реализовывал аналогичные варианты - откликнитесь. Любопытно кто как делал. biggrin.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
adrvyho
сообщение Aug 22 2016, 20:51
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 21-08-16
Из: Москва
Пользователь №: 93 041



Цитата
без SDRAM или SRAM нужного размера под видео буфер не имеет практического смысла запускать

Необходимо выводить только примитивы в виде кнопок и текст. Хотя убийственная мысль, что на каждый пиксель экрана необходимо минимум два байта постоянно перезаписываемой памяти, всё больше проникает в мозг. Может есть какие-то уловки с FLASH или SD картой, или ещё какие-то заклинания?!

Цитата
Ищите где производится инициализация LTDC и смотрите где находится видеобуфер


Единственное указание на видеобуфер находится в инициализации слоя 1, пока что-то делать с ним боюсь, только расширил массив до 45000,но это - мёртвому припарки.
Код
   displayLayer1.WindowX0 = 10;
   displayLayer1.WindowX1 = 790;
   displayLayer1.WindowY0 = 10;
   displayLayer1.WindowY1 = 470;
   displayLayer1.PixelFormat = LTDC_PIXEL_FORMAT_ARGB4444;
   displayLayer1.Alpha = 255;
   displayLayer1.Alpha0 = 250;
   displayLayer1.BlendingFactor1 = LTDC_BLENDING_FACTOR1_CA;
   displayLayer1.BlendingFactor2 = LTDC_BLENDING_FACTOR2_CA;
   displayLayer1.FBStartAdress = (uint32_t)&aBufferResult;
   displayLayer1.ImageWidth = 0;
   displayLayer1.ImageHeight = 0;
   displayLayer1.Backcolor.Blue = 250;
   displayLayer1.Backcolor.Green = 0;
   displayLayer1.Backcolor.Red = 200;

   HAL_LTDC_ConfigLayer(&displayTypeDef, &displayLayer1, 0);


Go to the top of the page
 
+Quote Post
SasaVitebsk
сообщение Aug 23 2016, 06:54
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 712
Регистрация: 28-11-05
Из: Беларусь, Витебск, Строителей 18-4-220
Пользователь №: 11 521



Цитата(adrvyho @ Aug 22 2016, 23:51) *
Необходимо выводить только примитивы в виде кнопок и текст. Хотя убийственная мысль, что на каждый пиксель экрана необходимо минимум два байта постоянно перезаписываемой памяти, всё больше проникает в мозг. Может есть какие-то уловки с FLASH или SD картой, или ещё какие-то заклинания?!

Вы бы почитали мой пост предварительно. Тогда бы поняли что DMA2D целесообразен только в режиме 16 или 24-битного цвета.
...
Давайте поясню на пальцах. В МК есть 2 совершенно независимых узла: LTDC (контроллер дисплея) и DMA2D (ускоритель, но фактически контроллер прямого доступа к памяти позволяющий работать с прямоугольными областями памяти).
LTDC фактически отображает область памяти (видеобуфер) на экран. А с помощью DMA2D вы можете модифицировать ваш видеобуфер. То есть сам DMA2D к дисплею никакого отношения не имеет. Поскольку в экране у вас ничего не хранится, то видеобуфер должен быть обязательно. Там находится то, что отображается на дисплее.
Самый экономный режим для вашего МК - 8 бит (L8 - 256 цветов из палитры 16 бит или аналогичный AL44 - палитра 16 цветов с 16 градациями яркости). Для реализации потребуется 800*480 = 384 кб. У Вашего контроллера лишь 256.
Выхода 3.
1) Добавить память внешнюю. Но на проводах не запаяешь. Работать не будет. Придётся переразводить плату.
2) Применить дисплей с меньшим разрешением. Например 4.3" 480*272 = 130кб. Качество картинки будет описанное выше. DMA2D будет использоваться ограниченно (только копирование и заливка).
3) Применить дисплей с собственным контроллером типа 1963 или другим. Там память находится на самом дисплее. DMA2D в этом случае теряет смысл.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- SasaVitebsk   LTDC + ChromART в STM   Mar 1 2016, 10:26
- - Шаманъ   Цитата(SasaVitebsk @ Mar 1 2016, 12:26) К...   Mar 1 2016, 15:03
- - SasaVitebsk   Спасибо. А всё же. Кто-нибудь реализовывал графику...   Mar 2 2016, 07:15
- - DrGluck   Вечер добрый ! Тут лучше начать с "конца...   Mar 2 2016, 17:52
|- - adnega   Цитата(DrGluck @ Mar 2 2016, 20:52) В дис...   Mar 2 2016, 18:53
|- - SasaVitebsk   Цитата(DrGluck @ Mar 2 2016, 20:52) Тут л...   Mar 4 2016, 07:51
|- - NaughtyFreak   Цитата(SasaVitebsk @ Mar 4 2016, 10:51) А...   Mar 4 2016, 08:29
|- - skripach   Цитата(SasaVitebsk @ Mar 4 2016, 10:51) L...   Mar 6 2016, 04:52
- - Rash   если с SDRAM проблемы, то почему не подключить обы...   Mar 2 2016, 18:15
- - NaughtyFreak   Модно я здесь спрошу не совсем в тему? Есть диспле...   Mar 3 2016, 14:16
|- - Obam   Цитата(NaughtyFreak @ Mar 3 2016, 18:16) ...   Mar 3 2016, 14:31
|- - aaarrr   Цитата(NaughtyFreak @ Mar 3 2016, 17:16) ...   Mar 3 2016, 14:48
|- - NaughtyFreak   Цитата(aaarrr @ Mar 3 2016, 17:48) Если п...   Mar 3 2016, 14:50
- - NaughtyFreak   никак, это готовый модуль с интерфейсом RGB 24 bit...   Mar 3 2016, 14:35
|- - Obam   Цитата(NaughtyFreak @ Mar 3 2016, 18:35) ...   Mar 3 2016, 14:42
- - NaughtyFreak   Есть даташит с распинвокой и таймингами   Mar 3 2016, 14:46
|- - Obam   Цитата(NaughtyFreak @ Mar 3 2016, 18:46) ...   Mar 3 2016, 14:54
|- - NaughtyFreak   Цитата(Obam @ Mar 3 2016, 17:54) Может по...   Mar 3 2016, 15:07
|- - Obam   Цитата(NaughtyFreak @ Mar 3 2016, 19:07) ...   Mar 4 2016, 09:02
|- - SasaVitebsk   Цитата(Obam @ Mar 4 2016, 12:02) Да, инте...   Mar 4 2016, 12:07
|- - Obam   Цитата(SasaVitebsk @ Mar 4 2016, 16:07) Н...   Mar 4 2016, 12:21
|- - SasaVitebsk   Цитата(Obam @ Mar 4 2016, 15:21) Не надо ...   Mar 4 2016, 12:28
- - DrGluck   "... если с SDRAM проблемы, то почему не подк...   Mar 3 2016, 15:00
- - NaughtyFreak   Да понятно, что так правильно, но у меня всего ост...   Mar 4 2016, 11:31
- - SasaVitebsk   Вроде бы со всем разобрался, но некоторые вопросы ...   Mar 11 2016, 08:01
- - SasaVitebsk   Короче пишу на всех парах приложение. Сейчас лабаю...   Mar 30 2016, 07:19
- - lleeloo   Нужно больше гуев, хороши и разных=) Чем не устрои...   Mar 31 2016, 21:34
|- - SasaVitebsk   Цитата(lleeloo @ Apr 1 2016, 00:34) Нужно...   Apr 1 2016, 05:42
|- - AleksBak   Цитата(lleeloo @ Apr 1 2016, 01:34) Нужно...   Apr 1 2016, 07:35
|- - scifi   Цитата(lleeloo @ Apr 1 2016, 00:34) Нужно...   Apr 1 2016, 08:11
||- - lleeloo   Цитата(scifi @ Apr 1 2016, 11:11) У меня ...   Apr 1 2016, 20:06
||- - scifi   Цитата(lleeloo @ Apr 1 2016, 23:06) Ляпае...   Apr 1 2016, 20:19
||- - lleeloo   Цитата(scifi @ Apr 1 2016, 23:19) Я не де...   Apr 1 2016, 20:28
||- - scifi   Цитата(lleeloo @ Apr 1 2016, 23:28) В так...   Apr 1 2016, 20:33
||- - lleeloo   Цитата(scifi @ Apr 1 2016, 23:33) Это обо...   Apr 1 2016, 20:55
||- - SasaVitebsk   Цитата(lleeloo @ Apr 1 2016, 23:55) Да, л...   Apr 4 2016, 09:28
|- - mantech   Цитата(lleeloo @ Apr 1 2016, 00:34) Нужно...   Apr 2 2016, 14:12
- - Rash   смотрели, не всё гладко, но полностью написать сво...   Apr 1 2016, 06:52
- - Огурцов   лучше бы веб-браузер под stm кто написал   Apr 2 2016, 15:25
- - Rash   Цитата(mantech @ Apr 2 2016, 18:12) Напри...   Apr 2 2016, 18:36
|- - mantech   Цитата(Rash @ Apr 2 2016, 21:36) ИМХО, Em...   Apr 5 2016, 08:12
- - Rash   при удалении окна память высвобождается, но вот ка...   Apr 4 2016, 13:53
|- - SasaVitebsk   Цитата(Rash @ Apr 4 2016, 16:53) Про рабо...   Apr 5 2016, 05:58
- - Rash   Про ускоритель понятно, но это драйвер и на какой ...   Apr 5 2016, 07:58
|- - SasaVitebsk   Цитата(Rash @ Apr 5 2016, 10:58) Про уско...   Apr 5 2016, 08:49
|- - mantech   Цитата(SasaVitebsk @ Apr 5 2016, 11:49) Д...   Apr 5 2016, 11:39
- - Rash   Цитата(SasaVitebsk @ Apr 5 2016, 12:49) С...   Apr 5 2016, 10:44
|- - mantech   Цитата(Rash @ Apr 5 2016, 13:44) А если з...   Apr 5 2016, 13:01
- - Rash   ну тут каждому своё, мне он подходит как раз из-за...   Apr 5 2016, 12:43
- - Rash   есть ещё виджеты для которых это необходимо как: г...   Apr 5 2016, 13:52
- - картошка   Делал на 429 . Запускал режим LUT8, дисплей 800x60...   Apr 7 2016, 15:20
|- - Шаманъ   Цитата(картошка @ Apr 7 2016, 18:20) Дела...   Apr 7 2016, 17:27
|- - SpyBot   Цитата(Шаманъ @ Apr 7 2016, 20:27) 40*2^2...   Apr 11 2016, 16:47
|- - niXto   Цитата(SpyBot @ Apr 11 2016, 19:47) Какие...   Apr 11 2016, 17:27
- - Шаманъ   Цитата(SpyBot @ Apr 11 2016, 19:47) Какие...   Apr 11 2016, 18:32
|- - SpyBot   Цитата(Шаманъ @ Apr 11 2016, 21:32) Очень...   Apr 11 2016, 20:53
|- - aaarrr   Цитата(SpyBot @ Apr 11 2016, 23:53) Еще о...   Apr 11 2016, 21:04
||- - SpyBot   Цитата(aaarrr @ Apr 12 2016, 00:04) А у и...   Apr 11 2016, 21:29
|- - SasaVitebsk   Цитата(SpyBot @ Apr 11 2016, 23:53) Подсв...   Apr 12 2016, 06:29
|- - SpyBot   Цитата(SasaVitebsk @ Apr 12 2016, 09:29) ...   Apr 14 2016, 00:43
|- - AVI-crak   Вся разница в 16 и 32 бита шины sdram на st чипе -...   Apr 14 2016, 08:46
|- - Шаманъ   Цитата(AVI-crak @ Apr 14 2016, 11:46...   Apr 14 2016, 08:56
||- - AVI-crak   Цитата(Шаманъ @ Apr 14 2016, 15:56) По се...   Apr 14 2016, 16:50
||- - mantech   Цитата(AVI-crak @ Apr 14 2016, 19:50...   Apr 14 2016, 18:02
||- - AVI-crak   Цитата(mantech @ Apr 15 2016, 01:02) Вы к...   Apr 14 2016, 18:48
|- - SpyBot   Цитата(AVI-crak @ Apr 14 2016, 11:46...   Apr 14 2016, 10:43
- - Шаманъ   Цитата(SpyBot @ Apr 11 2016, 23:53) У мен...   Apr 12 2016, 06:31
- - SasaVitebsk   Спасибо. Но вроде как для светодиодов глубоко по б...   Apr 12 2016, 07:40
|- - aaarrr   Цитата(SasaVitebsk @ Apr 12 2016, 10:40) ...   Apr 12 2016, 07:57
- - Огурцов   какой интерес считывать из внешнего озу в мк, чтоб...   Apr 14 2016, 20:52
|- - Шаманъ   Цитата(Огурцов @ Apr 14 2016, 23:52) како...   Apr 15 2016, 07:53
||- - SpyBot   Цитата(Шаманъ @ Apr 15 2016, 10:53) Кто б...   Apr 15 2016, 21:43
|- - mantech   Цитата(Огурцов @ Apr 14 2016, 23:52) како...   Apr 15 2016, 08:31
- - Огурцов   не надо плиску, с плиской может и стм не потребова...   Apr 15 2016, 18:00
- - Огурцов   а сколько надо ? внутренней уже вполне хватает на ...   Apr 16 2016, 07:14
- - SpyBot   Нет, ну внутренней... Внутренней хватает всего на ...   Apr 16 2016, 12:12
- - Огурцов   на 720*575 хватает   Apr 16 2016, 14:47
- - Шаманъ   Цитата(Огурцов @ Apr 16 2016, 10:14) а ск...   Apr 16 2016, 18:09
- - Огурцов   семисотые посмотрите более 800*600 на встраиваемых...   Apr 16 2016, 19:02
- - Шаманъ   Цитата(Огурцов @ Apr 16 2016, 22:02) семи...   Apr 17 2016, 04:38
|- - AVI-crak   Кстати, у чипов st их ускоритель имеет всего две п...   Apr 17 2016, 07:06
- - Шаманъ   Цитата(AVI-crak @ Apr 17 2016, 10:06...   Apr 17 2016, 07:41
- - Огурцов   Цитата(Шаманъ @ Apr 17 2016, 04:38) двойн...   Apr 17 2016, 08:33
|- - Шаманъ   Цитата(Огурцов @ Apr 17 2016, 11:33) ну п...   Apr 17 2016, 17:26
- - Огурцов   у меня разные идеи - а вы выбираете   Apr 17 2016, 18:13
|- - Шаманъ   Цитата(Огурцов @ Apr 17 2016, 21:13) у ме...   Apr 18 2016, 06:23
- - adrvyho   Добрый день, дорогие форумчане. Тоже решил идти в ...   Aug 22 2016, 14:39
|- - Шаманъ   Цитата(adrvyho @ Aug 22 2016, 17:39) Подк...   Aug 22 2016, 15:42
- - adrvyho   В видеобуфере, так подозреваю, моя проблема и крое...   Aug 22 2016, 16:05
|- - Шаманъ   Цитата(adrvyho @ Aug 22 2016, 19:05) Я та...   Aug 22 2016, 18:11
- - Rash   без SDRAM или SRAM нужного размера под видео буфер...   Aug 22 2016, 19:40
- - Rash   под ваш LCD нужен видео буфер 800*480*2 иначе прос...   Aug 23 2016, 05:41
- - adrvyho   Всем спасибо большое за ответ!!! Понял...   Aug 24 2016, 16:43
|- - adnega   Цитата(adrvyho @ Aug 24 2016, 19:43) а на...   Aug 25 2016, 09:27
|- - adrvyho   Цитата(adnega @ Aug 25 2016, 09:27) Нужно...   Aug 25 2016, 15:00
|- - adnega   Цитата(adrvyho @ Aug 25 2016, 18:00) Имен...   Aug 25 2016, 15:27
|- - adrvyho   Цитата(adnega @ Aug 25 2016, 15:27) Кусок...   Aug 25 2016, 15:38
- - SasaVitebsk   В доке на МК имеется достаточно детальное описание...   Aug 25 2016, 08:34
2 страниц V   1 2 >


Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 14:24
Рейтинг@Mail.ru


Страница сгенерированна за 0.01506 секунд с 7
ELECTRONIX ©2004-2016