Перейти к содержанию
    

32F769IDISCOVERY + MIPI DSI 720p (1280x720)?

У меня скорость бегущих строк намного ниже чем по этой ссылке. Если с такой большой скоростью строка будет бежать, она будет нечитабельна на любой FPS.

На бегущих счётчиках тоже не видно никаких артефактов, дёрганий и т.п.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня скорость бегущих строк намного ниже чем по этой ссылке.

Речь не о скорости, а о плавности.

 

На бегущих счётчиках тоже не видно никаких артефактов, дёрганий и т.п.

Не видно ровно до тех пор, пока рядом не окажется счетчика с 60 FPS.

30 - это практически нижняя граница комфортного восприятия движения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Речь не о скорости, а о плавности.

 

 

Не видно ровно до тех пор, пока рядом не окажется счетчика с 60 FPS.

30 - это практически нижняя граница комфортного восприятия движения.

Кино - 24 fps и ничего, никно не жужжит… или это не те fps?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кино - 24 fps и ничего, никно не жужжит… или это не те fps?

Так ведь не от хорошей жизни 24 FPS выбрали, просто плёнка дюже дорога была.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кино - 24 fps и ничего, никно не жужжит… или это не те fps?

В кино каждый кадр в отдельности смазан. Тема эта достаточно обширна, описана боле менее здесь https://habrahabr.ru/post/338796/ (раскрывается в комментариях).

На хабаре так же есть статья, как сделать нормальную анимацию с низким FPS. Найти сейчас не смог. Читал пару лет назад.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

а почему так нельзя рисовать прямоугольники ? вроде самое оно, если ширина регистра позволяет

Обычный прямоугольник можно, но вопрос был про "рисование через одну точку" - так уже прямоугольник не выйдет.

 

олл, почему дисплей подёргивается, когда dma2d работает ? т.е. картинка как бы сдвигается в сторону

Не хватает производительности подсистемы памяти.

 

Ну вот, а у нормального UI перерисовка не должна занимать больше 16 мс (т.е. обеспечивать 60 к/с), иначе плавной анимации не будет по определению.

Да, TFT-экран, конечно, надо обслуживать с частотой 60, а не 30. Даташит позволяет, но пользователей тоже надо уважать.

У меня все плавно. Я как-то по этому поводу проводил эксперименты - если делать с умом, то начиная от 22..24fps все можно сделать, чтобы выглядело плавно.

 

Посмотрите с каким fps Вы смотрите фильмы, и ничего не дергается...

 

В любом случае есть хороший запас - у меня память 16бит, ожно перейти на 32бита, но под мою задачу смысла нет.

 

Прямоугольник рисовать можно, Пример:

Это будет обычный прямоугольник, а вопрос был про через одну точку, так не выйдет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...если делать с умом, то начиная от 22..24fps все можно сделать, чтобы выглядело плавно.

Вот с этого момента можно подробнее, какие техники применяются для обеспечения плавности?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Обычный прямоугольник можно, но вопрос был про "рисование через одну точку" - так уже прямоугольник не выйдет.

всё правильно

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Либо у Вас высокая частота вывода

в общем да, была пропущена установка прескалера RCC_PLLSAIDivR_Div8

что даёт где-то восьмикратный запас по разрешению

 

зы: кстати, в 32 битном (vs 24) режиме даже без прескалера не дёргается

 

Изменено пользователем Огурцов

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ещё вопрос: есть мысли как подключить к stm второй дисплей ? с разными картинками, конечно

Побаловался с MIPI DSI в командном режиме. Идея его в том, что на индикаторе используется графический контроллер со своей GRAM памятью (например OTM8009A), передача данных происходит при необходимости изменения картинки. Соответственно к DSI шине вполне возможно подключить несколько индикаторов.

 

"Шаманъ" Случайно не проверяли, что быстрее копирует DMA2D или просто DMA. Имеется в виду режим MemToMem

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Идея его в том, что на индикаторе используется графический контроллер со своей GRAM памятью (например OTM8009A), передача данных происходит при необходимости изменения картинки.

 

Дак ведь на скорость это не влияет, только на энергопотребление, когда потока данных нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите MIPI DSI дисплеи имеют в себе контроллер и встроенный framebuffer как например ILI9341, SSD1351 или же они тупые и в них нужно только гнать поток данных как в дисплеях с RGB интерфейсом?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот с этого момента можно подробнее, какие техники применяются для обеспечения плавности?

В моем случае достаточно синхронизации рисования и анимации с кадровой разверткой, а также разумный выбор скорости анимации - если будет медленно, то это не интересно, кроме того "дефекты" разные на маленькой скорости более заметны. Очень большая скорость приведет к необходимости сглаживания (motion blur) или увеличения частоты кадров. Нужно выбрать золотую середину :). Например, для всяких кнопочек выползающих сбоку экрана что-то около 200мс на всю анимацию при 30к/с самое то.

Естественно многое зависит от того, что за объекты Вы изменяете на экране и как они движутся/изменяются.

 

"Шаманъ" Случайно не проверяли, что быстрее копирует DMA2D или просто DMA. Имеется в виду режим MemToMem

Не проверял. У меня узкое место это 16битная SDRAM, с такой памятью подозреваю глобальной разницы не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите MIPI DSI дисплеи имеют в себе контроллер и встроенный framebuffer как например ILI9341, SSD1351 или же они тупые и в них нужно только гнать поток данных как в дисплеях с RGB интерфейсом?

они типа "тупые"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите MIPI DSI дисплеи имеют в себе контроллер и встроенный framebuffer как например ILI9341, SSD1351 или же они тупые и в них нужно только гнать поток данных как в дисплеях с RGB интерфейсом?

Есть два базовых режима интерфейса MIPI DSI: "Video mode" и "Command mode". В видео режиме они, как Вы выразились "тупые", в командный режим подразумевает что для хранения картинки в дисплее используется своя GRAM, т.е. встроенный framebuffer. К сожалению далеко не все контроллеры с MIPI DSI поддерживают командный режим. Мне так и не удалось найти дисплей с поддержкой командного режима и разрешения хотя бы 1280х800.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...