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

 
 
> Логические экраны
uragan90
сообщение Dec 8 2013, 16:35
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 2-02-09
Из: Тверь
Пользователь №: 44 309



Друзья, здравствуйте!
Сразу извенюсь за грамматические ошибки в тексте.
Есть такой вопрос
У меня есть функция вывода пикселя на экран
pixel(x,y,color); и на ней организовано вся библиотека рисования приметивов на TFT димплее.
У меня встала задача смешения двух изображений при выводе на экран, точнее сетки и нарисованного на ней сигнала с ацп.
Экран мигает жутко!
У меня родилась идея смешения нескольких изображений в месте и вывода их на физический экран.
Идея в следюющем, создать структуру некого поля регистрации, а в частности нескольких логических экранов так чтоб выше описанная функция приняла вид
pixel(x,y,color,disp1);
Тоесть создать логический экран и функция вывода бы решала что выводить на физический экран, сигнал одного из каналов ацп либо сетку пробегая курсором по экрану регистрации.
Подскажите как проще и без затратно решить проблему!
Сам я вижу такой выход
struct pixel {
int x,y;
union disp {
disp1, disp2, disp3;
}
}
Помогите идеей или если это лажа оградите от лишнего труда :-)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
_Pasha
сообщение Dec 9 2013, 06:14
Сообщение #2


;
******

Группа: Участник
Сообщений: 5 646
Регистрация: 1-08-07
Пользователь №: 29 509



Обычно чтоб не мигало имеют минимум две страницы, рисуют в неактивную страницу, все логические операции делают при собственно рисовании, по окончании рисования меняют местами указатели на страницу вывода и страницу отображения. Для синхронизации, если отображение происходит в прерывании, там имеется своя локальная копия указателя страницы вывода. Если нет времени на полную очистку экрана перед заполнением (похоже на Ваш случай)- заводим отдельно буфер для вывода пар точек графика, потому что при обновлении с очисткой будет проще выводить эти пары точек XORом
Go to the top of the page
 
+Quote Post



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

 


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


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