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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Ищу библиотеку для управляющих ESC последовательностей., для STM32|NXP
Porty
сообщение Apr 23 2015, 10:04
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 246
Регистрация: 28-05-08
Из: г. Ижевск
Пользователь №: 37 893



Всем известно что отлаживать устройства с COM портом можно по PuTTY.
А он поддерживает не только простой чёрно-белый текст - можно задавать цвета шрифта, фона, сам шрифт менять и его начертания (жирный, зачёркнутый и тд).
например так http://prntscr.com/6x6j8b
А так же поддерживает передачу координат мышки и много чего ещё (типа вывода в произвольную позицию и тд).

описание
http://invisible-island.net/xterm/ctlseqs/ctlseqs.html
http://man7.org/linux/man-pages/man4/console_codes.4.html

Вот я и хочу найти такую библиотеку где всё это оформлено, разложено по полочкам а события клавиш и мыши парсятся и преобразуются в готовые коды и значения координат и кнопок.
Как понимаю библиотека чисто алгоритмическая и не зависит от железа поэтому целевая платформа не важна. Но уточню что для жирных STM32 | NXP - т.е. желательно полноценная а не урезанная до минимума.
желательно без привязки к оборудованию.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Apr 23 2015, 10:22
Сообщение #2


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



Я в своё время баловался таким:

К сожалению, оформить в библиотеку руки не дошли.

Знаю, что есть Turbo Vision, порт для линукса вовсю пользуется ESC-последовательностями.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post
Эдди
сообщение Apr 23 2015, 11:48
Сообщение #3


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



Эти ESC-последовательности плохи тем, что не все терминалы их поддерживают. А узнать, что за тип терминала, МК не может, к сожалению.
В простых же приложениях запросто можно сделать что-то подобное, а подобрать нужные цвета вот таким скриптом.
Go to the top of the page
 
+Quote Post
SSerge
сообщение Apr 23 2015, 11:57
Сообщение #4


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

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Похоже, речь идёт о curses и её потомках, типа ncurses, pdcurses.




--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
mantech
сообщение Apr 23 2015, 12:36
Сообщение #5


Гуру
******

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



Цитата(AHTOXA @ Apr 23 2015, 13:22) *
Я в своё время баловался таким:



Может там и окна перетаскивать можно было... Эх, зачем я делал собственный граф. интерфейс biggrin.gif

Цитата(SSerge @ Apr 23 2015, 14:57) *
Похоже, речь идёт о curses и её потомках, типа ncurses, pdcurses.


Как всегда в линухе - мульон файлов, и хрен портируешь куда-нибудь еще wacko.gif
Go to the top of the page
 
+Quote Post
Эдди
сообщение Apr 23 2015, 12:42
Сообщение #6


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



А незачем заниматься ерундой!
Зачем из микроконтроллера пытаться сделать компьютер?
Я вообще не понимаю, нафиг пользоваться прямой связью с МК через терминал, кроме как для отладки. а для отладки красивости не нужны особо. Ну, можно ошибки выделять красным: "\033[1;31;40mERROR!!!\033[0;0;0m\n", но пилить прямо полноценную библиотеку для этого — перебор!
Если хотите красивостей — нарисуйте свой терминальный клиент, пущай он и разукрашивает всякие красивости.

P.S. А когда нужна граф. морда, проще всего нарисовать веб-морду, т.к. заморачиваться со всякими гнилыми гытыками совершенно никакого желания нет!

Сообщение отредактировал Эдди - Apr 23 2015, 12:43
Go to the top of the page
 
+Quote Post
Porty
сообщение Apr 23 2015, 12:58
Сообщение #7


Местный
***

Группа: Свой
Сообщений: 246
Регистрация: 28-05-08
Из: г. Ижевск
Пользователь №: 37 893



Цитата(Эдди @ Apr 23 2015, 16:42) *
А незачем заниматься ерундой!
Зачем из микроконтроллера пытаться сделать компьютер?
Я вообще не понимаю, нафиг пользоваться прямой связью с МК через терминал, кроме как для отладки. а для отладки красивости не нужны особо. Ну, можно ошибки выделять красным: "\033[1;31;40mERROR!!!\033[0;0;0m\n", но пилить прямо полноценную библиотеку для этого — перебор!
Если хотите красивостей — нарисуйте свой терминальный клиент, пущай он и разукрашивает всякие красивости.

P.S. А когда нужна граф. морда, проще всего нарисовать веб-морду, т.к. заморачиваться со всякими гнилыми гытыками совершенно никакого желания нет!


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

это проще чем делать три отдельных вещи:
1. Управляемая с ПК прошивка
2. Протокол управления
3. Программа на ПК для визуализации и управления
и отлаживать всё это в вместе

№2 и №3 - это уже сделано за нас (vt200, PuTTY, Hyperterminal), давай будем инженерами, ок? laughing.gif

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

Цитата(SSerge @ Apr 23 2015, 15:57) *
Похоже, речь идёт о curses и её потомках, типа ncurses, pdcurses.

БОЛЬШОЕ спасибо, ncurses - очень похоже на то что надо, погляжу
Go to the top of the page
 
+Quote Post
Эдди
сообщение Apr 23 2015, 14:19
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



ncurses жирная и целиком для микроконтроллеров не годится. Кроме того, эта библиотека предназначена для работы с терминалом и использует всякие ioctl'ы. Вот если вы будете в консольке клиента делать, то да, ncurses здесь, возможно, вполне пригодится.
Вариант 2: частично портировать ncurses на мелкоконтроллер и имитировать им устройство терминала (соответственно, он должен понимать всякие разные ioctl'ы, скажем, отключение эха и т.п.).
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Apr 23 2015, 17:33
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



ощущение что игра не стоит свеч. Слишком много сил и средств, на слишком убогий интерфейс, ИМХО...
Go to the top of the page
 
+Quote Post
mantech
сообщение Apr 23 2015, 18:23
Сообщение #10


Гуру
******

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



Цитата(Golikov A. @ Apr 23 2015, 20:33) *
ощущение что игра не стоит свеч. Слишком много сил и средств, на слишком убогий интерфейс, ИМХО...


Сколь раз что-то делал в терминалке, вполне хватало меню типа:

1> lalalalal
2>gjorigj

Enter choice>

И ввода текста после выбора пункта. Работает в любых терминалках и для настройки вполне нормально, а если уж этого нехватает, то нужно гуй делать или подключать пульт с гуем.
Go to the top of the page
 
+Quote Post
SSerge
сообщение Apr 23 2015, 20:22
Сообщение #11


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

Группа: Свой
Сообщений: 1 719
Регистрация: 13-09-05
Из: Novosibirsk
Пользователь №: 8 528



Цитата(Golikov A. @ Apr 24 2015, 00:33) *
ощущение что игра не стоит свеч. Слишком много сил и средств, на слишком убогий интерфейс, ИМХО...

Это круто!
Ретро-стиль опять в моде.
Добавить ascii-art и анимацию, все хипстеры удавятся от зависти.


--------------------
Russia est omnis divisa in partes octo.
Go to the top of the page
 
+Quote Post
Эдди
сообщение Apr 23 2015, 21:26
Сообщение #12


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



А потом кто-нибудь захочет OpenGL запустить на МК...
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Apr 24 2015, 06:16
Сообщение #13


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Цитата
Это круто!
Ретро-стиль опять в моде.
Добавить ascii-art и анимацию, все хипстеры удавятся от зависти.


ну и 8 битную музыку...
А чего на с# не накидать настроечный терминал за 0.5 дня?

У нас есть человек он к приборам пишет драйверы, и отдает интерфейс которые через stdio общаются с прибором. А дальше к этому что хошь привязать можно. Хочешь *.cmd файл автонастройки, хочешь в терминале пальчиками жамкай, хочешь нормальную вин форму делай...

В итоге под прибор потом есть текстовый файл начальных настроек, и батничек, жамкаешь его и прибор настроен согласно файлу, и стандартные тесты дальше запускаются...
Go to the top of the page
 
+Quote Post
Эдди
сообщение Apr 24 2015, 06:59
Сообщение #14


Знающий
****

Группа: Участник
Сообщений: 825
Регистрация: 16-04-15
Из: КЧР, Нижний Архыз
Пользователь №: 86 250



У меня в одной железяке вообще вот такой вот наркоманский протокол (пришлось извратиться, чтобы легко было кроссплатформенного клиента сделать). Но чаще для отладки просто делаю "буковка [число]".
Go to the top of the page
 
+Quote Post
toweroff
сообщение Apr 24 2015, 10:02
Сообщение #15


Гуру
******

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



Я отказался от менюшек. Жрут они кучу места (я имею ввиду "маленькие" контроллеры, до 32КБ кода), хочется "облагоразить" - приходится использовать всякие printf. Используем - начинает откушивать от стека
В результате пришел к маленькой программке для настройки через тот же ком-порт и отдельной задачке, которая принимает и применяет эти настройки
Go to the top of the page
 
+Quote Post
Porty
сообщение Apr 24 2015, 10:40
Сообщение #16


Местный
***

Группа: Свой
Сообщений: 246
Регистрация: 28-05-08
Из: г. Ижевск
Пользователь №: 37 893



Цитата(toweroff @ Apr 24 2015, 14:02) *
Я отказался от менюшек. Жрут они кучу места (я имею ввиду "маленькие" контроллеры, до 32КБ кода), хочется "облагоразить" - приходится использовать всякие printf. Используем - начинает откушивать от стека
В результате пришел к маленькой программке для настройки через тот же ком-порт и отдельной задачке, которая принимает и применяет эти настройки

а мы пришли к этому по результатам анализа брака - при настройке или разбраковке надо видеть всю картину целиком, а не в текстовом терминале группами по 20 параметров. да и настраивать долго каждый из 20 каналов
Go to the top of the page
 
+Quote Post
mantech
сообщение Apr 24 2015, 12:15
Сообщение #17


Гуру
******

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



Цитата(Porty @ Apr 24 2015, 13:40) *
а мы пришли к этому по результатам анализа брака - при настройке или разбраковке надо видеть всю картину целиком, а не в текстовом терминале группами по 20 параметров. да и настраивать долго каждый из 20 каналов


Ибо на вашем месте надо делать нормальный тестовый стенд, а не извращаться с терминалками!
Ибо это решает сразу 2 задачи, не нужно перегружать ваше устройство всякими терминальными интерфейсами и второе - клиент не будеть "лезть" куда ему не нужно, т.к. стенда у него нет, а это, на своем опыте знаю, избавит от многих проблем...

Сообщение отредактировал mantech - Apr 24 2015, 12:20
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 24th June 2025 - 22:15
Рейтинг@Mail.ru


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