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

 
 
 
Reply to this topicStart new topic
> Удаленный вывод на emWin
dimone
сообщение Dec 2 2015, 10:16
Сообщение #1


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

Группа: Участник
Сообщений: 102
Регистрация: 23-02-09
Пользователь №: 45 242



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

Сообщение отредактировал dimone - Dec 2 2015, 10:25
Go to the top of the page
 
+Quote Post
mantech
сообщение Dec 2 2015, 11:39
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(dimone @ Dec 2 2015, 13:16) *
с небольшим OLED-ом, другая с QWGA -тфтшкой,


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

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

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

Сообщение отредактировал mantech - Dec 2 2015, 11:43
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Dec 2 2015, 12:35
Сообщение #3


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



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

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

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


uc/GUI(он же emWin) всегда умело рисовать во внутренний буфер.
Причем в несколько.
Поэтому идея с "фреймбуфером" вполне подходящая.
А для уменьшения трафика есть алгоритмы сжатия. А если еще транспонирование видео памяти применить, то сжатие раза в два можно ожидать.
Go to the top of the page
 
+Quote Post
dimone
сообщение Dec 2 2015, 13:16
Сообщение #4


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

Группа: Участник
Сообщений: 102
Регистрация: 23-02-09
Пользователь №: 45 242



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

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

..."Пайпить сырое видео" - это как последний из вариантов, для однои из плат слишком избыточен..
Хотелось найти общее изящное решение, поднять некое подобие х-сервера чтоль , или чего-то попроще..
Прихожу к идее что необходио выбрать необходимые функции либы,и сделать примитивный серверок ,
который будет распарсивать мои теги соответственно прекомпилиным оберткам,
но это закат солнца вручную, потеря функциональности , и возможность накосячив с синтаксисом выстрелить в ногу в рантайме, зато требования к каналу и памяти минимизируются..
Удручает, что Сеггер до сих пор удаленку не предусмотрел(
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Dec 2 2015, 13:40
Сообщение #5


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(dimone @ Dec 2 2015, 15:16) *
Удручает, что Сеггер до сих пор удаленку не предусмотрел(


Все там есть.
Только надо работать с сорсами, а не с либой.
Go to the top of the page
 
+Quote Post
x893
сообщение Dec 2 2015, 14:02
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



можно просто сделать драйвер свой, который будет отправлять куда надо. Делов то.
Go to the top of the page
 
+Quote Post
mantech
сообщение Dec 2 2015, 14:33
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(AlexandrY @ Dec 2 2015, 16:40) *
Все там есть.
Только надо работать с сорсами, а не с либой.


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

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


Как вариант делать в памяти 2 буфера - 1 для тфт, другой для оледа, 2 флага на изменение содержимого буферов и в случае их установки, передавать на МК с экранами. ГУЙ один, просто работает то с одним, то с другим буфером.
Go to the top of the page
 
+Quote Post
dimone
сообщение Dec 2 2015, 15:04
Сообщение #8


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

Группа: Участник
Сообщений: 102
Регистрация: 23-02-09
Пользователь №: 45 242



Цитата(AlexandrY @ Dec 2 2015, 17:40) *
Все там есть.
Только надо работать с сорсами, а не с либой.

-Мануал от emWin V5.22 предлагает только VNC server, который , как я понимаю не очень мне подойдет,
единственное, наверно вы это имели ввиду- hextile encoding -движок может быть полезным, если дамп фреймбуффера лить по интерфеису..
-Я видимо усложнил ,представьте к примеру плату не с F4 ,а с 030 или Мега8, как в этом случае удаленно вывести строку такого-то размера, в такую-то позицию , таким-то фонтом..?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 20th July 2025 - 06:33
Рейтинг@Mail.ru


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