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

 
 
10 страниц V  « < 8 9 10  
Reply to this topicStart new topic
> Помогите определиться с камнем, дисплеем и пр.
aaarrr
сообщение Apr 9 2014, 15:21
Сообщение #136


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Повысить уровень до -O3 -OTime, в критичных по скорости местах развернуть циклы вручную:
Код
for (max=0;max<76800 / 4;max++)
{
    *(uint16_t *) (LCD_DATA)=y;
    *(uint16_t *) (LCD_DATA)=y;
    *(uint16_t *) (LCD_DATA)=y;
    *(uint16_t *) (LCD_DATA)=y;
}

В предыдущем листинге видно, что компилятор развернул цикл, но только на две итерации.
Go to the top of the page
 
+Quote Post
Lost_Viking
сообщение Apr 9 2014, 16:00
Сообщение #137


Частый гость
**

Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091



Да все равно я не пойму как при такой нагрузке можно добиться 25гц кадров , при этом еще выполнять фильтрацию сигнала АЦП, работу с видео -буфером, интегрировать данные АЦП (так как сигнал представляет собой производную от физической величины), управлять шаговым двигателем, делать замер периода входного сигнала (частота сигнала от 5 до 20 гц), сравнивать амплитуду на каждой частоте, усреднять амплитуды для n-замеров на конкретной частоте, запоминать это усреднение в памяти.

Размечтался ли я? =))
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Apr 9 2014, 16:12
Сообщение #138


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(Lost_Viking @ Apr 9 2014, 20:00) *
Размечтался ли я? =))

Считать надо. Но экран на внешней шине с программным формированием картинки "на лету" все несколько усложняет, конечно.
Go to the top of the page
 
+Quote Post
Lost_Viking
сообщение Apr 10 2014, 02:34
Сообщение #139


Частый гость
**

Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091



Цитата(aaarrr @ Apr 9 2014, 20:12) *
Считать надо. Но экран на внешней шине с программным формированием картинки "на лету" все несколько усложняет, конечно.

Уррра! если по одному цвету выводить без расчетов, то получилсь 55 кадров в сек. Может быть и больше можно. Но не пробовал. С расчетами гораздо меньше, но для моих целей хватит теперь Время на расчеты осается, а это главное. Сигнал до 20 гц будет.

Если использовать для АЦП ДМА, и поработать над алгоритмом работы, то думаю, что можно будет еще увеличить скорость отрисовки.

Сообщение отредактировал Lost_Viking - Apr 10 2014, 02:49
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 10 2014, 03:13
Сообщение #140


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



А использовать DMA для EMC не получится? пусть аппаратно гонит на внешнюю шину
Go to the top of the page
 
+Quote Post
Lost_Viking
сообщение Apr 10 2014, 05:40
Сообщение #141


Частый гость
**

Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091



Цитата(toweroff @ Apr 10 2014, 07:13) *
А использовать DMA для EMC не получится? пусть аппаратно гонит на внешнюю шину


что за ЕМС?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 10 2014, 10:58
Сообщение #142


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(Lost_Viking @ Apr 10 2014, 09:40) *
что за ЕМС?

External Memory Controller sm.gif
я же так понимаю, дисплей сидит на именно этом контроллере?
Go to the top of the page
 
+Quote Post
Lost_Viking
сообщение Apr 11 2014, 00:31
Сообщение #143


Частый гость
**

Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091



Цитата(toweroff @ Apr 10 2014, 14:58) *
External Memory Controller sm.gif
я же так понимаю, дисплей сидит на именно этом контроллере?

А какая разница? Все равно видео буфер нужно обновлять 25 раз в секунду. А обновление - это расчет что рисовать - сетку осциллографа или семпл.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 11 2014, 05:41
Сообщение #144


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Ну так это будет нужно делать программно 1 раз против 2-х!
Сейчас получается, что вы будете 2 раза программно работать с этой видеопамятью - сначала изменение, потом - вывод в дисплей.
А при DMA выводе можно использовать и 2 страницы... пока одна аппаратно выводится, модифицируем вторую, потом переключаем туда DMA и т.д.
Go to the top of the page
 
+Quote Post
Lost_Viking
сообщение Apr 11 2014, 07:01
Сообщение #145


Частый гость
**

Группа: Участник
Сообщений: 168
Регистрация: 25-04-08
Пользователь №: 37 091



Цитата(toweroff @ Apr 11 2014, 09:41) *
Ну так это будет нужно делать программно 1 раз против 2-х!
Сейчас получается, что вы будете 2 раза программно работать с этой видеопамятью - сначала изменение, потом - вывод в дисплей.
А при DMA выводе можно использовать и 2 страницы... пока одна аппаратно выводится, модифицируем вторую, потом переключаем туда DMA и т.д.


Логично.
Читаю, сравниваю, модифицирую, вывожу
vs
Читаю, сравниваю, модифицирую.

Надо подумать над Вашим предложением =)))

Тогда такой вопрос: как лучше всего очистить сетку от нарисованного сигнала? Есть уйма вариантов, но может быть есть стандартный и самый экономичный?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 11 2014, 07:56
Сообщение #146


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(Lost_Viking @ Apr 11 2014, 11:01) *
Тогда такой вопрос: как лучше всего очистить сетку от нарисованного сигнала? Есть уйма вариантов, но может быть есть стандартный и самый экономичный?

а не проще готовую сетку уже хранить, чем ее рисовать заново? И модифицировать, если нужно, в моменты переключения режимов/разрешения?
можно еще один канал DMA параллельно завести на буфер, который будет потом модифицироваться, заполнить сеткой, модифицировать и отдать DMA для вывода
Go to the top of the page
 
+Quote Post
VDLab
сообщение Apr 11 2014, 08:07
Сообщение #147


Частый гость
**

Группа: Свой
Сообщений: 133
Регистрация: 30-04-07
Из: DP.UA
Пользователь №: 27 419



Цитата(Lost_Viking @ Apr 11 2014, 10:01) *
...Тогда такой вопрос: как лучше всего очистить сетку от нарисованного сигнала? Есть уйма вариантов, но может быть есть стандартный и самый экономичный?

Самый экономный способ перерисовки уже давно придуман - сигнал прорисовывается заново, но уже цветом фона. Ну а сетка... Если там просто сетка, а не причудливое хитросплетение какое - перерисовать ее займет от силы пару миллисекунд. С таким заданием даже 16й ПИК когда то 40-50 раз в секунду справлялся, и без всяких DMA, SDRAM, а ногодрыгом да с восьмибитной шиной.
Go to the top of the page
 
+Quote Post

10 страниц V  « < 8 9 10
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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