jcxz 51 October 26, 2017 Posted October 26, 2017 · Report post Так-таки и ок? У меня скорость бегущих строк намного ниже чем по этой ссылке. Если с такой большой скоростью строка будет бежать, она будет нечитабельна на любой FPS. На бегущих счётчиках тоже не видно никаких артефактов, дёрганий и т.п. Quote Share this post Link to post Share on other sites More sharing options...
aaarrr 26 October 26, 2017 Posted October 26, 2017 · Report post У меня скорость бегущих строк намного ниже чем по этой ссылке. Речь не о скорости, а о плавности. На бегущих счётчиках тоже не видно никаких артефактов, дёрганий и т.п. Не видно ровно до тех пор, пока рядом не окажется счетчика с 60 FPS. 30 - это практически нижняя граница комфортного восприятия движения. Quote Share this post Link to post Share on other sites More sharing options...
Obam 8 October 26, 2017 Posted October 26, 2017 · Report post Речь не о скорости, а о плавности. Не видно ровно до тех пор, пока рядом не окажется счетчика с 60 FPS. 30 - это практически нижняя граница комфортного восприятия движения. Кино - 24 fps и ничего, никно не жужжит… или это не те fps? Quote Share this post Link to post Share on other sites More sharing options...
aaarrr 26 October 26, 2017 Posted October 26, 2017 · Report post Кино - 24 fps и ничего, никно не жужжит… или это не те fps? Так ведь не от хорошей жизни 24 FPS выбрали, просто плёнка дюже дорога была. Quote Share this post Link to post Share on other sites More sharing options...
Sanya_kv 0 October 26, 2017 Posted October 26, 2017 · Report post Кино - 24 fps и ничего, никно не жужжит… или это не те fps? В кино каждый кадр в отдельности смазан. Тема эта достаточно обширна, описана боле менее здесь https://habrahabr.ru/post/338796/ (раскрывается в комментариях). На хабаре так же есть статья, как сделать нормальную анимацию с низким FPS. Найти сейчас не смог. Читал пару лет назад. Quote Share this post Link to post Share on other sites More sharing options...
Шаманъ 0 October 26, 2017 Posted October 26, 2017 · Report post а почему так нельзя рисовать прямоугольники ? вроде самое оно, если ширина регистра позволяет Обычный прямоугольник можно, но вопрос был про "рисование через одну точку" - так уже прямоугольник не выйдет. олл, почему дисплей подёргивается, когда dma2d работает ? т.е. картинка как бы сдвигается в сторону Не хватает производительности подсистемы памяти. Ну вот, а у нормального UI перерисовка не должна занимать больше 16 мс (т.е. обеспечивать 60 к/с), иначе плавной анимации не будет по определению. Да, TFT-экран, конечно, надо обслуживать с частотой 60, а не 30. Даташит позволяет, но пользователей тоже надо уважать. У меня все плавно. Я как-то по этому поводу проводил эксперименты - если делать с умом, то начиная от 22..24fps все можно сделать, чтобы выглядело плавно. Посмотрите с каким fps Вы смотрите фильмы, и ничего не дергается... В любом случае есть хороший запас - у меня память 16бит, ожно перейти на 32бита, но под мою задачу смысла нет. Прямоугольник рисовать можно, Пример: Это будет обычный прямоугольник, а вопрос был про через одну точку, так не выйдет. Quote Share this post Link to post Share on other sites More sharing options...
aaarrr 26 October 26, 2017 Posted October 26, 2017 · Report post ...если делать с умом, то начиная от 22..24fps все можно сделать, чтобы выглядело плавно. Вот с этого момента можно подробнее, какие техники применяются для обеспечения плавности? Quote Share this post Link to post Share on other sites More sharing options...
VCucumber 0 October 26, 2017 Posted October 26, 2017 · Report post Обычный прямоугольник можно, но вопрос был про "рисование через одну точку" - так уже прямоугольник не выйдет. всё правильно Quote Share this post Link to post Share on other sites More sharing options...
VCucumber 0 October 27, 2017 Posted October 27, 2017 (edited) · Report post Либо у Вас высокая частота вывода в общем да, была пропущена установка прескалера RCC_PLLSAIDivR_Div8 что даёт где-то восьмикратный запас по разрешению зы: кстати, в 32 битном (vs 24) режиме даже без прескалера не дёргается Edited October 27, 2017 by Огурцов Quote Share this post Link to post Share on other sites More sharing options...
Sanya_kv 0 October 28, 2017 Posted October 28, 2017 · Report post ещё вопрос: есть мысли как подключить к stm второй дисплей ? с разными картинками, конечно Побаловался с MIPI DSI в командном режиме. Идея его в том, что на индикаторе используется графический контроллер со своей GRAM памятью (например OTM8009A), передача данных происходит при необходимости изменения картинки. Соответственно к DSI шине вполне возможно подключить несколько индикаторов. "Шаманъ" Случайно не проверяли, что быстрее копирует DMA2D или просто DMA. Имеется в виду режим MemToMem Quote Share this post Link to post Share on other sites More sharing options...
mantech 7 October 28, 2017 Posted October 28, 2017 · Report post Идея его в том, что на индикаторе используется графический контроллер со своей GRAM памятью (например OTM8009A), передача данных происходит при необходимости изменения картинки. Дак ведь на скорость это не влияет, только на энергопотребление, когда потока данных нет. Quote Share this post Link to post Share on other sites More sharing options...
uriy 1 October 28, 2017 Posted October 28, 2017 · Report post Подскажите MIPI DSI дисплеи имеют в себе контроллер и встроенный framebuffer как например ILI9341, SSD1351 или же они тупые и в них нужно только гнать поток данных как в дисплеях с RGB интерфейсом? Quote Share this post Link to post Share on other sites More sharing options...
Шаманъ 0 October 29, 2017 Posted October 29, 2017 · Report post Вот с этого момента можно подробнее, какие техники применяются для обеспечения плавности? В моем случае достаточно синхронизации рисования и анимации с кадровой разверткой, а также разумный выбор скорости анимации - если будет медленно, то это не интересно, кроме того "дефекты" разные на маленькой скорости более заметны. Очень большая скорость приведет к необходимости сглаживания (motion blur) или увеличения частоты кадров. Нужно выбрать золотую середину :). Например, для всяких кнопочек выползающих сбоку экрана что-то около 200мс на всю анимацию при 30к/с самое то. Естественно многое зависит от того, что за объекты Вы изменяете на экране и как они движутся/изменяются. "Шаманъ" Случайно не проверяли, что быстрее копирует DMA2D или просто DMA. Имеется в виду режим MemToMem Не проверял. У меня узкое место это 16битная SDRAM, с такой памятью подозреваю глобальной разницы не будет. Quote Share this post Link to post Share on other sites More sharing options...
golf2109 0 October 29, 2017 Posted October 29, 2017 · Report post Подскажите MIPI DSI дисплеи имеют в себе контроллер и встроенный framebuffer как например ILI9341, SSD1351 или же они тупые и в них нужно только гнать поток данных как в дисплеях с RGB интерфейсом? они типа "тупые" Quote Share this post Link to post Share on other sites More sharing options...
Sanya_kv 0 October 30, 2017 Posted October 30, 2017 · Report post Подскажите MIPI DSI дисплеи имеют в себе контроллер и встроенный framebuffer как например ILI9341, SSD1351 или же они тупые и в них нужно только гнать поток данных как в дисплеях с RGB интерфейсом? Есть два базовых режима интерфейса MIPI DSI: "Video mode" и "Command mode". В видео режиме они, как Вы выразились "тупые", в командный режим подразумевает что для хранения картинки в дисплее используется своя GRAM, т.е. встроенный framebuffer. К сожалению далеко не все контроллеры с MIPI DSI поддерживают командный режим. Мне так и не удалось найти дисплей с поддержкой командного режима и разрешения хотя бы 1280х800. Quote Share this post Link to post Share on other sites More sharing options...