- Com порт терминалом windows
- Terminal 1.9b — работаем с COM-портом
- Вливайтесь в обсуждение
- XELFAER
- Николай
- Chiper
- Chiper
- Александр
- Александр
- Mikhail
- Алекс
- Chiper
- Сергий
- Добавить комментарий
- Правила комментирования на сайте:
- Я в соцсетях
- Электроника для всех
- Блог о электронике
- Терминальные программы
- Как пользоваться терминальной программой Terminal 1.9b
- Интерфейс и основные настройки подключения по порту
- Макросы
- Отправка и прием данных
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». Очень удобная терминалка. Рекомендую.
Терминальная программа Terminal 1.9b
Основные возможности Terminal 1.9b:
- работает без инсталяции. Вся программа — один exe-файл размером около 300Кб
- есть счетчик переданных и принятых байтов
- возможность отправлять файлы
- помимо стандартных скоростей (baudrate) есть возможность установить свою нестандартную
- поддерживает до 64 COM-портов
- можно весь лог работы записывать в файл
- можно назначить до 24 макросов
- реализованы Pascalе-подобные скрипты (правда документации по этому скриптовому языку я не нашел. В архиве есть несколько примеров применения скриптов и это все)
Программа очень удачная, легкая, интуитивно-понятная.
Вливайтесь в обсуждение
  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г.
Добавить комментарий
Отправляя комментарий, вы автоматически принимаете правила комментирования на сайте.
Правила комментирования на сайте:
- Не следует писать исключительно заглавными буквами. Это дурной тон.
- Запрещены комментарии не относящиеся к тематике сайта и самой статье.
- Запрещены реплики оскорбляющие других участников проекта. Давайте будем взаимовежливы.
- Запрещены нецензурные слова, идиоматические выражения, призывы к межнациональной и межконфессиональной розни.
- Запрещено обсуждение наркотических веществ и способов их применения.
- Запрещены комментарии с призывами к нарушению действующего законодательства РФ (Уголовного и Административного кодекса).
- Запрещены ссылки на сторонние ресурсы без согласования с владельцем сайта.
- Запрещается использовать в качестве имени комментатора слоганы/названия сайтов, рекламные фразы, ключевые и т.п. слова.
Следует учитывать следующее — все комментарии проверяются на предмет отсутствия спама. При обнаружении признаков спама, в оставленном Вами комментарии, сам комментарий будет незамедлительно удален, а Ваш IP-адрес будет добавлен в черный список без предупреждения!
Учетные записи пользователей, рассылающих спам, блокируются/удаляются без права последующего восстановления.
Я в соцсетях
Следите за обновлениями моего блога в ваших любимых социальных сетях. Просто подпишитесь!
Электроника для всех
Блог о электронике
Терминальные программы
Практически постоянно приходится смотреть что шлет контроллер или заслать в него какой нибудь байтик. Это нужно для отладки, иногда для настройки. Порой для управления. Кому как, я так для отладки использую. Без толкового инструмента тут никак, поэтому я давно уже присмотрел себе парочку прикольных программок.
Первой хотел бы упомянуть 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 баксов для русскоязычных пользователей.
Так что проще было ее зарегистрировать. Тем более штука нужная и уже неоднократно себя окупившая.
Как пользоваться терминальной программой Terminal 1.9b
Как работать с устройствами по COM-порту с помощью терминальной программы?
В различных инструкциях и руководствах вы можете увидеть рекомендации по работе с устройствами через терминальную программу. Как правило, такие действия производят с помощью HyperTerminal — стандартной программы в операционных системах Windows. Мы же рекомендуем использовать терминальную программу «Terminal v1.9b by bray», потому что это более гибкий и удобный в работе инструмент. Ниже мы расскажем как работать с нашими устройствами на примере именно этой программы.
В первую очередь подключите устройство, с которым собираетесь работать, к компьютеру через COM-порт. Подключите питание.
Теперь запустите Terminal v1.9b.
Интерфейс и основные настройки подключения по порту
В верхнем поле находятся параметры подключения:
- Колонка №1:
Connect — кнопка для открытия COM-порта,
Rescan — пересканировать список COM-портов,
Help — справка,
About.. — о программе,
Quit — выход из программы.
Колонка №2:
Колонка №3:
Колонка №4:
Колонка №5:
Колонка №6:
Выбор количества стоповых бит.
Колонка №7:
В разделе Settings находятся дополнительные параметры. Они пригодятся для написания скриптов, работы с нестандартными скоростями или для записи лога от устройства.
В разделе Recieve находятся параметры отображения ответа от устройства.
В разделе Transmit находятся параметры передачи данных на устройство. Кнопки DTR и RTS устанавливают соответствующие выводы в положительное состояние.
Макросы
Поле Macros предназначено для создания пользовательских быстрых клавиш.
Для этого нужно нажать на кнопку SetMacros и в открывшемся окне присвоить каждой кнопке определённую последовательность символов, которая будет отправляться на устройство.
- Блок №1:
Поле для ввода последовательности символов для отправки. Для того чтобы отправить специальные символы, необходимо воспользоваться ASCII таблицей и ввести код символа, предварительно экранировав его знаком «$«. Например, на картинке выше, вы можете видеть экранированный символ возврата каретки $0D (нажатие клавиши Enter)
Блок №2: - Здесь в левом поле задаётся имя кнопки, а в правом отображается сама кнопка.
Блок №3: - Тут задаётся задержка при автоматическом повторении команд.
Блок №4: - Включение автоматического повтора команды через интервал времени, заданный в п.3.
Кнопки Load и Save позволяют сохранить или загрузить файл с макросами, введёнными в этом окне.
Отправка и прием данных
Блок №1:
В этом большом поле вы будете видеть ответы от вашего устройства.
Если в разделе «Settings» вы не забыли поставить галочку «Time«, то перед каждой строкой будет проставлена метка времени. Это бывает очень полезно при анализе логов с устройства.
Блок №2:
Тут находится поле для отправки текста сообщений. Установленная галочка «+CR» будет дописывать к отправляемому сообщению символ возврата каретки (эмулировать нажатие клавиши Enter). Кнопка «->Send» отправит ваше сообщение на устройство.
Блок №3:
В самом низу находится поле, где вы можете видеть отправленные на устройство команды.
Теперь вы знакомы с интерфейсом Terminal 1.9b!