nanorobot 6 23 сентября, 2018 Опубликовано 23 сентября, 2018 (изменено) · Жалоба Провожу эксперименты на Дискавери 429 . Использую uGFX, при работе с родным LCD все устраивает. Но хочется большего. Подключил внешний LCD 800х480. Очень заметно мерцание. Повысил в два раза частотту тактирования интерфейса LTDC процессора. Мерцание снизилось до приемлемого, но при перерисовке ГУИ появились серьезные артефакты. Далее действовал методом научного тыка, а именно запретил UGFX использовать DMA2D, было интересно узнать насколько все ухудшится. Но, странно, артефакты пропали, хотя скорость перерисовки заметно снизилас. Во всех случаях RGB565 и максимальный уровень оптимизации. Изменено 23 сентября, 2018 пользователем nanorobot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 50 23 сентября, 2018 Опубликовано 23 сентября, 2018 · Жалоба Но, странно, артефакты пропали, хотя скорость перерисовки заметно снизилас. А что тут странного-то?? Там узкое место скорость памяти, снизили загрузку шины, уменьшилась скорость отрисовки и стало стабильнее изображение - все логично :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nanorobot 6 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба А что тут странного-то?? Там узкое место скорость памяти, снизили загрузку шины, уменьшилась скорость отрисовки и стало стабильнее изображение - все логично :laughing: Если свою плату делать с 32 битовой SDRAM то можно ожидать удовлетворительной работы с разрешением 800х480? Или сразу смотреть в сторону STM32F7xx/ STM32H7xx ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 50 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Если свою плату делать с 32 битовой SDRAM то можно ожидать удовлетворительной работы с разрешением 800х480? Или сразу смотреть в сторону STM32F7xx/ STM32H7xx ? И что вы там увидите? Правильно, ту же сд-рам :biggrin: 32бита это максимум, как можно увеличить скорость, дальше только контроллеры с ДДР, но это уже не к СТМу... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Некоторые делают двойной буфер кадра, чтобы не мерцало. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aner 7 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Если свою плату делать с 32 битовой SDRAM то можно ожидать удовлетворительной работы с разрешением 800х480? Или сразу смотреть в сторону STM32F7xx/ STM32H7xx ? с разрешением 800х480, ... смотреть только в сторону старших армов с DDR3/4, под линуксами и там где есть нормальный GUI и тп. C STM32H7xx не все алё. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 50 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Некоторые делают двойной буфер кадра, чтобы не мерцало. Тут не в буферах дело, а пропускной способности шины памяти. Если только отрисовка и работает нормально, то при одновременной интенсивной записи уже идет просадка по скорости и вылезают артефакты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба с разрешением 800х480, ... смотреть только в сторону старших армов с DDR3/4, под линуксами и там где есть нормальный GUI и тп. C STM32H7xx не все алё. Не горячитесь вы так. Если кино не надо показывать, то и не нужны все эти старшие. Статическую картинку кто угодно отрисует. Главное, чтобы совсем уж не тормозило. А от мерцания - двойной буфер в помощь. Тут не в буферах дело, а пропускной способности шины памяти. Если только отрисовка и работает нормально, то при одновременной интенсивной записи уже идет просадка по скорости и вылезают артефакты. Ну как бы надо соотносить желания и возможности, наверное. Кстати, а темп прорисовки контролировать не вариант? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 183 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Как было уже озвучено - все упирается в пропускную способность шины. И никакая двойная буферизация не поможет - даже статичная картинка все равно вычитывается из памяти и отрисовывается с отображением прямо на пиксели. Я поднимал частоту и делал другой формат: не RGB888, а ARGB565. Никаких мерцаний на дисплее 800x480. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nanorobot 6 24 сентября, 2018 Опубликовано 24 сентября, 2018 (изменено) · Жалоба Как было уже озвучено - все упирается в пропускную способность шины. И никакая двойная буферизация не поможет - даже статичная картинка все равно вычитывается из памяти и отрисовывается с отображением прямо на пиксели. Я поднимал частоту и делал другой формат: не RGB888, а ARGB565. Никаких мерцаний на дисплее 800x480. Картинка близка к статичной, таблицы, менюшки, текстовые поля. Формат у меня тоже 565б Я бы готов и и 8 битный CLUT использовать, но, насколько я понимаю, в этом случае придется попрощаться со сглаживанием шрифтов, что меня не устраивает. И да, проблема не в мерцании, оно лечится повышением частоты, а в возникающих при этом повышении артефактах. Изменено 24 сентября, 2018 пользователем nanorobot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 183 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Ну покажите артефакты тогда. У меня артефакты были при некачественом питании SDRAM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nanorobot 6 24 сентября, 2018 Опубликовано 24 сентября, 2018 (изменено) · Жалоба Ну покажите артефакты тогда. У меня артефакты были при некачественом питании SDRAM. Если только завтра. Все дела на работе, а я уже дома. Пока могу описать словами. Артефакты очень серьезные. при перемещении курсора - выделенной цветом строки по таблице, рваное изображение этой же таблицы мелькает в стороне от нее. Как то так. В принципе при отключении DMA2D все почти приемлемо, но оставляет неприятное впечатление начальное прорисовывание экрана, сравнительно медленное. Тем более что картинка пока осталась от прежнего LCD 320x240, после того как я переделаю ее на весь 800х480 это станет еще более заметным Изменено 24 сентября, 2018 пользователем nanorobot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 50 24 сентября, 2018 Опубликовано 24 сентября, 2018 · Жалоба Если только завтра. Все дела на работе, а я уже дома. Пока могу описать словами. Артефакты очень серьезные. при перемещении курсора - выделенной цветом строки по таблице, рваное изображение этой же таблицы мелькает в стороне от нее. Как то так. В принципе при отключении DMA2D все почти приемлемо, но оставляет неприятное впечатление начальное прорисовывание экрана, сравнительно медленное. Тем более что картинка пока осталась от прежнего LCD 320x240, после того как я переделаю ее на весь 800х480 это станет еще более заметным У меня подобное было, когда кэш был неправильно настроен, но в данном МК его нет, поэтому странно, как-будто что-то с таймингами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
nanorobot 6 26 сентября, 2018 Опубликовано 26 сентября, 2018 (изменено) · Жалоба Некоторые делают двойной буфер кадра, чтобы не мерцало. двойной буфер кадра не чтоб не мерцало, а чтоб не было артефактов? То есть имеем две копии экранов, перерисовываем в теневом, а потом переключаем? Интересно, uGFX поддерживает такую технику? Ухожу читать... Изменено 26 сентября, 2018 пользователем nanorobot Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
scifi 1 26 сентября, 2018 Опубликовано 26 сентября, 2018 · Жалоба двойной буфер кадра не чтоб не мерцало, а чтоб не было артефактов? То есть имеем две копии экранов, перерисовываем в теневом, а потом переключаем? Интересно, uGFX поддерживает такую технику? Ухожу читать... Двойной буфер, чтобы не раздражала медленная прорисовка. Если артефакты от затыка на шине, двойной буфер не в тему - второй буфер на той же шине, что и первый. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться