Com порт терминалом windows

Com порт терминалом windows

Терминал (для работы с COM портом) под Windows.

Зачем понадобилось создавать еще одну программу терминал .

На просторах интернета полно подобных программ ?!

Что есть, то есть !

Но есть маленькое НО, все дело в нюансах !

— Требуемый функционал был разбросан по нескольким программам и это было очень не удобно.

— Часть требуемых функций не было и вовсе.

— Часть программ банально падали в самый неподходящий момент.

— Часть функций реализованы с ошибками.

Так жить нельзя и работать тоже . 🙂

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

Данный проект задумывался как вспомогательный для тестирования большого проекта связанного

с телеметрией. В проекте требовалось принимать и передавать данные через COM порт компьютера.

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

разного рода устройств !

На текущий момент программа продолжает дорабатывается, исправляются ошибки, добавляются

В данной статье будут публиковаться все изменения и нововведения сделанные в программе.

Краткое описание программы.

Программа создана в среде Microsoft Studio 2008, на языке VB.

Репозитарий программы представлен на GitHub, готовый бинарный файл(exe) в виде Zip архива.

Собранная программа представляет из себя один запускаемый файл.

Программа не требует установки и работает из любого места.

Программа не требует для запуска привилегий администратора.

1. Подключаться к любому com порту в системе.

2. Выставлять параметры работы com порта, включая нестандартные скорости работы порта

(при условии что драйвер windows поддерживает нестандартные скорости).

3. Производить запись принимаемых данных в файл.

4. Передавать в порт строку с разными концовками в виде дополнительных кодов.

5. Циклически передавать в порт строку с заданным интервалом времени.

6. Передавать в порт файл.

Программа пока не может:

1. Разбирать ESC последовательности.

2. Вести историю передаваемых строк.

3. Передавать в порт кода нажатых клавиш в окне приема и передачи.

Текущая версия: v1.3.2

[+] Вывод подробного описания СОМ портов.

[+] Проигрывание сценария из текстового файла.

Пример сценария (Файл TXT), формат:

81 01 04 07 03 FF
> 100
81 01 04 07 02 FF

Где:
81 01 04 07 03 FF — значения байт в TXT-HEX формате отправляемых в СОМ порт.
> 100 — Формирование паузы 100 мс.
81 01 04 07 02 FF — значения байт в HEX формате отправляемых в СОМ порт.

[+] Перевод строки в TXT-HEX виде в байтовый массив и передача в СОМ порт.

Версия: v1.2.2

[+] Добавлена история ввода передаваемых строк.

Версия: v1.2.1

[+] Внесены изменения в интерфейс. Часть функций вынесены в окно приема.

[+] Добавлена функция Вкл/Выкл печати символа с кодом 0x0A.

0x0D + 0x0A -> 0x0D.

[+] Решено: При закрытии порта продолжалась передача в порт.

[+] Добавлена подсказка при наведении курсора на элементы управления.

[+] При запуске программы производится автоматический поиск СОМ портов в системе.

Версия: v1.1.0

[+] Добавлена передача в порт кодов нажатых клавиш в окне приема и передачи.

Terminal 1.9b — работаем с COM-портом

Для связи AVR и компьютера по UART на компьютере нужна терминальная программа. После работы с разными программами я остановился на «Terminal 1.9b». Очень удобная терминалка. Рекомендую.

Читайте также:  Установка сторонних приложений для windows phone

Терминальная программа Terminal 1.9b

Основные возможности Terminal 1.9b:
  • работает без инсталяции. Вся программа — один exe-файл размером около 300Кб
  • есть счетчик переданных и принятых байтов
  • возможность отправлять файлы
  • помимо стандартных скоростей (baudrate) есть возможность установить свою нестандартную
  • поддерживает до 64 COM-портов
  • можно весь лог работы записывать в файл
  • можно назначить до 24 макросов
  • реализованы Pascalе-подобные скрипты (правда документации по этому скриптовому языку я не нашел. В архиве есть несколько примеров применения скриптов и это все)

Программа очень удачная, легкая, интуитивно-понятная.

Вливайтесь в обсуждение

&nbsp 14 комментариев

XELFAER

Не так давно наткнулся на очень интересную и удобную программу: HTerm
http://www.der-hammer.info/terminal/

самое хорошее что она кроссплатформенная

Николай

Кто может быть подскажет, где исходники раздобыть?

Спасибо. Долго не мог найти прогу для простой проверки ком-порта

Chiper

Программа Terminal почему — то искажает пересылаемые символы
передаю через нее на целевое устройство, например, $02GAIN400, возвращает что — то типа:»-GAIN400″, в общем, не нравится ей символ ‘$’. А, он необходим, заказчик требует. Проблема не в девайсе — замкнутый кабель возвращает то же самое, другие терминалы работают нормально.
Не знаете, в чем дело? Прога понравилась, но, из — за таких вот недоразумений приходится пользоваться другим терминалом. Попробуйте отправить и вернуть без обработки команду, начинающуюся с ‘$’. Символ ‘$’ и два, следующих за ним убиваются.

Chiper

Странно, сейчас попробовал — у меня символ $ нормально отправляется и принимается.

Александр

Друг, я читал в инструкции к этой программе что нужно вводить два $$ вместо одного.

Александр

Друг, я читал что нужно так:
Если надо к примеру B2, то вводиш $B2
A если надо fg$56, то вводиш fg$$56.

Mikhail

sWin, при отправке вы используете макросы, поэтому у вас и есть проблемы при передаче символа $. Попробуйте отправить этот же символ без макроса просто вбив в строку. А про макросы все есть в хелпе. В макросах для передачи символа $ его надо вписать дважды.

Алекс

Привет. Паскаль?? Я сейчас не прикалываюсь, но автор моложу 25 лет 100%. Я застал в полной мере Бэйсик, который как раз был после паскаля, то есть он где то 1990 уже отходил потихоньку… Вы еще про питон вспомните ))

Chiper

Что плохого в Питоне? И что плохого в Паскале?

Сергий

Всё написано на сайте автора: https://sites.google.com/site/terminalbpp/
Последняя версия 1.93b от 30.10.2014г.

Добавить комментарий

Отправляя комментарий, вы автоматически принимаете правила комментирования на сайте.

Правила комментирования на сайте:

  1. Не следует писать исключительно заглавными буквами. Это дурной тон.
  2. Запрещены комментарии не относящиеся к тематике сайта и самой статье.
  3. Запрещены реплики оскорбляющие других участников проекта. Давайте будем взаимовежливы.
  4. Запрещены нецензурные слова, идиоматические выражения, призывы к межнациональной и межконфессиональной розни.
  5. Запрещено обсуждение наркотических веществ и способов их применения.
  6. Запрещены комментарии с призывами к нарушению действующего законодательства РФ (Уголовного и Административного кодекса).
  7. Запрещены ссылки на сторонние ресурсы без согласования с владельцем сайта.
  8. Запрещается использовать в качестве имени комментатора слоганы/названия сайтов, рекламные фразы, ключевые и т.п. слова.

Следует учитывать следующее — все комментарии проверяются на предмет отсутствия спама. При обнаружении признаков спама, в оставленном Вами комментарии, сам комментарий будет незамедлительно удален, а Ваш IP-адрес будет добавлен в черный список без предупреждения!

Читайте также:  Что надо сохранять при переустановке windows

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

Я в соцсетях

Следите за обновлениями моего блога в ваших любимых социальных сетях. Просто подпишитесь!

Электроника для всех

Блог о электронике

Терминальные программы

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

Первой хотел бы упомянуть Terminal v1.9b by Bray. На мой взгляд — гениальная программа! Более удобного интерфейса для работы я не встречал. Судите сами — все под рукой!

Для настроек скорости работы, номера порта, параметров передачи и прочих сиюминутных потребностей не надо даже по менюшкам лазать — все прям сразу же. Также можно в один тык выдать инфу в разных системах счисления, что порой бывает очень удобно. Я бы сказал жизненно необходимо.
В один клик доступна таблица ASCII, а среди особых фишек которую я очень люблю — возможность выдать поток данных в виде графика от 0 до 255.
А еще можно писать скрипты на паскалеподобном языке, делающие с входящими-исходящими данными всякие непотребности.
В общем, рулез!

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

Вторая программа это COM Port Toolkit от Михаила Голикова. Ей я пользуюсь гораздо реже, но она умеет весьма нужную штуку — возможность перехватывать обмен данными между софтом и физическим COM портом. Это чертовски выручило меня когда я ломал защиту PLC, а также помогло отреверсить обмен между программой настройки модулей HM-TR433. В общем, редко, но метко.

Программка эта довольно проста в обращении, имеет три режима работы:

  • Терминал
    Может выдавать логи обмена данных улетевших к нами от нас. Слать из файла. Обрабатывать пересылаемое макросами (что может быть очень крутым подспорьем, но мне пока не пригождалось). Терминал как терминал, ничего особенного.
  • Прослушка
    Это фишка уже поинтересней. Позволяет воткнуть комп в разрез между принимающим и передающим девайсом и прослушать передачу данных кто кому и что передал. Также ведутся логи с указанием времени передачи посылки.
  • Захват
    Вот за эту фичу я и люблю эту программу — возможность снифферить обмен между софтом и портом. Редкая фича. Из бесплатных программ я нигде такого не встречал, а у программ вроде Advanced Serial Port Monitor или Free Serial Port Monitor эта фича доступна только в платной версии, тут же ее можно заюзать даже в демо версии.

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

Недостатков пожалуй три:

  • Невозможность разделить в режиме «Захват» входящие и исходящие данные на два разных окна.
  • Отстуствие русской документации, хотя бы по тому же скриптописанию.
  • Шароварность. Впрочем, я бы не назвал это недостатком. Автор, я думаю, не святым духом питается.

Демка проработала 30 дней, потом захотела денег. Но свою работу по облегчению разбора протокола обмена PLC она выполнила.

Читайте также:  Import windows file to android

Поначалу была мысль вспомнить шальное детство, сдуть пыль с родимого SoftICE и похачить защиту, но потом вспомнил что шашек такой формы не брал в руки уже лет 5, как минимум. Да и цена программы оказалась смешной — всего 10 баксов для русскоязычных пользователей.
Так что проще было ее зарегистрировать. Тем более штука нужная и уже неоднократно себя окупившая.

Как пользоваться терминальной программой Terminal 1.9b

Как работать с устройствами по COM-порту с помощью терминальной программы?
В различных инструкциях и руководствах вы можете увидеть рекомендации по работе с устройствами через терминальную программу. Как правило, такие действия производят с помощью HyperTerminal — стандартной программы в операционных системах Windows. Мы же рекомендуем использовать терминальную программу «Terminal v1.9b by bray», потому что это более гибкий и удобный в работе инструмент. Ниже мы расскажем как работать с нашими устройствами на примере именно этой программы.

В первую очередь подключите устройство, с которым собираетесь работать, к компьютеру через COM-порт. Подключите питание.
Теперь запустите Terminal v1.9b.

Интерфейс и основные настройки подключения по порту

В верхнем поле находятся параметры подключения:

  1. Колонка №1:
    Connect
    — кнопка для открытия COM-порта,
    Rescan — пересканировать список COM-портов,
    Help — справка,
    About.. — о программе,
    Quit — выход из программы.

Колонка №2:

  • Поле выбора номера COM-порта для подключения.
    Колонка №3:
  • Выбор скорости COM-порта.
    Колонка №4:
  • Выбор количества бит данных.
    Колонка №5:
  • Выбор четности.
    Колонка №6:
    Выбор количества стоповых бит.
    Колонка №7:
  • Выбор типа управления потоком.
  • В разделе Settings находятся дополнительные параметры. Они пригодятся для написания скриптов, работы с нестандартными скоростями или для записи лога от устройства.

    В разделе Recieve находятся параметры отображения ответа от устройства.

    В разделе Transmit находятся параметры передачи данных на устройство. Кнопки DTR и RTS устанавливают соответствующие выводы в положительное состояние.

    Макросы

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

    1. Блок №1:
      Поле для ввода последовательности символов для отправки. Для того чтобы отправить специальные символы, необходимо воспользоваться ASCII таблицей и ввести код символа, предварительно экранировав его знаком «$«. Например, на картинке выше, вы можете видеть экранированный символ возврата каретки $0D (нажатие клавиши Enter)
      Блок №2:
    2. Здесь в левом поле задаётся имя кнопки, а в правом отображается сама кнопка.
      Блок №3:
    3. Тут задаётся задержка при автоматическом повторении команд.
      Блок №4:
    4. Включение автоматического повтора команды через интервал времени, заданный в п.3.

    Кнопки Load и Save позволяют сохранить или загрузить файл с макросами, введёнными в этом окне.

    Отправка и прием данных


    Блок №1:
    В этом большом поле вы будете видеть ответы от вашего устройства.
    Если в разделе «Settings» вы не забыли поставить галочку «Time«, то перед каждой строкой будет проставлена метка времени. Это бывает очень полезно при анализе логов с устройства.

    Блок №2:
    Тут находится поле для отправки текста сообщений. Установленная галочка «+CR» будет дописывать к отправляемому сообщению символ возврата каретки (эмулировать нажатие клавиши Enter). Кнопка «->Send» отправит ваше сообщение на устройство.

    Блок №3:
    В самом низу находится поле, где вы можете видеть отправленные на устройство команды.

    Теперь вы знакомы с интерфейсом Terminal 1.9b!

    Оцените статью