bg

Справка онлайн | Advanced Serial Port Monitor

О программе

Программа предназначена  для работы с последовательным портом (RS232, COM port, UART) на IBM - совместимых компьютерах под управлением операционной системы Windows и обладает следующими возможностями:

 

передача произвольных данных в обоих направлениях (от компьютера и к нему) в дуплексном режиме (одновременный прием и передача);

работа в автоматическом и ручном режимах;

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

произвольный источник данных (строка ввода или файл);

вывод принимаемых данных в файл;

гибкая настройка параметров связи (скорость, биты данных, и т.д.);

возможность подключения внешних модулей;

дружественный, полностью настраиваемый интерфейс.

 

Системные требования

Для запуска программы необходима одна из ниже перечисленных операционных систем:

 

Windows 2000 и выше (требуются права администратора).

Windows Server 2003 и выше (требуются права администратора).

 

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

 

Процесс установки

Запустите программу установки aspmon4.exe.

 

Если на Вашем компьютере была ранее установлена любая бета-версия, то удалите ее.

 

Выйдите на время установки из работающей программы Advanced Serial Port Monitor

 

По умолчанию, Advanced Serial Port Monitor будет установлен в директорию "/Programs Files/Advanced Serial Port Monitor" вашего системного диска, но Вы можете изменить этот путь.

 

В стандартной поставке Advanced Serial Port Monitor отсутствуют файлы дополнительных модулей, которые Вы можете скачать с нашего сайта.

Первый запуск

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

 

При первом запуске программы, сразу после инсталляции, Вы попадаете в главное окно программы (рис.1).

 

serial-port-monitor-main-window-view

Рис.1. Главное окно программы.

 

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

1.настроить параметры связи (скорость, количество бит данных, количество стоповых битов и т.п.);
2.выбрать из списка доступных COM портов, нужный Вам;
3.нажать кнопку "Открыть". После того, как Вы нажали кнопку "Открыть" COM порт станет недоступным для других программ, т.к. программа использует его в монопольном режиме. Если COM порт уже был занят ранее другим приложением, то будет выведено предупреждающее сообщение;
4.набрав нужные данные в строке ввода нажмите клавишу "Enter" и кнопку "Отправить" в окне программы.

 

Теперь Ваши данные были отправлены в COM порт. Принимаемые данные будут отображаться на экране.

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

 

Переключение между режимами работы программы осуществляется с помощью пункта меню "Режим".

 

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

Как пользоваться

В главном окне программы необходимо установить параметры связи. Такие как: скорость передачи данных, количество бит данных, количество стоповых бит и т.п. Если Вы не знаете что это такое, то я советую сначала почитать информацию о COM-портах и последовательном способе передачи данных.

 

Расширенные настройки протокола передачи данных и методов контроля передачи данных доступны в опциях. Доступна работа программы режиме интерфейса RS-485, позволяющей вести полудуплексную передачу данных, при которой программа управляет линии RTS для выбора направления потока данных.

 

Далее необходимо нажать кнопку "Открыть". При нажатии на эту кнопку произойдет открытие (эксклюзивное) COM-порта с заданным номером. В случае успешного выполнения операции открытия, в статусной строке появляется сообщение, и СОМ-порт становится доступным для отправки и получения данных.

 

Замечание: Под номером СОМ-порта подразумевается не физическое расположение устройства, а номер заданный данному СОМ-порту в свойствах операционной системы Windows. Этот номер связан с адресом устройства (UART - устройства асинхронной передачи данных) в данной системе. Этот адрес можно изменить в установках BIOS/Setup.

 

Внимание: Если Вы не знаете, что такое BIOS или UART, то познакомьтесь и не производите никаких настроек в Setup'е. Это может привести к нежелательным последствиям.

 

Также в главном окне программы находятся (см. рис.1 в предыдущем разделе):

 

Окно для вывода поступающих данных;

Панель управления работой COM порта;

Кнопка очистки окна отображения данных;

Поле, в котором Вы можете разрешить или запретить запись в файл поступающих данных;

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

Кнопки для быстрого доступа к наиболее часто используемым опциям;

 

Необходимо определиться с режимом работы программы:

 

Ручной - в этом режиме данные отсылаются при нажатии кнопки "Отправить";

Автоматический - в этом режиме данные отсылаются автоматически, пакетами, через интервал, определенный в поле "Задержка" в главном окне программы;

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

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

 

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

 

В ручном и автоматическом режимах Вы можете использовать в качестве источника данных файл. Это может быть текстовый или двоичный файл. Выбор источника данных осуществляется через пункт меню "Исходные данные".

 

Строка ввода - для отправки данных используется строка ввода в главном окне программы. Вы можете сформировать пакет данных, содержащий также символы с кодом < #20h, отправка которого произойдет в соответствии с выбранным режимом работы;

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

 

Подробнее о каждом из источников данных читайте в соответствующем разделе.

 

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

 

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

 

Принимаемые и отсылаемые данные также могут сохранятся в одном или разных файлах. Расширенная настройка режима формирования файлов и разделения данных доступна в опциях.

 

Для того, чтобы произвести полную настройку программы перейдите к пункту меню "Опции|Настройка программы". В появившемся окне (рис.1), переходя от одного раздела к другому внесите необходимые изменения.

 

serial-port-monitor-flowcontrol

Рис.1 Контроль передачи данных

Признак конца строки

Для идентификации передаваемых пакетов данных Вы может добавлять в конец пакета признак его окончания. Также для того, чтобы программа могла выделять пакеты данных из общего входящего информационного потока необходимо задать признак конца строки на прием данных. Эта параметры настраиваются опциях в пункте "COM порт|Признак конца строки"

 

serial-port-monitor-end-sign

Рис.1. Признак конца строки

 

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

 

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

Вид окна и отображение данных

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

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

 

В опциях в пункте "Прочее|Вид окна" вы можете настроить (перечислено сверху - вниз):

 

serial-port-monitor-window-view

Рис.1. Вид окна

 

1.Запускать в свернутом состоянии - при старте программы главное окно не появляется на рабочем столе, а помещает свою иконку в системную панель;
2.Сворачивать в панель рядом с часами - Вы можете выбрать, чтобы программа при сворачивании помещала свою иконку на панели рядом с часами (SysTray). Потом, при необходимости, Вы можете щелкнув левой кнопкой мыши по иконке восстановить прежнее положения окна. При нажатии правой кнопки мыши на иконке будет выведено контекстное меню. Во  время нахождения курсора на иконкой в Systray будет выведено краткое текущее состояние Advanced Serial Port Monitor.
3.Сворачивать при запуске внешнего модуля - главное окно программы будет исчезать до завершения работы внешнего модуля.
4.Выводить данные на экран в свернутом состоянии - данные на экран будут выводиться только в том случае если главное окно программы видимо. В некоторых случаях это может уменьшить нагрузку на процессор.
5.Скрыть строку статуса, скрыть экран принимаемых данных - Вы можете изменить внешний вид окна, растянув его по вертикали или горизонтали. Также Вы можете убрать из поля зрения строку статуса или окно принимаемых данных.
6.Вид экрана - позволить Вам настроить цвет фона и символов в окне принимаемых данных
7.Полоса прокрутки - отображать или нет полосу прокрутки в окне отображения принимаемых данных
8.Количество строк в экранном буфере - если будет превышено количество строк, указанное в этой настройке то окно отображения принимаемых данных будет автоматически очищено.

 

Также в пункте "Прочее|Отображение данных" Вы можете настроить вид данных отображаемых в окне программы:

 

serial-port-monitor-data-view

Рис.2. Вид данных

 

1.Режим отображения данных с кодом < 20 Hex - поскольку принимаемые данные состоят из набора байтов Вы может настроить отображение байт данных с кодом < 20 Hex. Эти данные не имеют соответствующего символа, поэтому эти данные могут быть отображены только в виде шестнадцатеричного или десятичного кода.
2.Режим отображения данных с кодом > 20 Hex - поскольку принимаемые данные состоят из набора байтов Вы может настроить отображение байт данных с кодом > 20 Hex. Вы можете указать отображать эти данные в виде шестнадцатеричного или десятичного кода или в виде символа, соответствующего данному коду.
3.Вы можете настроить пользовательский формат отображения байт данных. Директива %d указывает отображать значение десятичного кода, директива %x - значение шестнадцатеричного кода. Вы можете указывать в формате другие обрамляющие символы.
4.Если ведется прием данных в ASCII кодировке, то можно указать кодировку принимаемых данных, для корректного отображения их в окне принимаемых данных.
5.Отображать длину принятого пакета данных - будет подсчитываться длина пакета и выводиться в окно принимаемых данных;
6.Подсвечивать на экране отсылаемые данные - строка, с отсылаемыми данными будет подсвечена указанным цветом.

Полезные советы

Просмотрите всплывающие подсказки на всех элементах окна - это поможет Вам получить представление о выполняемой этим элементом функции;

Нажатие кнопки "Послать" аналогично нажатию клавиши "Enter" в строке ввода;

Скорость передачи, количество бит данных, количество битов останова, тип четности и прочее можно менять в процессе работы программы без закрытия COM порта;

Многие элементы главного окна программы имеют "горячие" клавиши для быстрого доступа их функциям:

 

Ctrl+S - аналогично нажатию клавиши "Послать";

Ctrl+O - аналогично нажатию клавиши "Открыть/Закрыть";

Ctrl+W - активировать/отключить запись в файл;

Ctrl+C - аналогично нажатию кнопки "Очистить";

F4 - переход к строке ввода данных;

Ctrl+T - активизировать режим, где исходными данными является строка ввода;

Ctrl+F - активизировать режим, где исходными данными является файл;

Ctrl+Alt+E - переход к опциям настройки признаков конца пакета данных;

Ctrl+Alt+F - переход к опциям настройки формирования файлов протокола;

Ctrl+Alt+С - переход к дополнительным опциям конфигурирования COM порта.

 

При смене номера коммуникационного порта не обязательно нажимать кнопку "Стоп". Закрытие текущего и открытие нового коммуникационного порта произойдет автоматически;

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

Вид метки времени

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

 

Затем вы можете настроить вид штампа времени. Выберите желаемый формат в группе "Режим отображения" и вы увидите пример в поле "Образец". Поле "Обрамляющие символы" позволяет добавить символы, которые будут добавлять до и после метки времени. На закладке "Шрифт и цвета" вы можете задать цвет метки времени. Если вы будете анализировать лог файлы или данных в большом объеме, то возможно, что вам будет полезна опция "Добавлять знак направления в метку". При ее включении метка времени будет содержать признак направления передачи данных (TX - передача, RX - прием, SYS - системные события).

 

serial-port-date-time-stamp

Рис.1. Настройка вида метки времени

Параметры командной строки

С помощью параметров командной строки вы можете скорректировать параметры ASPM при запуске программы и выполнить несложные автоматические операции. У ASPM есть только один параметр следующего формата.

 

aspmon.exe -f script.txt

 

При запуске программа выполнит скрипт из файла script.txt.

 

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

Произвольная скорость передачи

Вы можете добавить свою произвольную скорость передачи в список, который уже есть в программе. Для этого откройте в текстовом редакторе файл "custombaud.txt" в папке с программой и добавьте вашу скорость передачи, по одной в строке. После изменения файла, необходимо перезапустить ASPM.

 

Пример:

 

; Please, add your custom baud rates here

; One baudrate per row. Please, use digits only

; After you finished, please, restart ASPM

28800

Файлы

В программе Advanced Serial Port Monitor используется два типа файлов.

 

Файл исходных (отправляемых) данных - из этого файла считываются данные для передачи через COM порт.

Файлы протокола - используются для сохранения данных, полученных или отправленных через COM порт;

 

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

 

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

Файл исходных данных

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

Программа может работать со следующими типами файлов:

 

selecting-data-soruce-file

Рис.1. Файл исходных данных

 

Текстовые - данные из этого типа файла считываются построчно. При считывании строки из файла обрезается существующий признак конца строки, а при передаче данных добавляется (или нет) признак конца строки, заданный в настройках программы;

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

 

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

 

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

 

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

Файлы протокола

Данный тип файлов позволяет сохранять всю историю обмена данными между Advanced Serial Port Monitor и принимающей стороной. В файл протокола могут быть записаны как принимаемые данные, так и передаваемые данные. Разрешение на запись исходных данных в файл протокола задается в меню "Опции" главного окна программы. Для быстрого доступа к окну настройки формирования файлов протокола воспользуйтесь кнопкой в главном окне программы.

 

creating-protocol-file-mode

Рис.1 Файлы протокола

 

Существует несколько возможностей формирования файлов протокола:

 

Один файл для отсылаемых и получаемых данных - все данные протоколируются в одном файле, имя и расположения которого вы укажите;

Отсылаемые и принимаемые данные в разных файлах - отсылаемые и принимаемые данные могут располагаться в разных файла. Имя и расположения файлов Вы также можете настроить;

Каждый пакет данных в отдельном файле - в этом режиме каждый запрос и полученная порция данных записывается в отдельный файл (запрос и принятый пакет в разных файлах). Вам необходимо указать папку, где будут формироваться файлы. Имя файла формируется из префикса (который Вы можете настроить) и автоматически увеличивающегося номера. Поступающие пакеты данных должны формироваться отсылающей стороной  с частотой не менее 300 мс. Иначе принимаемые данные будут записаны как один пакет. Поскольку имя файла формируется автоматически, то возможна ситуация, когда будет формироваться файл с именем уже существующего файла. В этом случае старый файл будет уничтожен и на его место будет записан новый. Вы можете настроить, что новые данные будут дописаны в конец существующего файла.

 

Активизация записи в файл протокола принимаемых произойдет при нажатии  "горячей клавиши"  или при изменении состояния разрешения записи в файл в главном окне программе.

 

Внимание: При активизации записи в файл в первых двух режимах, все данные в нем, если он существовал будут сохранены, поэтому необходимо следить за размером файла, дабы не допустить неограниченного роста его объема!

 

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

Ручной режим работы

В этом режиме отправка данных через СОМ-порт осуществляется после нажатия кнопки "Послать". Источником данных может служить строка ввода или файл данных. При этом:

 

если задан источником данных строка ввода - будет передана непустая строка из поля ввода или предыдущее посланное значение. Предыдущее значение сохраняется при выходе из программы и восстанавливается при очередном старте;

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

 

serial-port-manual-sending

Рис.1. Поле ввода команды для отправки

Автоматический режим работы

В этом режиме данные из строки ввода или файла отправляются через интервал, заданный в поле "Задержка". Принцип отправления строк не отличается от описанного выше в пункте "Ручной режим".

Если же исходные данные берутся из файла, то для текстовых (ASCII) файлов берется очередная строка, для двоичных файлов берется порция данных до очередного признака конца строки на передачу. Если признак конца строки не задан, то будет послан ВЕСЬ файл.

 

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

 

Режим наблюдателя

В этом режиме Advanced Serial Port Monitor не отсылает и не принимает никаких данных, а только лишь наблюдает за обменом данными, производим другими программами.

 

Для того, чтобы наблюдать передаваемые и принимаемые данные необходимо открыть COM порт до запуска исследуемой программы. В случае, если исследуемая программа будет передавать или принимать данные через COM порт, весь процесс обмена данными будет отражаться в окне принимаемых данных. Не забудьте выставить флаг в меню "Опции|Выводить исходные данные на экран" для того, чтобы наблюдать передаваемые исследуемой программой данные (если это необходимо). Также можно вести протокол обмена данными.

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

 

serial-port-system-events

Рис.1 Системные события

Режим внешних модулей

В этом режиме Advanced Serial Port Monitor может расширять свои возможности за счет дополнительных модулей.

 

В самом простом случае это эмулировать работу устройства, работающего через интерфейс RS232 или RS485. Процесс эмуляции определяется подключенным внешним модулем. В режиме внешних модулей Advanced Serial Port Monitor при приеме данных передает управление внешнему модулю, а также находится в ожидании команд от внешнего модуля.

 

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

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

Строка ввода

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

 

serial-port-manual-sending

Рис.1. Поле ввода в главном окне

 

Искать Hex коды в виде #XX - В строке ввода также можно задавать символы с заранее известным кодом от 0 до FF Hex. Для этого необходимо ввести (или добавить к уже имеющейся последовательности символов) строку вида #XX, где # - символ-префикс, а  XX шестнадцатеричное значение. Если необходимо послать символ #, то его необходимо набрать дважды.

 

parsing-ASCII-characters

Рис.2 Обработка введенной строки

 

Пример 1: Необходимо послать символ с кодом 128 (Dec) или 80(Hex). Тогда вводимая строка будет иметь вид: #80.

Пример 2: Необходимо послать символ с кодом 2 (Dec) или 2(Hex). Тогда вводимая строка будет иметь вид: #02.

Пример 3: Необходимо послать строку вида #02MB. Тогда вводимая строка будет иметь вид: ##02MB.

 

 

Находить ASCII коды с обрамляющими символами - в этом режиме вы можете ввести код ASCII в текстовом виде из списка: NUL, SOH, STX, ETX, EOT, ENQ, ACK, BEL, BS, HT, LF, VT, FF, CR, SO, SI, DLE, DC1, DC2, DC3, DC4, NAK, SYN, ETB, CAN, EM, SUB, ESC, FS, GS, RS, US. Введя "<", затем текстовое обозначение кода ASCII, ">" (без кавычек).

 

Пример 5: <STX>Test<ETX>

 

 

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

 

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

 

inserting-ASCII-characters

Рис.3 Меню

Файл

См. раздел "Файл исходных данных"

 

Script Language

The basic syntax of the script language of Advanced Serial Port Monitor (ASPM) is:

 

<command> <data1> <data2>          ;<comment>

 

where <command> describes the action to perform, <data1> and <data2> are optional arguments, and <comment> is an optional comment. The format of the arguments vary among commands. The various components of each line must be separated by at least one space or a comma. Additional spaces are permitted but ignored. Commands are not case-sensitive.

 

The following is a list of supported commands followed by brief descriptions and discussions of the relationships between various commands:

 

:<label>

 

;<comment>

 

INITPORT <COM1..COM99>

 

 

IF CONNECTED <label>

 

DONEPORT

 

SEND 'XXXXXX'

 

WAIT 'XXXX' <timeout in ms>

 

IF SUCCESS <label>

 

IF TIMEOUT <label>

 

IF FAIL <label>

 

WAITMULT 'XXX|YYY|ZZZ' <timeout in ms>

 

IF 1,2,3...127

 

GOTO <label>

 

DISPLAY 'XX XX'

 

SENDBREAK <duration in ms>

 

DELAY <duration in ms>

 

SET <option> <data>

 

 

 

RUN <command> <wait>

 

 

 

:<label>

 

A point in the script file that can be jumped to via a GOTO or IF instruction. A label name can be any type of string without embedded spaces. For example ':TopOfLoop', ':TOP_OF_LOOP' are both acceptable; ':top of loop' is not.

 

;<comment>

 

Any line that starts with a semicolon is considered a comment. Blank lines are also considered comments and may be freely added for readability.

 

INITPORT <COM1..COM99>

 

Opens the specified port. Only one port at a time may be opened.

 

DONEPORT

 

Closes a port previously opened with INITPORT.

 

SEND 'XXXXXX'

 

Transmits the string 'XXXXXX'. Control characters may transmitted by preceding a character with '^'. For example, a control C character is represented by ^C. You'll use this feature most often when sending carriage returns. For example, SEND 'myname^M' might be an appropriate response to a logon prompt where you would normally type your name and press <Enter>. NOTE: The control characters must be inside the quote marks, if quote marks are necessary. If the string does not contain any embedded blanks the beginning and ending quotes can be omitted. The quotes are required if the string has embedded blanks. Here are some examples to illustrate this point:

 

SEND ABC      sends ABC

SEND 'ABC'    sends ABC

SEND A B C    sends only the A ('B C' is considered a comment)

SEND 'A B C'  sends A B C

 

WAIT 'XXXXX' <timeout in ms>

 

Waits up to <timeout in ms> milliseconds for a particular received string. The string comparison is always case insensitive. However, the string comparison need not be complete. If, for example, a host returns the string 'Host XXXX ready' where XXXX might vary from session to session, the WAIT command should wait for 'ready' only. As with the SEND command, beginning and ending quotes are only required if the string contains embedded blanks. This command sets one of three conditions: SUCCESS, FAIL or TIMEOUT, which can be tested with the IF command. SUCCESS is set if the string is received before the timeout. TIMEOUT is set if the timeout expires before the string is received. FAIL is set if the timeout expires and all retries are exhausted.

 

IF SUCCESS/TIMEOUT/FAIL/RING/RTS/CTS/DTR/DSR <label>

 

Tests the condition set by the last command and, if the tested condition is true, script execution jumps to <label>. If the condition is not true then execution continues with the next statement.

 

RING/RTS/CTS/DTR/DSR condition tests corresponding pin state.

 

WAITMULTI 'XXX|ZZZ|YYY', <timeout in ms>

 

Waits up to <timeout in ms> milliseconds for one of several substrings. The bar character (|) separates the substrings. The comparisons are always case insensitive. The maximum length of the entire string is 255 characters. As with the SEND command, beginning and ending quotes are only required if the string contains embedded blanks.

This command sets a numeric condition result based on the substring received: '1' is set if the first substring is received, '2' is set if the second substring is received, and so on. If none of the strings are received then TIMEOUT is set; if all retries have been exhausted then FAIL is set.

 

Note: YYY is being tested first then ZZZ and XXX. ZZZ is being tested first then XXX. If YYY is a part of ZZZ or XXX, but a serial port received ZZZ or XXX, then YYY condition will be executed.

 

IF 1,2,3...127 <label>

 

Tests the condition set by the last WAITMULTI command and, if the tested condition is true, script execution jumps to <label>. If the condition is not true then execution continues with the next statement.

The following example sends a modem dial command, then waits for one of CONNECT, NO CARRIER, or BUSY responses. If none of the responses are received then control falls through to the GOTO statement:

 

send 'atdt260-9726^m'

waitmulti 'connect|no carrier|busy' 60000

if 1 HandleConnect

if 2 HandleNoConnect

if 3 HandleBusy

goto HandleTimeout

:HandleConnect

 ...proceed with session

:HandleNoConnect

 ...handle noconnect error

:HandleBusy

 ...handle busy error

...

 

GOTO <label>

 

Unconditionally jumps to <label>.

 

DISPLAY 'Just did something'

 

This can be used to monitor the progress of the script and to aid in debugging.

 

EXIT

 

Exit the program.

 

SENDBREAK <duration in ms>

 

Transmits a break of <duration in ms> milliseconds.

 

DELAY <duration in ms>

 

Delays for <duration in ms> milliseconds. The script doesn't yield during delays so keep the delays as short as possible.

 

PLUGIN START <file name>

 

Execute plugin module with <file name> file name. This plugin must exists in the Plugins folder of ASPM.

 

PLUGIN STOP <file name>

 

Stop <file name> plugin's execution. This plugin must exists in the Plugins folder of ASPM.

 

PLUGIN SHOW <file name>

 

Sets the plugin's main window to normal state.

 

PLUGIN HIDE <file name>

 

Sets the plugin's main window to minimized state.

 

MODE <mode>

 

Value:

manual - manual mode;
spy - spy mode.

 

SOURCE <data source>

 

Value:

•        string - use the input string as a data source;

•        file - use file as a data source.

 

CLEAR - clear data in the screen.

 

SET BAUD <number>

 

Sets the Baud property of ASPM.

 

SET DATABITS <5,6,7,8>

 

Sets the DataBits property of the ASPM. Allowable values are 5, 6, 7 or 8.

 

SET FLOW <RTS/CTS,XON/XOFF,NONE>

 

Sets flow control options for the ASPM. Allowable values are RTS/CTS for hardware flow control, XON/XOFF for software flow control, and NONE to turn off all flow control.

 

SET PARITY <NONE,ODD,EVEN,MARK,SPACE>

 

Sets the Parity property of the ASPM. Allowable values are NONE, ODD, EVEN, MARK or SPACE.

 

SET STOPBITS <1,2>

 

Sets the StopBits property of the ASPM. Allowable values are 1 and 2.

 

SET RETRY <data>

 

Sets an internal retry count that is incremented whenever WAIT or WAITMULTI result in a TIMEOUT condition. When <retry count> TIMEOUTs have occurred the FAIL condition is set. The default is 1, meaning no retries are attempted.

 

SET LEFT <data>

Sets the position of main window on screen.

 

SET TOP <data>

Sets the position of main window on screen.

 

SET WIDTH <data>

Sets the main window width in pixels.

 

SET HEIGHT <data>

Sets the main window height in pixels.

 

SET WINDOWSTATE <data>

Sets the main window state. 0 - maximized, 1 - minimized, 2 - normal state.

 

 

RUN <command> <wait>

 

Executes the specified command, batch file or program. <wait> can be true or false; and determines whether the script waits for the command to complete its execution. <wait> is true by default.

 

Note: the command should contain full path to batch file or program. If the path contains spaces then the command should be enclosed by "".

 

Command example: RUN "c:\Program Files\Advanced Serial Port Monitor\command.bat" false

 

 

Here's an example logon script showing how these commands might be used to log into a host or terminal server:

 

SET RETRY 10                   ;Try 10 times

:Again

SEND ^C                        ;Send an attention character

WAIT 'READY' 182               ;Wait 10 seconds for response

IF SUCCESS Logon               ;Got prompt, continue with logon

IF TIMEOUT Again               ;Try again if we timed out

IF FAIL, Done                  ;Give up after 10 tries

:Logon

SEND 'Name, password^M'        ;Send name and password

 

...

 

:Done

SEND 'Bye^M'

 

Additional set commands

Main window options

 

SET MAIN.OUTINPUTDATATOSCR <value> - Output data sent on &screen

Value: True, False

 

SET MAIN.AUTOSCROLL <value> - Auto-scroll monitor window

Value: True, False

 

SET MAIN.COM1VISIBLE <value> - Visibility of the COM port #1 toolbar

Value: True, False

 

SET MAIN.COM2VISIBLE <value> - Visibility of the COM port #2 toolbar

Value: True, False

 

SET MAIN.COMBOVISIBLE <value> - Visibility of the COM port management toolbar

Value: True, False

 

SET MAIN.STATUSVISIBLE <value> - Visibility of the line status toolbar

Value: True, False

 

SET MAIN.BUTTONSVISIBLE <value> - Visibility of the quick access toolbar

Value: True, False

 

SET MAIN.STATESVISIBLE <value> - Visibility of the additional toolbar

Value: True, False

 

SET MAIN.SHORTCUTSVISIBLE <value> - Visibility of the shortcuts toolbar

Value: True, False

 

SET MAIN.PARSEXX <value> - Parse #XX Hex codes

Value: True, False

 

SET MAIN.PARSEASCII <value> - Parse ASCII codes with framing characters

Value: True, False

 

SET MAIN.DIFFERENTSETT <value> - Use different settings for each program instance

Value: True, False

 

SET MAIN.PORT <value> - Avalaible COM port number

Value:

0 - COM1

1 - COM2

etc..

 

SET MAIN.SPEED <value> - COM port baud rate

Value:

0 - 110

1 - 300

2 - 600

3 - 1200

4 - 2400

5 - 4800

6 - 9600

7 - 14400

8 - 19200

9 - 38400

10 - 56000

11 - 57600

12 - 115200

13 - 230400

14 - 460800

15 - 921600

16 - 15600 (custom baud)

17 - 28800 (custom baud)

 

SET MAIN.BITS <value> - Number of data bits

Value:

0 - 5

1 - 6

2 - 7

3 - 8

 

SET MAIN.PARITY <value> - Parity

Value:

0 - None

1 - Odd

2 - Even

3 - Mark

4 - Space

 

SET MAIN.STOPBITS <value> - Stop bits (1.5 will be exposed automatically for 5 data bits and 2 stop bits)

Value:

0 - 1

1 - 2

 

SET MAIN.DELAY <value> - Data output delay (in miliseconds)

Value: Data output delay (in miliseconds)

 

SET MAIN.AUTO <value> - &Auto delay

Value: True, False

 

SET MAIN.COMMAND <value> - Input string. Enter data and press 'Enter' (F4)

Value: Input string. Enter data and press 'Enter' (F4)

 

SET MAIN.OUTRECEIVEDTOFILE <value> - Output data received to a file

Value: True, False

 

SET MAIN.OUTINPUTDATATOFILE <value> - Output data sent to a file

Value: True, False

 

SET MAIN.OUTSYSDATATOFILE <value> - Output system events (in the spy mode) to a file

Value: True, False

 

 

Data flow control

 

 

Hardware flow control

 

SET USEDTR <value> - Use DTR

Value: True, False

 

SET USERTS <value> - Use RTS

Value: True, False

 

SET REQUIREDSR <value> - Require DSR

Value: True, False

 

SET REQUIRECTS <value> - Require CTS

Value: True, False

 

 

Software flow control

 

SET FLOWCONTROL <value> - Software flow control

Value:

0 - None

1 - On receiving

2 - On transmitting

3 - Both

 

SET XOFFCHAR <value> - Character that is sent to disable remote sending (Xoff). You should type string, where each #XX block will be replaced with character with XX hex code.

Value: One or more characters

 

SET XONCHAR <value> - Character that is sent to enable remote sending (Xon). You should type string, where each #XX block will be replaced with character with XX hex code.

Value: One or more characters

 

SET RS485MODE <value> - RS485 interface mode

Value: True, False

 

SET FLUSHBUFFER <value> - Flush incoming buffer on line error

Value: True, False

 

 

For problem drivers only

 

SET IGNOREERR <value> - Ignore non-important port opening errors (for problematic ports only)

Value: True, False

 

 

Signs of end of string

 

SET INEND <value> - Termination string or character while receiving

Value:

0 - #0D - CR

1 - #00 - NUL

2 - #0A - LF

3 - Custom

4 - #0D#0A - CR+LF

5 - #0A#0D - LF+CR

6 - None

 

SET OUTEND <value> - Termination string or character while transmitting

Value:

0 - #0D - CR

1 - #00 - NUL

2 - #0A - LF

3 - Custom

4 - #0D#0A - CR+LF

5 - #0A#0D - LF+CR

6 - None

 

SET CUSTOMSEND <value> - Custom termination string

Value: One or more characters

 

SET CUSTOMREC <value> - Custom termination string

Value: One or more characters

 

SET GB9BIT <value> - 9-bit data transfer format

Value:

0 - Off

1 - Mark parity on send

2 - Space parity on send

 

SET ADDBEFORE <value> - Add before a data packet while transmitting

Value: True, False

 

SET ADDBEFORE <value> - Send data before each data block. You should type string, where each #XX block will be replaced with character with XX hex code.

Value: One or more characters

 

 

File with source data

 

SET SOURCEFILE <value> - The name of a file with data, which will be sent over serial port

Value: 'drive:directory\file name'. If your path and/or file name contains spaces, then you should add double quotes before and after value: '"drive:directory\file name"'

 

SET FILEMODE <value> - File output mode

Value:

0 - Unitary

1 - Repeated

 

SET FILETYPE <value> - File type

Value:

0 - ASCII or plain text

1 - Binary

 

 

ASCII mode

 

SET FILEINTERPRET <value> - Interpret characters in the file like #XX or (depend on the corresponding option) as a character with same Hex code

Value: True, False

 

 

Binary mode

 

 

Reading data block size

 

SET BLOCKFIXEDSIZE <value> - Fixed size (bytes):

Value: True, False

 

SET BLOCKRANDOMSIZE <value> - Random size (bytes min/max):

Value: True, False

 

SET BLOCKFIXEDSIZE <value> - Reading data blocks from the source file with this size

Value: 1..1000000

 

SET BLOCKRANDOMSIZEMIN <value> - Reading data blocks from the source file with this min size

Value: 1..1000000

 

SET BLOCKRANDOMSIZEMAX <value> - Reading data blocks from the source file with this max size

Value: 1..1000000

 

SET BLOCKUNTIL <value> - Reading from a file until occurrence of a termination character

Value: True, False

 

 

Protocol files

 

SET CREATEFILEMODE <value> - Create new file mode

Value:

0 - One file for all data

1 - Data sent and received in different files

2 - Each sent and received packet in a different file

 

 

One file for all data

 

SET OUTPUTFILE <value> - File name

Value: 'drive:directory\file name'. If your path and/or file name contains spaces, then you should add double quotes before and after value: '"drive:directory\file name"'

 

 

Data sent and received in different files

 

SET FILEFORSENT <value> - File name for data sent

Value: 'drive:directory\file name'. If your path and/or file name contains spaces, then you should add double quotes before and after value: '"drive:directory\file name"'

 

SET FILEFORRECEIVED <value> - File name for data received

Value: 'drive:directory\file name'. If your path and/or file name contains spaces, then you should add double quotes before and after value: '"drive:directory\file name"'

 

 

Each sent and received packet in a different file

 

SET DIRECTORYEDIT <value> - Folder for files with data received and sent

Value: '"drive:directory\"'. If your path contains spaces, then you should add double quotes before and after value: '"drive:directory"'

 

SET FILENAMEPREFIXSENT <value> - File name prefix for data sent

Value: One or more characters

 

SET FILENAMEPREFIXRECEIVED <value> - File name prefix for data received

Value: One or more characters

 

SET OVERWRITEFILES <value> - Overwrite existing files

Value: True, False

 

SET ADDNAMESTAMP <value> - Add date/time stamp to a file name

Value: True, False

 

SET FILENAMEEXT <value> - File name extension

Value: One or more characters

 

SET COUNTERFMT <value> - File name counter format

Value: One or more characters

 

SET MAXCOUNTER <value> - Maximum counter value (-1 - no limitations)

Value: Any decimal number

 

SET FILENAMESUFFIXSENT <value> - File name suffix for data sent

Value: One or more characters

 

SET FILENAMESUFFIXRECEIVED <value> - File name suffix for data received

Value: One or more characters

 

SET COMMONCNT <value> - Common counter for received and sent files

Value: True, False

 

SET SEPARATOR <value> - Separator between data packets. You can type any characters here, where each #XX block will be replaced with character with XX hex code.

Value: One or more characters

 

SET ADDBODYSTAMP <value> - Write date/time stamp to a file before writing data and events

Value: True, False

 

SET FILEFORMAT <value> - Format of the file output

Value:

0 - Without any changes

1 - As you see it on screen

 

 

Window view

 

SET STARTMINIMIZED <value> - Start up in minimized state

Value: True, False

 

SET HIDETOSYSTRAY <value> - Minimize to Systray (a panel near clock)

Value: True, False

 

SET HINTBALOON <value> - Hint balloon

Value: True, False

 

SET HIDEMAINFORM <value> - Hide on plugin start up

Value: True, False

 

SET SHOWINHIDE <value> - Display data sent and received in minimized state

Value: True, False

 

SET HIDESTATUS <value> - Hide status bar

Value: True, False

 

SET HIDESCR <value> - Hide window with data

Value: True, False

 

SET STAYONTOP <value> - Stay on top (over other windows)

Value: True, False

 

SET AUTOCOMPLETE <value> - Disable autocompletion in the input string

Value: True, False

 

SET WRAPWORDS <value> - Wrap words

Value: True, False

 

SET LINESCOUNT <value> - Number of strings in a screen buffer

Value: 10..30000

 

 

Font and colors

 

SET HIGHLIGHT <value> - Highlight data sent on screen

Value: True, False

 

SET COLORHIGHLIGHT <value> - Data highlighting color

Value: Data highlighting color

 

SET FONTLIST <value> - Courier

Value: Courier

 

SET FONTCOLOR <value> - Main window a font color

Value: Main window a font color

 

SET BACKCOLOR <value> - Main window a background color

Value: Main window a background color

 

SET COMBOCOLORPROFILE <value> - Default

Value:

0 - Dark

1 - Default

 

SET FONTBOLD <value> - Bold

Value: True, False

 

SET FONTITALIC <value> - Italic

Value: True, False

 

 

HEX view

 

SET COLGRIDLINES <value> - Grid lines color

Value: Grid lines color

 

SET COLEVENCOL <value> - Grid lines color

Value: Grid lines color

 

SET COLOFFSET <value> - Grid lines color

Value: Grid lines color

 

 

Data view

 

SET CHARSET <value> - Charset of data received

Value:

0 - DOS

1 - Windows

 

 

View mode of characters with code

 

SET SYM20HEX <value> - 0x00h - 0x1Fh

Value:

0 - Don't display

1 - As Hex #XX code

2 - User's format

3 - As ASCII character code

 

SET SYM80HEX <value> - 0x20h - 0x7Fh

Value:

0 - Don't display

1 - As Hex #XX code

2 - As same character

3 - User's format

 

SET SYMFFHEX <value> - 0x80h - 0xFFh

Value:

0 - Don't display

1 - As Hex #XX code

2 - As same character

3 - User's format

 

SET SHOWSTRLEN <value> - View received packet length

Value: True, False

 

SET SHOWEND <value> - View string that completes a data packet

Value: True, False

 

SET USERFORMAT <value> - User view mode of characters with code < 20 Hex %d - decimal value of character code %x - hexdecimal value %.2x - hexdecimal value with leading zero

Value: One or more characters

 

SET FRAMEBEGIN <value> - Beginning characters of a frame for an ASCII code

Value: One or more characters

 

SET FRAMEEND <value> - Ending characters of a frame for an ASCII code

Value: One or more characters

 

 

HEX window view

 

SET BYTESROW <value> - Bytes per row

Value: 1..128

 

SET BYTESCOL <value> - Bytes per column

Value: 1..8

 

SET HEXTRANS <value> - Translation

Value:

0 - Windows

1 - ASCII

2 - BCD

3 - DOS

4 - Mac

 

SET SHOWOFFSET <value> - Show offset

Value: True, False

 

SET HEXLOWER <value> - Hex lowercase

Value: True, False

 

SET SWAPNIBBLES <value> - Swap nibbles

Value: True, False

 

SET GRIDLINES <value> - Grid lines

Value: True, False

 

SET BYTESROWAUTO <value> - Automatically calculate number of bytes per row

Value: True, False

 

 

Date/time stamp

 

SET STAMPVIEW <value> - View mode

Value:

0 - Default

1 - Unix syslog

2 - Custom

 

SET CUSTOMSTAMPFMT <value> - Custom view mode of a datetime stamp

Value: One or more characters

 

SET ADDSCRSTAMPSYS <value> - Add to display output for system events

Value: True, False

 

SET ADDSCRSTAMPSEND <value> - Add to display output for data sent

Value: True, False

 

SET ADDSCRSTAMPREC <value> - Add to display output for data received

Value: True, False

 

SET STAMPFRAMEBEGIN <value> - Beginnig characters of a frame for a datetime stamp

Value: One or more characters

 

SET STAMPFRAMEEND <value> - Ending characters of a frame for a datetime stamp

Value: One or more characters

 

SET ADDDATADIR <value> - Add data direction sign to a stamp

Value: True, False

 

SET TIMEOUTINT <value> - Auto-insert a stamp every (ms) in a continuous data flow

Value: 1..65535

 

 

System events

 

SET EVENTS <value> - 0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|

Value: 0|1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|17|18|19|20|21|22|

Control characters

Control characters may transmitted by preceding a character with '^'. For example, a control C character is represented by ^C. You'll use this feature most often when sending carriage returns. For example, SEND 'myname^M' might be an appropriate response to a logon prompt where you would normally type your name and press <Enter>. NOTE: The control characters must be inside the quote marks, if quote marks are necessary.

 

Control character

Dec

Hex

^@

0

0x00

^A

1

0x01

^B

2

0x02

^C

3

0x03

^D

4

0x04

^E

5

0x05

^F

6

0x06

^G

7

0x07

^H

8

0x08

^I

9

0x09

^J

10

0x0A

^K

11

0x0B

^L

12

0x0C

^M

13

0x0D

^N

14

0x0E

^O

15

0x0F

^P

16

0x10

^Q

17

0x11

^R

18

0x12

^S

19

0x13

^T

20

0x14

^U

21

0x15

^V

22

0x16

^W

23

0x17

^X

24

0x18

^Y

25

0x19

^Z

26

0x1A

^[

27

0x1B

^\

28

0x1C

^]

29

0x1D

^_

31

0x1F

Если программа не запускается или не работает

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

 

Также программа не будет работать, если у Вас запущена среда отладки приложений SoftIce или какая-либо другая.

 

В любом другом случае, пожалуйста, сообщите разработчикам о Ваших проблемах по адресу https://www.aggsoft.ru/support/!

 

FAQ или часто задаваемые вопросы

Вопрос: Почему, когда я нажимаю кнопку "Открыть" СОМ-порт не открывается?

Ответ: Наверное, уже какая-нибудь программа уже использует его (СОМ-порт). Это может быть DOS-приложение, например.

 

Вопрос: Что же тогда делать?

Ответ: Закрыть приложение, использующее данный коммуникационный порт (для DOS - приложения необходимо закрыть и окно DOS - сессии). Или использовать другой коммуникационный порт.

 

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

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

 

Вопрос: Почему, когда я наблюдаю за обменом данными в режиме наблюдателя, я ничего не вижу?

Ответ: Необходимо запускать Advanced Serial Port Monitor и открывать COM порт до старта исследуемой программы.