#1 2016-10-13 17:28:26

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Serial Monitor Pro

Фото устарело. В новых версиях функционала в разы больше. smile
1098e62617567597903eefb5e04d313c9ed5c7ca.gif

Привет всем. Сегодня я хочу рассказать вам о моем личном проекте. Проект этот необычен для данного раздела форума, так как это не моргающая, ползающая или летающая штуковина smile, а программа.

Программа эта называется Serial Monitor Pro или просто Монитор Порта Про.

Как вы догадались это альтернатива штатному монитору порта входящему в состав Arduino IDE.

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

И так, с вступлением мы закончили, теперь расскажу вам о ее преимуществах, и чем же она лучше штатной.

Основная фишка это поддержка различных языков. Т.е. теперь отправляя строки из ардуино при помощи функций Serial.print и Serial.println в мониторе порта появиться не какие-то кракозябры, а тот текст, который вы и хотели видеть, программка поддерживает кучу различных языков, от Русского и Украинского, до Немецкого и Итальянского.

Serial.println("Привет Мир!");

И мы увидим Привет Мир! smile без каких либо библиотек и заморочек.

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

Для вывода текста в одну или несколько строк, достаточно воспользоваться командой @clear@ которая очистит содержимое окна и выведет текст с начала.

void loop()
{
  delay(500);
  Serial.println("@clear@");
  Serial.println("Привет Мир!");
  Serial.println(random());
}

В данном случае всегда будет отображаться только две строки, первая – «Привет мир!», а вторая это случайное число постоянно меняющееся.

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

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

Подробнее вы можете прочесть на странице для скачивания.
http://arduino.on.kg/serialMonitor

Редактировался genaonyx (2016-11-29 10:44:19)

#2 2016-10-13 18:26:33

Андрей
Участник
Зарегистрирован: 2014-06-17
Сообщений: 34

Re: Serial Monitor Pro

Интересный проект. Хорошо бы иметь возможность переключения вывода - символы/16-ричный система/бинарная.

#3 2016-10-13 20:37:10

NoName
Customer
Из Київ
Зарегистрирован: 2014-07-08
Сообщений: 1,228

Re: Serial Monitor Pro

++, классный проект )

добавьте время )
я "забил" на этот проект, и многие моменты вам не нужны, по посмотреть на фичи советую )
особенно если планируете  данные передавать терминалкой

http://forum.arduino.ua/viewtopic.php?id=15


к удаленному модему подключен эмулятор модема сименса с паузой между байтами.

успеха )
я на  JSON  обломался переводить свой xml криво подобный формат, но если есть желание можем разработать общие ключи )

#4 2016-10-14 11:03:49

NoName
Customer
Из Київ
Зарегистрирован: 2014-07-08
Сообщений: 1,228

Re: Serial Monitor Pro

в родной терминалке ардуино реализовано отключение от порта при программировании, и  восстановление соединения после завершения upload, вы разбирались как реализован этот механизм ?

#5 2016-10-14 19:20:54

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

Андрей пишет:

Интересный проект. Хорошо бы иметь возможность переключения вывода - символы/16-ричный система/бинарная.

Ок, в одной из следующих версий.


NoName пишет:

в родной терминалке ардуино реализовано отключение от порта при программировании, и  восстановление соединения после завершения upload, вы разбирались как реализован этот механизм ?

Только что сделал перехват клика на кнопке Upload Arduino IDE, в новой версии программа не будет мешать прошивать ардуинку если та соединена с ней. Ждите новой версии, когда все причешу и отлажу.

Редактировался genaonyx (2016-10-14 19:21:42)

#6 2016-10-14 19:32:06

NoName
Customer
Из Київ
Зарегистрирован: 2014-07-08
Сообщений: 1,228

Re: Serial Monitor Pro

"Ждите новой версии, когда все причешу и отлажу."
))))  ждемс )

Вы были в Чарынском каньоне?

#7 2016-10-14 20:16:53

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

Эммм. Нет. Что это. Где это. При чем тут это?

#8 2016-10-21 20:15:17

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

Вышла новая версия 1.3 (21.10.2016)
В новой версии:

  • Автоматическое отключение от COM-порта при загрузке скетча через Arduino IDE. Т.е. монитор порта больше не мешает прошивать ардуинку.

  • Добавилась кнопка программной перезагрузки Ардуино.

  • Добавилась кнопка очистки данных.

  • Все настройки, в том числе размеры и расположение формы теперь сохраняются.

  • Добавился выпадающий список с настройками DTR и RTS. Если выбрать «DTR off & RTS off» при соединении с ардуинкой она не будет перезагружаться.

Редактировался genaonyx (2016-10-21 20:23:20)

#9 2016-11-29 10:43:11

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

Вышла новая версия 1.4 (28.11.2016)
В новой версии:

  • Исправлены проблемы с кодировкой в следствии чего некоторые данные пропадали.

  • Добавлены новые кодировки на выбор: ANSI, ASCII, Unicode, UTF7, UTF8.

  • Менять DTR и RTS можно теперь в любое время.

  • Нет необходимости теперь нажимать кнопку "Отправить". Можно отправить данные нажатием клавишей Enter.

  • Редактор заменен на другой (на будущее).

  • Программа запоминает при закрытии теперь не только свои размеры, но и состояние.

  • Добавлена команда "\e[J" для поклонников консолей. Пример: Serial.print("\e[J"); // Аналог команды @clear@

  • Добавлены задатки и для других консольных команд, которые будут пополняться с новыми версиями.

#10 2016-12-04 16:02:47

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

Вышла новая версия 1.5 от 04.12.2016

  • Полностью переработан интерфейс.

  • Добавлен игровой режим.

  • Исправлены мелкие баги и ошибки.


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

Включается режим очень просто, установите соединение с ардуинкой и нажмите на кнопку с иконкой в виде геймпада.

Пару тестовых скетчей.

void setup()
{
  Serial.begin(9600);
}

void loop()
{
  if (Serial.available() > 0)
  {
    byte b = Serial.read();
    Serial.println(b);
  }
}

Результат:
e85a4cc9258179b4ead29ca834149def5b4d29c8.png

Используем полученные коды для управления 13-тым светодиодом на ардуинке.

void setup()
{
  Serial.begin(9600);
  pinMode(13, OUTPUT);
}

void loop()
{
  if (Serial.available() > 0)
  {
    byte b = Serial.read();
    if (b == 38) digitalWrite(13, HIGH); // Нажата клавиша "Вверх", код клавишы 38
    if (b == 40) digitalWrite(13, LOW);  // Нажата клавиша "Вниз", код клавишы 40
  }
} 

Таким образом нажимая клавишу вверх мы будем включать светодиод, а клавишу вниз - выключать.

Специально для вас мы подготовили таблицу кодов клавиш http://arduino.on.kg/codekeys

#11 2017-01-27 16:33:11

Fedor72
Гость

Re: Serial Monitor Pro

Монитор Супер!  Геннадий, можно ещё обработку нажатия ENTER прикрутить (чтобы "отправить" не мышкой тыкать).
Геннадий, а на каком языка вы писали монитор? Случаем не на JAVA?
Я тоже написал монитор (на JAVA) , но при выводе информации у меня съезжают строки, не подскажите как вы решили эту задачу? (В мониторе PUTTY И Ардуины  всё в порядке). Скачивал кучу мониторов с Гитхаба, тоже ничего хорошего sad.
Если не сложно помогите, пожалуйста, две недели на месте топчусь, уже и строки в CHAR перегонял и чего только не вытворял, не выходит каменный цветок. Заранее спасибо.

#12 2017-01-27 17:55:05

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

Fedor72 пишет:

Монитор Супер!

Спасибо.

Fedor72 пишет:

можно ещё обработку нажатия ENTER прикрутить (чтобы "отправить" не мышкой тыкать).

Скачайте последнюю версию (1.5.1) там это есть.

Fedor72 пишет:

а на каком языка вы писали монитор? Случаем не на JAVA?

Нет, мой монитор написан на Delphi.

Fedor72 пишет:

Я тоже написал монитор (на JAVA) , но при выводе информации у меня съезжают строки, не подскажите как вы решили эту задачу? (В мониторе PUTTY И Ардуины  всё в порядке). Скачивал кучу мониторов с Гитхаба, тоже ничего хорошего sad.
Если не сложно помогите, пожалуйста, две недели на месте топчусь, уже и строки в CHAR перегонял и чего только не вытворял, не выходит каменный цветок. Заранее спасибо.

В JAVA не силен. Но через 1-2 дня я выложу статью на своем сайте по обмену данными между программой написанной на Delphi и Ардуиной по COM-порту. В качестве примера, я там расписываю создание Монитора порта. Статья будет полностью расписана, что для чего и почему. А так же естественно с исходным кодом. Код из статьи можно будет взять для написания своего монитора порта с личными фишками, ну или изменить под свои нужды.

#13 2017-01-27 23:01:41

vvr
Участник
Зарегистрирован: 2015-04-12
Сообщений: 352

Re: Serial Monitor Pro

скачал, троян вылез sad

#14 2017-01-28 01:55:08

Fedor72
Гость

Re: Serial Monitor Pro

Я тоже в JAVA не силён smile . Спасибо Геннадий, жду с нетерпением статью! У вас на сайте уже зарегистрировался, там немножко вопросов задам. Удачи Вам, монитор и вправду отличный (я их много скачал пока в кодах JAVA копался).
Кстати да ENTER работает на последней версии (у меня Антивирусов нет - поэтому троянов ловить некому smile и они не находятся). А можно ещё строку ввода автоматом стирать после отправки (ну это как кому нужно, я со своей колокольни смотрю). А ещё можно чтобы нажатие ENTER на клаве пустой ENTER отправлял (ну типа \n только настоящий 0хd (byte)) - такой фичи почти ни у кого нет (у PUTTY есть).
Нашёл один мелкий Баг - внизу выпадающий список портов , номер порта предыдущей сессии запоминает, но при перезапуске всё равно работает на скорости 9600 (приходится выбрать скорость 9600,  выбрать скорость 57400 (или другую) и потом уже открыть порт).
А выбор шрифтов и размеров это прям круто, очень понравилось! Я такие фичи пол года к своему монитору прикручивать буду (ну это с моим знанием JAVA smile
Ещё раз спасибо и всего наилучшего. Если ещё багов отловлю, сообщу.

#15 2017-01-28 10:02:11

Green
Участник
Зарегистрирован: 2015-11-08
Сообщений: 280

Re: Serial Monitor Pro

Fedor72 пишет:

...такой фичи почти ни у кого нет (у PUTTY есть).

Это Вы ещё мониторов (эмуляторов терминала) не видели. Terminal, Teraterm, Realterm, ucon... Serial monitor же даже \r нормально не отрабатывает.

Редактировался Green (2017-01-28 10:02:32)

#16 2017-01-28 11:14:16

NoName
Customer
Из Київ
Зарегистрирован: 2014-07-08
Сообщений: 1,228

Re: Serial Monitor Pro

смысл отрабатывать '\r' ?  VT100  никто не декларировал )
я разделял Enter - \r\n и numpad enter  - отправка  raw text ,
и вообще,  всем угождать - угождалка сломается )

#17 2017-01-28 15:12:21

Green
Участник
Зарегистрирован: 2015-11-08
Сообщений: 280

Re: Serial Monitor Pro

То бишь, не декларировал - можно делать что хош?
А, как бы, сами понятия "перевод строки", "возврат каретки" - это о чём?
Вы печатную машинку представляете? Терминал (эмулятор терминала) пошел от чего?
\r - как бы carriage return, а что мы видим в сериале? И как с таким работать!

#18 2017-01-28 16:20:31

Green
Участник
Зарегистрирован: 2015-11-08
Сообщений: 280

Re: Serial Monitor Pro

И VT100 какой-никакой стандарт. А сериал о нём и понятия не имеет. Абсолютно.

#19 2017-01-30 20:29:26

Green
Участник
Зарегистрирован: 2015-11-08
Сообщений: 280

Re: Serial Monitor Pro

Да, Putty чудненький эмулятор. Накрученный.))

#20 2017-01-30 20:49:09

fedor72
Гость

Re: Serial Monitor Pro

А то ж! Putty навороченный но не идеальный. Это монитор даже удобней (выбор портов, скорости- все на главном экране).

#21 2017-06-26 15:15:32

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

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

#22 2017-06-26 19:27:50

Вячеслав Азаров
Участник
Из Запорожье
Зарегистрирован: 2017-05-25
Сообщений: 415

Re: Serial Monitor Pro

NoName пишет:

смысл отрабатывать '\r' ?  VT100  никто не декларировал )
я разделял Enter - \r\n и numpad enter  - отправка  raw text ,
и вообще,  всем угождать - угождалка сломается )

У меня уже сломалась. Всяких терминалов - гора. Я кода-то сам сделал отладчик порта, с аналитикой, еще под ДОСом. А сейчас иногда использую Screen или Minicom. Если что-то типа RTU не верифицировать то Ардуинковского терминала вполне хватает.

Редактировался Вячеслав Азаров (2017-06-26 22:00:22)

#23 2017-06-26 21:49:42

vvr
Участник
Зарегистрирован: 2015-04-12
Сообщений: 352

Re: Serial Monitor Pro

не хочет устанавливаться - антивирус ругается)))

#24 2017-06-27 05:48:29

genaonyx
Участник
Зарегистрирован: 2016-10-13
Сообщений: 10
Сайт

Re: Serial Monitor Pro

vvr пишет:

не хочет устанавливаться - антивирус ругается)))

Там нет вирусов, уверяю вас. Предположу что у вас Avast, но последнее время и другие антивирусы взяли моду ругаться на скачанные файлы из интернета. Если вы прочтете на их сайте то они ругаются сейчас на все exe файлы, даже в архивах, у которых нет цифровой подписи. К сожалению программа бесплатна, я не получаю с нее денег, отсюда купить цифровую подпись не могу, а за свой счет - а зачем оно мне надо?

#25 2017-06-27 06:20:05

vvr
Участник
Зарегистрирован: 2015-04-12
Сообщений: 352

Re: Serial Monitor Pro

genaonyx пишет:
vvr пишет:

не хочет устанавливаться - антивирус ругается)))

К сожалению программа бесплатна, я не получаю с нее денег, отсюда купить цифровую подпись не могу, а за свой счет - а зачем оно мне надо?


да я вас не упрекаю)))
наоборот, спасибки)))))

Быстрое сообщение

Введите сообщение и нажмите Отправить

Подвал раздела