|
|
  |
Stm32 emWin lwIp web |
|
|
|
Feb 28 2015, 20:33
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(1234Alex @ Feb 28 2015, 22:42)  А не подскажете этот кусочек. Не смог нагуглить совсем уж то, что нужно. Но нашёл пример, где принципиальные моменты реализованы: тут. Там делается перетаскивание мышью, поэтому много лишнего кода. Но можно разглядеть, как берутся координаты курсора и отправляются на сервер при помощи XMLHttpRequest. Там используется POST, но вам, наверное, будет удобнее GET (тоже с координатами клика), тогда в ответ на этот GET можно будет сразу получить указание от сервера, изменилась ли картинка на экране. Подменить картинку на веб-странице жабаскрипт тоже легко позволяет. Например, см. тут. Вообще, жабаскрипт позволяет сделать практически всё, что угодно. Ну и со стороны сервера должна быть должная поддержка, естественно.
|
|
|
|
|
Feb 28 2015, 21:24
|

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

|
Цитата(1234Alex @ Feb 26 2015, 01:19)  Прошу совета. Есть устройство с 7-дюймовым Tft, собранное на Stm32F4. Поднят lwIp ( lan8720 ). Всё потихоньку оживает. Встаёт вопрос о web-морде для этого агрегата. Идеальным было-бы повторить в web-интерфейсе наличные 3 ( сейчас ) экрана. Реально-ли это ? Про emwin vnc знаю ( пока не пробовал ). Нет-ли других вариантов. В веб-программировании пока слаб. Спасибо. Судя по тому что uC/GUI вы упорно называете emWin оно у вас в виде скомпилированных либ. Тогда что-то сделать трудно будет. А так я экраны для uС/GUI проектирую в виде конфигурационных JSON файлов. Понятно что и WEB броузер может принять тот же JSON файл и отрисовать такой же экран. Более того в броузере можно отредактировать экран и сохранить его в дивайс с последующим воспроизведением на экране дивайса. Но это я не реализовывал. Экранный редактор параметров и WEB страницы параметров у меня генерятся специальной утилитой одновременно. Но не похожи друг на друга, поскольку в экранном GUI надо еще отображать клавиатуру.
|
|
|
|
|
Feb 28 2015, 22:16
|

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

|
Цитата(scifi @ Feb 28 2015, 23:49)  JSON не нужен. Голый жабаскрипт годится. У вас там кода выйдет на пару сотен строк, зачем какой-то JSON? Ага, не нужен. Испокон веков мультиплатформенность GUI создавалась с помощью языков разметки. Можете конечно парсить HTML или XML. Но придете все равно к JSON как языку разметки. Ибо проще не бывает. А JavaScript в качестве разметки даже не смешно, а просто не понятно. Каким боком?
|
|
|
|
|
Feb 28 2015, 23:09
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(khach @ Mar 1 2015, 01:32)  А вот если копию прийдется вычитывать из памяти контроллера экрана- тут начинаются очень интересные грабли с шиной. Что за грабли? У меня были TFT экраны. Для мануалов делал скриншоты именно через веб. Особых проблем не заметил. Цитата(AlexandrY @ Mar 1 2015, 01:16)  Ага, не нужен. Испокон веков мультиплатформенность GUI создавалась с помощью языков разметки. Можете конечно парсить HTML или XML. Но придете все равно к JSON как языку разметки. Ибо проще не бывает. А JavaScript в качестве разметки даже не смешно, а просто не понятно. Каким боком? Вы сговорились что ли? Не о том речь. Просто выдавать скриншот экрана на веб-интерфейс, ловить клики мышки, эмулировать нажатия кнопок, и обновлять этот скриншот. Это 200 строк жабаскрипта плюс необходимая обвязка на сервере. Потому-то JSON и не нужен. Цитата(1234Alex @ Mar 1 2015, 01:06)  Может подскажете что лучше почитать по javascript. Нет, не подскажу. Синтаксис очень похож на Си, поэтому начать просто. Возникает вопрос - лезешь в гугл и сразу находишь ответ. Как-то так.
|
|
|
|
|
Mar 1 2015, 10:19
|

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

|
Цитата(scifi @ Mar 1 2015, 01:09)  Что за грабли? У меня были TFT экраны. Для мануалов делал скриншоты именно через веб. Особых проблем не заметил.
Вы сговорились что ли? Не о том речь. Просто выдавать скриншот экрана на веб-интерфейс, ловить клики мышки, эмулировать нажатия кнопок, и обновлять этот скриншот. Это 200 строк жабаскрипта плюс необходимая обвязка на сервере. Потому-то JSON и не нужен. Это не серьезный подход. Глядя на крохотный скриншот TFT на экране нормального броузера публика будет в недоумении. Да и напряг для STM32 будет выше предельного. Сколько раз в сек собираетесь рефрешить скриншот при скролинге, например? Начнутся лаги, сбои и непопадания в нужную зону видгетов. Смысл не повторить один в один экран TFT и представление в броузере, а сгенерировать эти представления одновременно не совершая повторной работы. Я отказался в свое время от GUI_Builder. Он генерит С-и файлы, а их очень трудно парсить как файл разметки для броузера. Это тупиковый путь. Стоит потратится, но сделать для uC/GUI парсер нормального файла разметки сделанного из представления в броузере. Кстати тогда и к определенному GUI не будет сильной привязки.
|
|
|
|
|
Mar 1 2015, 10:39
|
Гуру
     
Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136

|
Цитата(AlexandrY @ Mar 1 2015, 13:19)  Это не серьезный подход. Глядя на крохотный скриншот TFT на экране нормального броузера публика будет в недоумении. Дык я о том же. Но ТС оч. хочется именно так. Цитата(AlexandrY @ Mar 1 2015, 13:19)  Да и напряг для STM32 будет выше предельного. Нет. Хотя зависит от масштаба амбиций, наверное. Цитата(AlexandrY @ Mar 1 2015, 13:19)  Сколько раз в сек собираетесь рефрешить скриншот при скролинге, например? Начнутся лаги, сбои и непопадания в нужную зону видгетов. А вот тут начинается самое интересное. Было бы полезно взглянуть на реальный скриншот. Подозреваю, что там никаких видгетов нет. Типа "клапан закрыл, насос запустил".
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|