Терминальные программы для com порта

Терминальные программы для com порта

Advanced Serial Port Terminal is a must-have tool for every developer and programmer. This session-based multi-purpose application lets you connect to any serial port device to check, troubleshoot or debug its work and connection. Our terminal is much more functional than standard Windows Terminal, as it is able to send/receive various types of data (ASCII string, binary, octal and hexadecimal) over a serial line, redirect input/output data streams into a specified file, troubleshoot and test modem settings, etc.

Using Advanced Serial Port Terminal you will be able to change serial port settings without the need to close and reopen the serial port, adjust baudrate, databits, parity, stop bits, flow control parameters; save all received bytes into a file for later analysis and lots more. Send, receive and view data in hexadecimal format, switch between dump and terminal view modes: all of these features are very useful for debugging and testing serial port connections.

Терминальные программы для com порта

Advanced Serial Port Terminal is commercial software with a single license costing $39.95.

Николай

Кто может быть подскажет, где исходники раздобыть?
Спасибо. Долго не мог найти прогу для простой проверки ком-порта
Пожалуйста!

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

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

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

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

TbK — удобный, многофункциональный и бесплатный терминал для работы с COM-портами и поддержкой Modbus-протокола

Здравствуйте, уважаемые хабровчане! Я хотел написать просто комментарий к статье «Программное обеспечение для тестирования и наладки устройств и сетей на базе MODBUS», однако для вновь зарегистрированных пользователей сайт не даёт это сделать для «не свежих» публикаций. Поэтому пишу это в виде публикации, что бы хоть каким-либо образом донести информацию. Суть этого небольшого поста — представить вниманию читателей новый терминал для работы с COM-портами, который, возможно, многим придётся по душе. А теперь — непосредственно сам пост:

Установка и настройка виртуальных COM портов

Думаю, что каждый из embeded-разработчиков хотя бы раз в жизни пользовался терминалом для работы с COM-портом ПК — простой программой, позволяющей персональному компьютеру через встроенный интерфейс RS-232 (или USB-переходник) общаться с внешними устройствами, например такими, как GSM-модем или просто обмениваться данными с микроконтроллером в процессе разработки и отладки прошивки.

Таких терминалов на данный момент создано довольно много, как говорится «на любой вкус». Однако, как часто бывает, когда начинаешь более-менее длительно работать в какой-либо программе, начинает постоянно не хватать то одной функции, то другой, то одно кажется сделано неудобно, то другое. Всё время ловишь себя на мысли: «это лучше сделать было бы так, а это — вот эдак» 🙂

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

В основе его дизайна легла простая, но как мне кажется правильная идея, что при обмене данными с устройством все передаваемые и принимаемые данные должны отображаться в виде диалога двух «умных» устройств так, как этот диалог отображается в любом современном мессенджере: слева вопрос, справа и ниже — ответ, слева и ещё ниже — новый вопрос и т.д. При таком «разнесении» данных существенно улучшается визуальное восприятие протокола обмена двух устройств.

Другим фактором, но уже в области функциональности терминала послужило частое требование видеть обмен двух «внешних» устройств, которые общаются с друг с другом (например какой-либо контроллер общается с подключенным к нему GSM-модемом), так сказать «подсматривать» их обмен данными, а не отсылать данные с компьютера. Это привело к появлению в терминале функции «мониторинга» COM-портов. Реализуется это просто и очевидно: программа открывает ОДНОВРЕМЕННО два COM-порта, оба в режиме ПРИЁМА. Все принятые данные по обоим портам заносятся в хронологическом порядке в описанный выше «диалог».

Изначально разбивка принимаемых данных происходила классически — по терминаторам перевода строки и возврата каретки (D, A), что характерно для текстовых протоколов. Позже была добавлена функция разбивки принимаемых данных по таймауту молчания, что очень удобно для работы с бинарными протоколами, где нет характерного терминатора.

С годами терминал оброс дополнительными полезными и удобными «плюшками», которые по достоинству могут оценить многие. Была добавлена таблица на 1000 макросов, детализация последнего принятого блока данных, детальная (побайтная) разбивка любой строки. Добавлена реализация даже такой тривиальной задачи, как перевод числа между двоичной, десятичной и шестнадцатеричной системами счисления, побитный сдвиг числа влево и вправо, просмотр таблицы ASCII. Эти операции можно выполнить и другими программами, но очень УДОБНО, когда всё это собрано в одном месте и всегда под рукой.

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

Внешний вид главного окна терминала:

На последних этапах разработки терминала TbK была добавлена поддержка протокола MODBUS, причём реализован как режим MASTER, так и режим SLAVE. То есть терминал может как опрашивать MODBUS-устройства, так и имитировать из себя такое устройство. Поддерживаются все самые «ходовые» функции протокола: 1, 2, 3, 4, 5, 6 и 16

Все регистры заполняются в виде таблиц, которые удобны для восприятия.

Так выглядят дополнительные окна для работы по протоколу Modbus:

Основной функционал терминала:

  • визуально — пространственное разделение принимаемых и отсылаемых данных (либо данных, принимаемыми разными портами – в режиме мониторинга), что облегчает их восприятие оператором, так как данные представлены в виде диалога, как в мессенджере;
  • представление данных в текстовом (TEXT), десятичном (DEC), шестнадцатеричном (HEX) и бинарном (BIN) форматах в табличном виде (Таблицы) и в виде свободного текста (Memo). В режиме Memo имеется возможность выбрать фонт, размер и цвет текста;
  • таблица из 1000 макросов и комментариев к ним, каждый из которых может быть мгновенно отослан в порт двойным кликом по его номеру;
  • терминал удобен для работы как с текстовыми (символьными), так и с бинарными протоколами обмена; – различные режимы разбивки принимаемых данных на строки: по обнаружению фиксированного терминатора (D, A, DA, D or A), по таймауту после окончания приёма последнего байта, по приёму фиксированного количества байт;
  • автоматическое добавление к отсылаемым данным различных контрольных сумм (CRC) и терминаторов: D, A или DA (на выбор);
  • детализация последнего принятого блока данных (DLRB) — инструмент, позволяющий в реальном масштабе времени разбивать принимаемые данные по отдельным байтам, определив для каждого байта свой порядковый номер в посылке и задав отдельный цвет для подсвечивания каждого байта или группы байт, что облегчает визуальное восприятие данных. Это удобно при работе с позиционными протоколами, когда положение каждого байта в посылке всегда фиксировано и не изменяется во времени;
  • возможность в реальном масштабе времени вычислять на основе принимаемых данных одно-, двух- и четырёхбайтовые величины и, принимая их за аргументы, вычислять на их основе сложные функции, заданные текстовой формулой;
  • инструменты, позволяющие реализовать поддержку протокола Modbus, как в режиме Master, так и в режиме Slave. Поддерживаются 1, 2, 3, 4, 5, 6 и 16 функции протокола;
  • режим сохранения всех принимаемых / отсылаемых в log-файл;
  • инструмент Programs, позволяющий реализовать выполнение простейших программ на основе отсылки заданных макросов с определёнными паузами между ними с возможностью зацикливания выполнения отдельных блоков;
  • инструмент String, позволяющий детально проанализировать строку, скопировав её через буфер обмена и разбив по байтам, определить её длину, подсветить отдельные байты определённым цветом и привязать к каждому свой комментарий, вычислить различные контрольные суммы данной строки, произвести перевод заданного числа между различными системами исчисления (DEC<>HEX<>BIN), разложив его на отдельные байты, произвести побитный сдвиг этих байт влево и вправо;
  • быстрый доступ в терминале к встроенной справочной информации: таблицы ASCII-символов, описания выводов COM-порта (цоколёвки разъёма), схем распайки кабеля для реализации режима мониторинга COM-портов.

Сама программа написана на Delphi, работает только под Windows, для загрузки доступен сам exe-файл, а также два файла инструкции — на русском и английском языках.

Сам терминал полностью бесплатный, без каких-либо ограничений по использованию.

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

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

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

Первой хотел бы упомянуть 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 она выполнила.

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

Спасибо. Вы потрясающие! Всего за месяц мы собрали нужную сумму в 500000 на хоккейную коробку для детского дома Аистенок. Из которых 125000+ было от вас, читателей EasyElectronics. Были даже переводы на 25000+ и просто поток платежей на 251 рубль. Это невероятно круто. Сейчас идет заключение договора и подготовка к строительству!

А я встрял на три года, как минимум, ежемесячной пахоты над статьями :)))))))))))) Спасибо вам за такой мощный пинок.

116 thoughts on “Терминальные программы”

siemensfn1 :
Ну что,опять я первый)
Мне к сожалению эта информация пока ни о чём не говорит 🙁

И офигительная по простоте, кросплатформенная и с исходным кодом на Qt: Qt_comport
http://www.qt-apps.org/content/show.php/QT_comport?content=95246 Позволяет выбирать базовые настройки порта, вывод/посыл в ASCII, hex, двоичной системе, да и пишет количество принятых/отправленных байт.
Не скатерть-самобранка, конечно, но модифицируй-нехочу.

Ай, спасибо, дружище. Изучаю qt, как раз хотел что-нить с компортом найти
tempfolder :

Для меня многим(не только хакерам 😉 более удобна утилита PuTTY.
С Terminal v1.9b by Bray тоже работал, но на больших скоростях шибко комп напрягает.
А PuTTY довольно универсальна не только для СОМ но и для сетевых протоколов.
Самое главное нет проблем с отображением кириллицы, + шибко шустрая, + проект Open Source. Так что достойная альтернатива.

Программа Terminal 1.9b

Terminal 1.9b

Программа Terminal 1.9b — это полезная и небольшой программы эмуляции последовательного порта (RS232), так же, данная программа позволяет передавать макрокоманд.

Основные возможности Terminal 1.9b

► Работает без установки, небольшой размер файле 248k
► Возможность отправки файлов
► Счетчик символов
► Скорость передачи, до 256 кбит
► Сохраниение файл журнала (HEX (

увы точнее делитель не устанавливается. ).

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

Для этого необходимо поставить галку в Записать в файл,

будет создан файл с именем файла в виде текущей даты и времени и расширение log (например 05_06_2023_15_15_07.log)

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

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

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

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

7. Проиграть сценарий из файла (передача данных + задержка между данными).

8. Показывать состояние линий: CTS, DSR, RI, CD.

9. Изменять состояние линий: DTR, RST.

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

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

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

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

4. Показывать ответы (RX от устройства) при проигрывании сценария из файла.

5. Вести в логах длинную историю (автоматическое укорачивание при достижении заданной длинны).

На текущий момент планов по развитию и доработки программы много.

Обычно в процесс работы с программой, во время отладки очередного устройства,

появляется необходимость в новом функционале.

Так в программу попадает новый функционал, продиктованный практикой.

При добавления нового функционала в программу, иногда добавляются и проявляются

глюки (по недосмотру), прошу отнестись с понимание 🙂

Глюки исправляются, и новая версия выкладывается в репозитарий.

На основе данной программы была создана еще одна утилита для работы по протоколу PELCO-D,

для тестирования и управления камерами и поворотными платформами.

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

[+] Новое: В приемном окне добавлена кнопка ПАУЗА, которая позволяет не выводить

принимаемый поток в окно терминала, пока не будет нажата повторно.

При этом данные продолжают приниматься и накапливаться во внутреннем буфере.

Данный функционал предназначен для просмотра части принятого потока при постоянной

передаче со стороны устройства .

[+] Исправление: Кнопка ПОИСК(СОМ портов в системе) выключается при открытии порта.

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

[+] Исправление: Замораживание интерфейса терминала при приеме потока данных.

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

[+] Исправление: Не верная полярность сигналов CTS/DSR/RI/CD.

[+] Исправление: Терминал вылетает с ошибкой при запуске, если в системе нет СОМ портов.

Текущая версия: v1.4.0 (По просьбе коллеги был добавлен новый функционал).

[+] Новое: Вывод в строку статуса состояния сигналов CTS/DSR/RI/CD.

[+] Новое: Добавлена возможность изменения состояния сигналов RTS/DTR.

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

[+] Исправление: Вывод в TXT и HEX строки.

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

[+] Исправление: Зависание программы при отключении COM порта из системы (выдернули кабель. ).

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

[+] Исправление: Перепутаны STOP BIT 1.5 2.

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

[+] Исправление: Не корректный вывод кодов r n.

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

[+] Исправление: Подвисание интерфейса при приеме не отображаемых кодов (0x00-0x19).

[+] Исправление: Конвертации кодов n -> nr.

Текущая версия: 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

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

Терминальные программы для com порта

Возникли вопросы по работе или проблемы с терминальной программой AL Terminal?

Хоть COM порт уже и отжил время всеобщей распространённости в компьютерной области, но в радиолюбительской практике и промышленной технике он до сих пор остаётся очень актуальным.

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

Настройка терминальной программы для работы с платформой DIXOM-C12

  1. Скачайте терминальную программу AL Terminal (ссылка в таблице выше)
  2. Распакуйте архив ALTerminal_v1.001.0047.rar
  3. Запустите программу ALTerminal (Установка не требуется)
  4. В верхнем меню выберите Отображение->CR+LF(Завршение строки)-> CR+LF
  5. Выберите порт к которому подключена платформа и скрость 256000
  6. Программа готова к работе!

Возможно потребуется установка драйвера:

Оцените статью
TutShema
Добавить комментарий