четверг, 2 февраля 2017 г.

Тест COM порта

Как проверить COM порт?

Проблемой проверки последовательного порта сталкиваюсь очень часто, на протяжении всей моей работы с приборами учета тепла. Поиск готовых решений на просторах интернета до сих пор не принес положительного результата. Да, тесты, стресс-тесты и прочие есть, НО - все они ориентированы на опытных специалистов. Мне же приходится решать эту проблему с пользователями, которые иногда очень далеки от электроники, но при всем, при этом, имеют ноутбуки/нетбуки со свежайшими операционками а-ля Windows 10.
В нашем случае, задача сводится к определению правильности установки драйверов порта и определению разъема к которому подключен выбранный COM порт.
О том, как установить драйвера  и где их взять, я уже написал в более раннем посте Конвертер USB-RS232 . Там же я показал, где найти информацию о номере установленного порта.
Для проверки порта вы можете взять программу Tem05Win, написанием которой я занимался со своими коллегами в далеком прошлом. После запуска программы в меню программы Настройки смотрите закладку Чтение данных и в ней устанавливаете номер COM порта. Далее в меню программы выбираете Тест COM порта
и если вы видите кнопки с надписями RXD-TXD и CTS-RTS серыми, то у вас проблемы с выбранными драйверами порта, или вы ошибочно выбрали не тот номер порта. Здесь я просто специально выбрал отсутствующий у меня порт COM6. 

Посмотрел в диспетчере устройств - так надо то выбирать COM7! А в настройках можно ввести до 6, выбираем любой номер и ручками перебиваем его на 7-мой. Запускаем тест.
Видим красные кнопочки  с надписями RXD-TXD и CTS-RTS , что свидетельствует о правильно установленном драйвере и что на контакты этого порта подается информация. Теперь какой нибудь металлической перемычкой надо замкнуть контакты 2-3 и 7-8 и если кнопки "позеленеют" значит порт исправен! Вот так все просто и не замысловато! 
Для того, что бы одновременно замкнуть контакты 2-3 и 7-8 я попросил у своего коллеги очень суровое приспособление - LoopBack, не все же мелкой отверткой мне тыкать, как раньше, в эти контакты.
Заимев LoopBack запустим и попробуем программку IC Serial Port Test
В ней выбираем номер своего порта и жмем кнопочку старта с зеленым треугольником. Все начинает мигать, байты туда-сюда бегать и в итоге появляется галочка ОК - типа все работает!
Если честно, особого восторга программка у меня не вызвала. Тем более, что путного хелпа на нее я не нашел.
Вот утилита Prolific Cable Test как то вызвала большее уважение, но для работы с ней надо еще один, при том заведомо исправный последовательный порт и нуль модемный кабель или гендерчейджеры!
Сама программка имеет следующий вид:
Устанавливаем номера портов и в соответствии с объемной инструкцией этой программы Press START to go жмем на клавишу Start. Наслаждаемся просмотром мультфильма по тестированию разнообразнейших режимов порта и на финише имеем такую вот картинку
Но, в итоге можно сказать, что это ПО не для моих пользователей, силно мудреное, да еще и кучу приспособ недешевых надо, что бы эти программки использовать!
Путеводитель по моему блогу

5 комментариев:

  1. Можно ли таким образом тестировать виртуальные COM порты полученные в системе, например, от модема ATM-3 программой ARZ Collektor и тп. средствами

    ОтветитьУдалить
    Ответы
    1. Ну вы как спросите! Тут же вспоминается из фильма "Джельтмены удачи" фраза Косого "Памятник сидячий? — Вот чудак-человек, кто ж его посадит?! Он же памятник!"
      Так и тут, какие же вы контакты закорачивать будете в этом порте - он же виртуальный!
      Может я не увидел глубины вопроса!?

      Удалить
    2. Впрочем, если у вас модем ATM3-232 или ATM2-232 с виртуальным портом, то тест программы Tem05Win может и пройдет, пробуйте! ... и пишите сюда, че получится ;)

      Удалить
  2. Преобразователь интерфейсов usb-rs232 - тоже виртуальный порт в системе.
    А у меня COM - Ithernrt преобразователь NETCOM111. Его тестить буду на предмет
    удалённого и виртуального порта.

    ОтветитьУдалить
  3. Будет время и вдохновение - посмотрю на тэм-портах, мне кажется в наших тестах будут проблемы из-за больших задержек и пакетирования.

    ОтветитьУдалить