Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Удаленный вывод на emWin
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
dimone
Подскажите пожалуйста, есть две платы с графическим индикаторами: -одна на F103 с небольшим OLED-ом, другая с QWGA -тфтшкой,
(классика: F429 +доп. RAM ) на обеих поднята emWin.
И есть "материнка" с F4 числожуйкой без доп. памяти
Связь между платами полнодуплексный SPi.
Необходимо выводить информацию с матринки на плату индикации первую или вторую .
Как вариант рассматривалось организовать фреймбуффер на материнке, и "вдувать" его в индикаторы,
но это как вариант лишь для одной платы , для другой при скорости обновления ~10ГЦ выходит >20МБит SPi
+ ОЗУна фреймбуффер на четверть мегабайта.. -соответственно не подходит(
В идеале было бы использовать какую-то обертку, или подобие скрипта для удаленной работы с emWin.
Но штатных средств чтобы либа работала клиентом вроде нет ..
Может кто-то подобным уже имел дело, и посоветует куда копать?
mantech
Цитата(dimone @ Dec 2 2015, 13:16) *
с небольшим OLED-ом, другая с QWGA -тфтшкой,


Бред какой-то... Разные по разрешению и функционалу экраны и ... фреймбуфер для чего-то? Что вы туду слать-то будете, один и тот-же битмап для оледа и тфт?? Это будет что-то с чем-то wacko.gif

Делается так - создаются примитивы для КАЖДОГО экрана соотв. им присваиваются коды, т.е. кнопка №1 с коорд. текст №2 с коорд. и т.д. потом пишется обработчик всего этого и вот как раз эти команды с координатами шлете по спи из одного МК в другой. Или 2 независимых гуя.

Просто копировать фреймбуфер можно только на одинаковые по разрешению и глубине цвета экраны. И то не просто копировать с 20 кадрами в сек, а только, если есть изменения картинки или нажатия кнопок...
AlexandrY
Цитата(mantech @ Dec 2 2015, 13:39) *
Бред какой-то... Разные по разрешению и функционалу экраны и ... фреймбуфер для чего-то? Что вы туду слать-то будете, один и тот-же битмап для оледа и тфт?? Это будет что-то с чем-то wacko.gif

Делается так - создаются примитивы для КАЖДОГО экрана соотв. им присваиваются коды, т.е. кнопка №1 с коорд. текст №2 с коорд. и т.д. потом пишется обработчик всего этого и вот как раз эти команды с координатами шлете по спи из одного МК в другой. Или 2 независимых гуя.

Просто копировать фреймбуфер можно только на одинаковые по разрешению и глубине цвета экраны. И то не просто копировать с 20 кадрами в сек, а только, если есть изменения картинки или нажатия кнопок...


uc/GUI(он же emWin) всегда умело рисовать во внутренний буфер.
Причем в несколько.
Поэтому идея с "фреймбуфером" вполне подходящая.
А для уменьшения трафика есть алгоритмы сжатия. А если еще транспонирование видео памяти применить, то сжатие раза в два можно ожидать.
dimone
Цитата(mantech @ Dec 2 2015, 15:39) *
Бред какой-то... Разные по разрешению и функционалу экраны и ... фреймбуфер для чего-то? Что вы туду слать-то будете, один и тот-же битмап для оледа и тфт??

-почему бред, бывает дивайс-клиенту показывает информцию, а персоналу -полную, простейший аналог POS -терминал.. ,
но в данном случае необходимо иметь возможность использовать материнку или с одной платой или с другой, информационное наполнение может быть отлично.

..."Пайпить сырое видео" - это как последний из вариантов, для однои из плат слишком избыточен..
Хотелось найти общее изящное решение, поднять некое подобие х-сервера чтоль , или чего-то попроще..
Прихожу к идее что необходио выбрать необходимые функции либы,и сделать примитивный серверок ,
который будет распарсивать мои теги соответственно прекомпилиным оберткам,
но это закат солнца вручную, потеря функциональности , и возможность накосячив с синтаксисом выстрелить в ногу в рантайме, зато требования к каналу и памяти минимизируются..
Удручает, что Сеггер до сих пор удаленку не предусмотрел(
AlexandrY
Цитата(dimone @ Dec 2 2015, 15:16) *
Удручает, что Сеггер до сих пор удаленку не предусмотрел(


Все там есть.
Только надо работать с сорсами, а не с либой.
x893
можно просто сделать драйвер свой, который будет отправлять куда надо. Делов то.
mantech
Цитата(AlexandrY @ Dec 2 2015, 16:40) *
Все там есть.
Только надо работать с сорсами, а не с либой.


Только я там не видел сорсов-то biggrin.gif

Цитата(dimone @ Dec 2 2015, 16:16) *
Прихожу к идее что необходио выбрать необходимые функции либы,и сделать примитивный серверок ,
который будет распарсивать мои теги соответственно прекомпилиным оберткам,
но это закат солнца вручную, потеря функциональности , и возможность накосячив с синтаксисом выстрелить в ногу в рантайме, зато требования к каналу и памяти минимизируются..


Как вариант делать в памяти 2 буфера - 1 для тфт, другой для оледа, 2 флага на изменение содержимого буферов и в случае их установки, передавать на МК с экранами. ГУЙ один, просто работает то с одним, то с другим буфером.
dimone
Цитата(AlexandrY @ Dec 2 2015, 17:40) *
Все там есть.
Только надо работать с сорсами, а не с либой.

-Мануал от emWin V5.22 предлагает только VNC server, который , как я понимаю не очень мне подойдет,
единственное, наверно вы это имели ввиду- hextile encoding -движок может быть полезным, если дамп фреймбуффера лить по интерфеису..
-Я видимо усложнил ,представьте к примеру плату не с F4 ,а с 030 или Мега8, как в этом случае удаленно вывести строку такого-то размера, в такую-то позицию , таким-то фонтом..?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.