Виртуальный порт usb это

Обновлено: 03.07.2024

Создание виртуального com порта из usb. Как создать виртуальный com порт

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

Что подключают через com порт

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

Но в сетевом мире через com порт подключаются к консольному порту сетевых устройств (коммутаторов, роутеров, таких брендов как Cisco или Juniper)

Какая схема подключения к коммутаторам через последовательный порт. Есть переходники, например от фирмы st-lab На одном конце USB который вы подключаете к компьютеру, а второй это com порт.

Установка драйверов com порт usb в Windows

К сожалению в Windows подключенные устройства, usb to com не всегда автоматически устанавливаются в системе, и приходится искать для них драйвера. Если вы покупали его сами, то в комплекте шел диск с драйверами, и можно воспользоваться им, если его нет, то смотрим как найти драйвера.

Открываем диспетчер устройств в Windows. Если не знаете как, то нажмите CTR+Pause breake, либо нажмите Win+R и в окне выполнить введите devmgmt.msc. Как видите у меня в разделе Порты (COM и LPT) нашелся на третьем COM порту неизвестный провод, и драйверов для него не нашлось у системы, о чем говорит нам желтый значок.

Переходим в свойства данного устройства и выбираем ИД оборудования, у вас будет, что то по типу usbVID_067B&PID_2303&REV_0300, вот его вы копируете и ищите в гугле или яндексе.

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

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

Вам понадобится

Инструкция

Электронные книги завоевывают все большую популярность среди людей разного возраста, разных профессий, и разных финансовых возможностей. И в этом нет ничего удивительного, ведь такой портативный девайс является не просто модным аксессуаром, но и необходимостью для людей, которые находятся в постоянном движении. Выход в продажу WEXLER.BOOK Т7004 обещает стать настоящим фурором на рынке электронных книг.

Компания Seagate Technology начала продажи нового портативного хранилища данных под известным брендом LaCie. Модель Little Big Disk можно по праву считать самым быстрым решением данного сегмента на рынке, благодаря внедрению сразу двух высокоскоростных портов Thunderbolt 2. Интерфейс Thunderbolt 2 обеспечивает скорость передачи данных до 1375 Мб/сек, что позволяет профессионалам с легкостью обрабатывать видео с разрешением 4K.

Хранилище LaCie Little Big Disk поставляется с двумя твердотельными накопителями PCI Express Gen 2 объемом по 500 ГБ каждый. Чтобы достичь поистине …

Компания Asus представила собственную версию новейшего адаптера R9 290 от AMD. Модель Asus R9 290 отличается поддержкой фирменной технологии GPU Tweak, которая делает возможной тонкую настройку адаптера для мгновенного роста производительности. Специальные инструменты позволяют настраивать тактовые частоты видеоядра и памяти, напряжение на линиях, скорость вращения вентилятора, а также контролировать пограничные значения энергопотребления. Таким образом, юзеры могут настроить систему полностью под свои нужды, не боясь за стабильность работы при …

Решаем проблемы с Google Play в смартфонах Meizu

Виртуальный COM порт у USB принтеров

Материал из

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

Содержание

Основы технологии

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

Виртуальный COM порт

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

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

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

Массовые USB-2-COM переходники

Частный случай виртуального COM порта является переходник с USB к COM. Переходник работает по такому же принципу, как описано в данной статье, но является отдельным устройством в собственном корпусе. Самые часто встречающиеся переходники:

  • Серия Aten;
  • Серия Prolific;
  • Серия Manhattan.

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

Настройка софтвера

Реальная настройка софтвера ничем не отличается от настройки стандартного RS-232 устройства. Разница в том, что выбирается виртуальный COM порт, а не реальный. Программное обеспечение работает без того, чтобы определять вид COM порта. Особенность в том, что виртуальный COM существует только когда устройство включено, т.е если устройство отсутствует или выключено, его COM порт невидим для прикладной программы. Это очень важно, потому что если устройство настроено, после чего выключится и активируется настройка, она укажет на несуществующий COM порт и программ может вывести ошибку. Иногда получается, что виртуальный COM порт работает на произвольной скорости, т.е. нет значения какая скорость обмена выбрана в настройках продукта. Так как USB драйвер эмулирует передачу данных, то скорость обмена не имеет значение, и любая скорость подходящая.

Режим совместимости

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

Исключения

Очень редко существуют исключения указанного принципа действий. При некоторых устройствах производитель решил, что нет необходимости, а соответственно и не существует эмуляция COM порта. В таком случае обмен происходит на уровне HID интерфейса USB порта. Если устройство данного типа, то его добавление в систему требует создания индивидуального драйвера для данного устройства и изменение программы. К счастью, такие устройства являются редкостью и не особо популярны у ведущих производителей.

Выводы

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

Что делать если в компьютере нет порта?

Изначально порты использовались для подключения терминалов, модемов и мыши. В современное время основное назначение сводится к подключению всевозможных источников питания, микроконтроллеров, вычислительных систем, кассовых аппаратов и других устройств. Также порт очень активно использовался для синхронизации компьютеров: к примеру, ноутбука с персональным компьютером. Сейчас такой подход сменился использованием USB-порта.

Что такое виртуальный порт?

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

Для чего используется?

Поняв, что такое реальный порт и для чего он используется, без труда можно представить себе необходимость в виртуальном порте. Представьте: вам нужно подключить вычислительное устройство к компьютеру через порт. Но у вас его нет! Или же подключить несколько устройств, а порт всего один. Как быть в такой ситуации? Спасает именно создание виртуального порта.

Таким образом, виртуальный порт позволяет имитировать его присутствие в компьютере при отсутствии оного. Примеровприменения довольно много. Однако наиболее часто виртуальный порт применяется:

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

Как создать виртуальные порты?

Скачайте и установите программу Advanced Virtual COM Port. Установка занимает считаные минуты, при этом на одном из этапов нам предложат драйвер:

Программа для настройки виртуального порта в windows

После установки, заходим в программу и видим главное окно:

Кернел про -для настройки виртуального порта в windows

Оно содержит три основных вкладки: Общие (расширенные), клиентские и локальные порты.

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

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

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

Перейдём во вкладку локальные порты и нажмём кнопку Add. Перед нами откроется окно, предлагающее создать пару портов, которые предполагаются быть соединёнными виртуальным нуль-модемным кабелем:

Создание виртуального порта в windows7

Жмём ОК. Переходим в Панель управления -> Система -> Диспетчер устройств.

Видим, что наши порты были успешно созданы:

Виртуальные порты windows

Взаимодействие расширенных и клиентских портов

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

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

Расшаренный порт windows

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

Клиентский порт windows

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

Admin

на локальном компе порты с 3 по 11 назначены автоматом usb-портам. как изменить эту картинку? сделать так чтобы порты на локалке шли так например

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

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

Большинство современных микроконтроллеров имеет набор последовательных интерфейсов для связи с внешним миром (например, USART). С другой стороны, последовательный интерфейс на основе стандарта RS-232 уже давно не удовлетворяет разработчиков по причине сравнительно низких скоростей передачи данных, невозможностью подключения устройств «на лету», недостаточным количеством (а часто просто отсутствием) соответствующих портов в современных ноутбуках и «нетбуках». Решением является использование интерфейса USB, свободного от перечисленных выше недостатков [1].

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

Недостаток первого подхода заключается в удорожании и усложнении аппаратной части устройства и необходимости организации внутреннего обмена данными между контроллером USB-шины и универсальным микроконтроллером. Слабым местом второго варианта является то, что микроконтроллеры со встроенным портом USB еще относительно дороги и дефицитны. Кроме этого, они часто имеют более ограниченный набор периферии, и поэтому приходится применять дополнительные микросхемы для ее расширения. Третий вариант интересен тем, что применим для широкого класса недорогих микроконтроллеров, обладающих необходимым быстродействием и программной памятью. Например, для микроконтроллеров AVR - это старшие модели MEGA и часть TINY с FLASH-памятью не менее 2K. Недостатком такого подхода является то, что быстродействие универсальных микроконтроллеров позволяет программно реализовать лишь низкоскоростной вариант стандарта USB-2 «Low speed», т.е. скорость - до 1.5 Мбит/сек. Необходимо также выделить около 1.6 Кбайт FLASH-памяти микроконтроллера для размещения драйвера шины. Тем не менее, для многих задач автоматизации лабораторных физико-химических экспериментов эта скорость оказывается вполне достаточной.

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

Технические детали реализации виртуальных портов USB на микроконтроллерах AVR достаточно подробно описаны на сайтах компаний Atmel [2] и Objective Development [3]. Виртуализация USB предполагает физическое подключение двух цифровых выводов микроконтроллера к сигнальным проводникам шины D+ и D- и программную реализацию самого протокола. Один из сигнальных проводников должен быть подключен к выводу, через который можно организовать аппаратное прерывание микроконтроллера, а второй может быть подключен к любому выводу этого же порта. Простейшая схема подключения (на примере микроконтроллера ATMega16) к шине USB показана на Риc.1. Для низкоскоростных устройств на линию D- необходимо подключить подтягивающий резистор R3, поскольку определение подключения/отключения USB устройства основано на контроле сопротивления линии.

Рис.1. Простейший вариант подключения микроконтроллера к шине USB.

Однако, не все контроллеры USB-шины будут работать с устройством, подключенным так, как показано на Рис.1, из-за несоответствия высоких уровней сигналов микроконтроллера стандарту USB. По стандарту USB высокий уровень сигнала должен составлять 3.0-3.6В, а высокий уровень сигналов микроконтроллера приближается к напряжению его питания. Например, для микроконтроллера ATMega16 рекомендованное напряжение питания составляет 4.5-5.5В. Существуют два подхода согласования уровней. Первый вариант – понижение напряжения питания микроконтроллера до такого значения, чтобы напряжение выходных сигналов микроконтроллера укладывалось в стандарт USB. Этот подход неудобен по двум причинам. Во-первых, кроме самого микроконтроллера в системе могут использоваться дополнительные микросхемы с 5-вольтовым питанием (например, дополнительные АЦП). Во-вторых, понижение напряжения питания микроконтроллера приводит к необходимости снижения тактовой частоты процессора, что часто нежелательно. Поэтому обычно используется другой вариант, а именно, непосредственное ограничение напряжения самих сигналов микроконтроллера, подаваемых на шину USB. Простейшее решение c использованием стабилитронов [4] показано на Рис.2.

Рис.2. Согласование уровней сигналов микроконтроллера с шиной USB.

Основной недостаток этой схемы - повышенный ток с соответствующих выходов порта микроконтроллера при высоких уровнях сигнала. Но это вполне компенсируется простотой и низкой стоимостью решения.

Для устранения ложных прерываний INT0 в схеме со стабилитронами рекомендуется включить также дополнительный резистор 1M между «землей» и сигналом D+.

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

На указанных выше сайтах [2,3] свободно доступны исходные тексты драйверов для реализации нескольких классов USB-устройств. В частности, Custom class device, Standard HID class device, Custom HID class device и CDC class device. Также имеются многочисленные примеры радиолюбительских конструкций, построенных на основе виртуальных USB-портов.

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

Первая типовая задача это регистрация сравнительно медленных аналоговых или цифровых сигналов. Частота отсчетов здесь обычно не превышает сотен герц, а чаще всего она существенно меньше. Класс, приборов, для которых требуется такая регистрация, чрезвычайно широк – от современных цифровых датчиков до старых, вполне работоспособных, но морально устаревших приборов с самописцами в качестве регистраторов. Замена самописца на регистратор с виртуальным USB-портом на базе недорогого универсального микроконтроллера со встроенным АЦП придает этим приборам совсем другое качество. Задача упрощается еще больше, если в приборе предусмотрены средства для подключения цифрового регистратора. Несмотря на многообразие стандартов, сигналы с выхода разъема цифрового регистратора могут быть поданы непосредственно на цифровые порты микроконтроллера, программным способом легко приведены к современным стандартным представлениям и переданы по USB в персональный компьютер.

Первые два примера устройств, приведенные ниже, демонстрируют варианты таких регистраторов с виртуальным USB-портом. Первый вариант цифровой, а второй - аналоговый.

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

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

Устройства, описанные в этих примерах, разработаны и изготовлены автором для иллюстрации различных вариантов решения на базе виртуальных USB-портов. Тем не менее, они используются в реальной экспериментальной работе и могут быть легко модифицированы для других аналогичных задач. Поэтому подробные описания этих устройств, схемы и исходные тексты программ размещены в сети Интернет и свободно доступны по адресам 7.

Данный пример иллюстрирует простейший вариант использования микроконтроллера с виртуальным USB-портом в качестве регистратора цифровых сигналов. Такой регистратор подключен к старому, но еще вполне работоспособному отечественному жидкостному хроматографу Милихром (выпуска 1985 года). Общий вид прибора представлен на Рис.3. На задней стенке прибора (Рис.3, справа сверху) имеется разъем для подключения регистратора. На разъем выведены 15 двоичных разрядов сигнала ультрафиолетового детектора, знак сигнала, признак переполнения и два строба (конец преобразования АЦП и конец цикла развертки спектрометра). Кроме этого, на разъем выведено напряжение питания (+5В) и «земля». Уровни сигналов соответствуют TTL. Поэтому никаких проблем в физическом подключении и программном преобразовании данных не возникает.



Рис.3. Хроматограф Милихром. Цифровой регистратор на базе виртуального USB-порта.

В качестве контроллера USB-шины используется универсальный микроконтроллер ATMega16, включенный по схеме, приведенной на Рис.2. Плата с соответствующим разъемом представлена на Рис.3 внизу слева. Строб «Конец преобразования» вызывает аппаратное прерывание INT1, по которому данные, выставленные блоком управления «защелкиваются» в памяти микроконтроллера. После этого данные передаются в PC по виртуальному USB-порту. Частота отсчетов устанавливается блоком управления хроматографа.

Подробное описание этой разработки, схемы и исходные тексты программ приведены в [5].

Данный пример иллюстрирует комплексное использование ресурсов универсального микроконтроллера ATMega16. Здесь микроконтроллер выполняет следующие функции.
1. Контроллер шины USB для связи с персональным компьютером.
2. Контроллер шины 1-Wire для связи с датчиком температуры DS18B20. Т.е. фактически здесь микроконтроллер выступает как регистратор цифровых сигналов.
3. Аналого-цифровой преобразователь для оцифровки сигнала стеклянного электрода. Т.е. устройство используется в качестве регистратора аналоговых сигналов.

Общий вид устройства представлен на Рис.4. В качестве основы стенда использован стандартный штатив от портативного иономера И-102 со стеклянным электродом ЭСЛ-43-11 и электродом сравнения ЭВЛ-1М4. Для контроля температуры применен датчик температуры DS18B20, помещенный в стеклянную трубку соответствующего диаметра, заполненную маслом для улучшения теплового контакта датчика с раствором. Преобразование температуры в цифровой код происходит в самом датчике. Идентификация датчиков, запуск преобразования и считывание кода происходит по шине 1-Wire. В качестве виртуального контроллера этой шины выступает микроконтроллер ATMega16.



Рис.4. Регистрирующий pH-метр. Аналоговый и цифровой регистратор на базе виртуального USB-порта.

Для согласования высокого выходного сопротивления стеклянного электрода с АЦП микроконтроллера используется согласующий усилитель (Рис.4 вверху справа). На плате усилителя также находится реле, отключающее вход усилителя от стеклянного электрода в нерабочем состоянии, которое управляется по USB одной цифровой линией микроконтроллера ATMega16.

Программное обеспечение позволяет регистрировать изменение pH и температуры растворов в течение произвольного времени. Частота отсчетов – 1 Гц. Также предусмотрены средства для оперативной калибровки прибора по произвольному количеству буферных растворов и в различных температурных диапазонах.

Подробное описание этой разработки, схемы и исходные тексты программ приведены в [6].

В данном примере универсальный микроконтроллер ATMega16 используется для вывода данных из PC через виртуальный USB-порт, в частности, для управления шаговым двигателем. В качестве исполнительного устройства используется шприцевой насос от хроматографа. В насосе установлены шаговый двигатель ДШИ-200, концевой выключатель, срабатывающий при достижении поршнем нижнего предела, и датчик давления, выдающий логический сигнал при превышении заданного давления или достижении поршнем верхнего положения. На разъем насоса также подаются напряжения питания для датчика давления и «земля». В сочетании с универсальным микроконтроллером и небольшим силовым модулем этот насос легко превращается в микродозатор жидкостей, управляемый персональным компьютером через виртуальный USB-порт (Рис.5).



Рис.5. Макет микродозатора. Управление шаговым двигателем через виртуальный USB-порт.

Для управления шаговым двигателем насоса могут быть использованы любые четыре цифровых выхода микроконтроллера, которые не задействованы для шины USB. Сигналы с этих выводов подаются на базы составных транзисторов BD677 силового модуля и затем на обмотки двигателя. Для питания силового модуля используется отдельный блок питания (Рис.5, справа сверху). Сигналы с концевого выключателя и датчика давления подаются на две входных цифровых линии микроконтроллера и используются программой управления для блокировки шагов двигателя.

Таким образом, в данном примере универсальный микроконтроллер ATMega16 выполняет две основные функции, полностью заменяя соответствующие специализированные контроллеры.
1. Контроллер шины USB для связи с персональным компьютером.
2. Контроллер шагового двигателя.

Устройство позволяет дозировать жидкости в произвольных режимах, ограниченных только конструкцией насоса (максимальный разовый объем – 2.5 мл и максимальная скорость подачи – около 1 мл/мин). В данной версии программного обеспечения реализованы следующие режимы.
1. Подача жидкости с программируемой скоростью, в том числе и изменяющейся во времени.
2. Подача заданного объема жидкости с накоплением или без него. При этом скорость подачи тоже может контролироваться персональным компьютером.

Подробное описание этой разработки, схемы и исходные тексты программ приведены в [7].

Последний пример также иллюстрирует комплексное использование ресурсов универсального микроконтроллера для задач регистрации и контроля температуры. Здесь микроконтроллер ATMega16 выполняет следующие функции.
1. Контроллер шины USB для связи с персональным компьютером.
2. Контроллер шины 1-Wire для работы с датчиками температуры DS18B20.
3. Контроллер силового модуля регулировки мощности нагревателя.

Задача реализована в виде небольшого стенда, общий вид которого представлен на Рис.6. Он содержит макет водяной бани, состоящей из стакана с водой, нагревателя, датчика температуры DS18B20 и магнитной мешалки. Второй температурный датчик DS18B20 измеряет температуру окружающей среды и расположен непосредственно на плате микроконтроллера. Значение этой температуры необходимо для работы компенсатора тепловых потерь термостата в одном из алгоритмов регулирования температуры [8].

Еще один компонент стенда – силовой модуль. Он предназначен для регулировки мощности нагревателя. Принцип работы – регулирование количества полупериодов, пропущенных в нагрузку. Модуль выполнен на симисторе BT137-600 с оптической развязкой в виде оптосимистора MOC3061, который снабжен детектором перехода напряжения через ноль (Zero Crossing). Это существенно упрощает схему модуля и управление им.

Для управления силовым модулем используется ШИМ (широтно-импульсная модуляция) сигнал таймера TIMER1 микроконтроллера ATMega16, причем частоту следования импульсов и скважность можно программировать. Эти параметры определяют мощность нагревателя и могут быть установлены через виртуальный USB-порт из программы на PC. Через этот же USB порт в персональный компьютер поступают данные с двух температурных датчиков. Это дает возможность реализовать практически любой закон изменения температуры бани (естественно, в рамках динамических характеристик самой бани).

Подробное описание этой разработки, схемы и исходные тексты программ приведены в [8]. Там же приведены результаты экспериментов с различными алгоритмами регулирования температуры и примеры различных режимов нагрева/охлаждения бани.

В данной статье рассмотрена возможность использования виртуальных USB-портов для задач автоматизации лабораторного эксперимента. Приведенные примеры показывают, что реализация таких портов на основе универсальных микроконтроллеров дает недорогие, быстрые и, как правило, эффективные решения типовых экспериментальных задач. Применение этого подхода к устаревшим приборам (пример с Милихромом) или работоспособным узлам таких приборов (пример с pH-метром и микродозатором) способно дать «вторую жизнь» этому оборудования, причем, - совсем в другом, вполне современном качестве.

Практическое использование интерфейса USB в PIC контроллерах

  • высокая скорость обмена, высокая помехозащищенность
  • управление потоком данных, контроль целостности и исправление ошибок
  • возможность разветвления через хабы и подключения большого количества устройств.
  • возможность получения питания от шины
  • универсальность шины – возможность подключения разноплановых устройств (клавиатура, принтер, модем)
  • автоматическая идентификация и конфигурирование системы, Plug and Play
  • необходимость программирования драйверов для Windows
  • сравнительно малая распространенность микроконтроллеров со встроенным интерфейсом USB

Этот цикл статей призван показать, что преодолеть эти трудности довольно легко и каждый может провести "апгрейд" своего устройства с привычного RS-232 на USB или создать новое устройство с USB интерфейсом.

В качестве микроконтроллера в примерах будет рассматриваться микроконтроллер производства компании Microchip PIC18F4550 с интерфейсом USB 2.0 (поддерживает Low Speed и Full Speed).

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

Спецификация USB описывает класс коммуникационных устройств (Communication Device Class – CDC), который определяет множество режимов соединений для телекоммуникационных (модемы, терминалы, телефоны) и сетевых устройств (Ethernet адаптеры и хабы, ADSL модемы), включая эмуляцию последовательного порта.

Возьмем в качестве примера устройство, которое через RS-232 передает данные о напряжении с потенциометра и температуре с цифрового датчика TC77, а так же принимает команды для включения/выключения двух светодиодов (данный пример для простоты реализуем на плате PICDEM™ FS USB DEMONSTRATION BOARD, но можно собрать и более простую схему – см.ниже).

  • Максимальная частота работы – 48 МГц (12 MIPS);
  • 32 Кб Flash памяти программ (технология Enhanced Flash);
  • 2 Кб памяти данных (из них 1 Кб двухпортового ОЗУ);
  • 256 байт памяти данных EEPROM;
  • Интерфейс FS USB2.0 с поддержкой скорости работы 12 Мбит/с, со встроенным приемопередатчиком и стабилизатором напряжения.
  • Кварц 20 МГц;
  • Интерфейс RS-232 для демонстрации возможности перехода с USART на USB;
  • Разъем для внутрисхемного программирования и отладки
  • Стабилизатор питающего напряжения с возможностью переключения на питание от шины USB;
  • Разъем расширения PICtail™;
  • Температурный датчик TC77, подключенный по I2C;
  • Переменный резистор, подключенный ко входу АЦП;
  • Светодиоды, кнопки.

Фрагмент программы подготовки и передачи данных:

ReadPOT(); // Чтение данных с АЦП
output_buffer[0] = ADRESH;
output_buffer[1] = ADRESL;
AcquireTemperature(); // Чтение температуры из сенсора
output_buffer[2] = MSB(temperature);
output_buffer[3] = LSB(temperature);
User_ProcessUSART(); // передача данных по RS-232

Прием данных и управление светодиодами:

if(PIR1bits.RCIF) PIR1bits.RCIF = 0;
input_buffer[1] = RCREG;
switch (input_buffer[1]) case '1' : mLED_3_On(); break;
case '2' : mLED_3_Off(); break;
case '3' : mLED_4_On(); break;
case '4' : mLED_4_Off(); break;
default : break;
>
>

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

Приступим к подключению нашего устройства к USB. Компания Microchip Technology Inc. Предлагает готовый пример применения AN956, в котором реализована поддержка USB CDC для микроконтроллера PIC18F2550, PIC18F2455, PIC18F4455, PIC18F4550. Программа построена по модульному принципу, что позволяет легкую модернизацию и интегрированию в готовые проекты. После начальной инициализации контроллера программа может общаться с ПК через интерфейс USB посредством нескольких готовых функций:

Модифицируем нашу программу для передачи и приема данных через USB.

Фрагмент программы подготовки и передачи данных:

ReadPOT(); // Чтение данных с АЦП
output_buffer[0] = ADRESH;
output_buffer[1] = ADRESL;
AcquireTemperature(); // Чтение температуры из сенсора
output_buffer[2] = MSB(temperature);
output_buffer[3] = LSB(temperature);
if(mUSBUSARTIsTxTrfReady()) < // Если USB свободен, то передать данные mUSBUSARTTxRam((byte*)output_buffer,4);
>

if(getsUSBUSART(input_buffer,1)) switch (input_buffer[0]) case '1' : mLED_3_On(); break;
case '2' : mLED_3_Off(); break;
case '3' : mLED_4_On(); break;
case '4' : mLED_4_Off(); break;
default : break;
>
>

После подключения устройства к USB система опознает новое устройство

И устанавливает новое оборудование

Выбираем установку с указанного места и указываем путь расположения файла mcpusb.inf из комплекта исходных кодов программы к AN956. После этого производится установка нового устройства в систему.

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

Теперь в нашей программе мы можем выбрать появившийся виртуальный COM порт для общения с устройством …

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

Окно программы PICDEM CDC

При использовании микроконтроллеров PIC18Fxx5x со встроенным модулем USB 2.0 виртуальный COM порт может обеспечить скорость передачи данных до 80Кбайт в секунду (640Кбит/сек), что существенно превышает возможную скорость передачи через RS-232, при этом, как мы видим, переделки ПО для компьютера не потребовалось!

  • простота реализации;
  • компактный код;
  • поддержка Windows (не нужны дополнительные драйвера).

На сайте компании Microchip есть пример реализации HID манипулятора мышь. Рассмотрим реализацию простейшего игрового манипулятора на основе этого примера. Для этого проекта будем использовать демонстрационную плату PICDEM FS-USB (DM163025). Отладочная плата PICDEM FS-USB имеет один переменный резистор и 2 кнопки, поэтому разрабатываемый джойстик будет иметь минимум элементов управления (2 кнопки и, например, регулятор газа).

Дополнительно нужно скорректировать в описании HID Class-Specific Descriptor размер полученного дескриптора устройства и в дескрипторе конечной точки изменить размер данных, передаваемых через конечную точку (в нашем случае передаем 2 байта, поэтому размер HID_INT_IN_EP_SIZE=2).

Перечисленных изменений хватит для того чтобы Windows опознала подключенное устройство как джойстик. Теперь можем скорректировать строковые данные, чтобы устройство имело то название, какое мы хотим (например «PIC18F4550 Joystick»). Для того чтобы присвоить устройству имя на русском языке необходимо прописывать строковый дескриптор в кодировке UNICODE.

На этом описание джойстика заканчивается и нужно подготовить данные для передачи в PC.

ReadPOT(); // запуск измерения напряжения потенциометра
buffer[0] = ADRESH;
// обработка состояний кнопок
if(sw2==0) buffer[1] |= 0x01;
else buffer[1] &=

0x01;
if(sw3==0) buffer[1] |= 0x02;
else buffer[1] &=

0x02;
// передача данных
Emulate_Joystick();

После компиляции проекта и программирования микроконтроллера можно подключить устройство к USB-порту. Плата определяется как HID игровое устройство, инсталлируется в систему и готово к работе.

Через панель управления в Windows мы можем открыть доступные игровые устройства, выбрать наш джойстик, откалибровать его и проверить функциональность.

При изменении конфигурации устройства – добавлении органов управления или кнопок, необходимо не только изменить описание дескриптора устройства, но и передавать данные строго в соответствии с созданным дескриптором. Так изменив в описании дескриптора устройства USAGE_MAXIMUM (BUTTON 2) максимальное число кнопок с 2 на 8, получим джойстик на 8 кнопок.

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

Любое USB устройство может иметь несколько конфигураций и в каждой конфигурации несколько интерфейсов. Это свойство USB позволяет создаваемому устройству иметь возможность опознаваться компьютером как несколько USB устройств с разными интерфейсами. Мышка, например, может иметь встроенный карт-ридер и взаимодействовать с компьютером как два независимых устройства.

Структура дескриптора устройства:

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

    Создание дескриптора. Изменим структуру дескриптора (файл usbdsc.h) Устройство будет иметь 2 интерфейса, в каждом по одной конечной точке.

Тогда передача данных для мышки будет выглядеть как

После компиляции проекта, прошивки контроллера и подключению устройства к USB, компьютером будут обнаружено новое составное устройство и добавлены мышка и джойстик.

Исходные коды составного HID устройства

Замечание. Не забывайте менять PID при создании нового устройства или удалять из системы предыдущее устройство с тем же самым PID.

Компания Microchip Technology Inc. выпускает недорогой программатор разработчика PICkit2, который в первую очередь используется для программирования Flash-контроллеров. Отличительной особенностью этого программатора является доступность полной документации и исходных кодов прошивки для микроконтроллера, и программы оболочки для компьютера. PICkit2 получает питание от USB, формирует регулируемые напряжения программирования и питания, а так же имеет 3 линии входа-выхода для подключения к программируемому устройству. Для возможности обновления прошивки программатора в PICkit2 реализована программа бутлоадер.

CDC-устройство на основе PICkit2

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

Исходные коды данного примера доступны по ссылке.

На основе данного примера и используя внешние выводы программатора PICkit2 можно получать данные с внешних устройств и передавать в компьютер через USB. Таким образом, используя PICkit2 можно сделать вывод данных на COG ЖК-индикаторы, считыватели I2C, SPI и 1-wire устройств, например датчиков температуры и др. устройств.

Радио HID клавиатура на основе PICkit2.

Рассмотрим еще один пример «нецелевого» использования программатора PICkit2 – эмулятор клавиатуры с радиоинтерфейсом. Такое устройство может использоваться, например, для проведения презентаций – для перелистывания слайдов вдали от компьютера.

  • PICkit2
  • демо-плата из комплекта PICkit2 (DV164120)
  • радиоприемник (rfRXD0420) и радиопередатчик (rfPIC12F675) из комплекта rfPICkit.

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

  • при подключении к компьютеру через USB определяться как HID-клавиатура
  • формировать напряжение питания +5В для демо-платы с приемником
  • опрашивать 2 внешних вывода контроллера приемника и при наличии лог. 1 отсылать в компьютер коды нажатия кнопок PageUp или PageDown.

Два виртуальнык COM-порта (Эмуляция микросхемы FTDI2232) на базе PICKit2.Этот пример предназначен только для изучения работы USB. Изучите требование лицензии на драйвер FTDI перед использованием!

Пример показывает как на базе микроконтроллера с USB портом сделать 2 виртуальных COM-порта.Для начало нужно установить драйвера для микросхемы FTDI2232. Затем для загрузки в PICkit2 нужно в оболочке PICkit2 выбрать пункт обновления прошивки и указать на файл TestVCP2.hex из архива. После перепрограммирования PICkit2 у вас в системе появятся 2 независимых последовательных COM порта.

Все приведенные выше примеры основаны на MCHPFSUSB Framework v1.3. С появлением контроллеров PIC24 и PIC32 с USB OTG, компания Microchip выпустила новую версию стека - USB stack v. 2.х.

В новой версии USB stack v. 2.3, помимо стеков USB device, реализующего функциональность USB-клиента, USB Embedded host, реализующего функциональность хоста, также добывлен стек USB dual role, реализующий функции и хоста, и клиента; и USB OTG, поддерживающий протокол согласования роли хоста (HNP), протокол запроса сеанса (SRP), и полностью соответствующий спецификации USB OTG. В примерах применения реализовано:

  • Embedded Host
    • Printer Class host – поддержка ESC/POS, PostScript® и PCL5 принтеров
    • CDC Class host – поддержка устройств ACM (abstract control model)
    • HID Клавиатура
    • HID bootloader – добавлена поддержка семейств PIC32MX460F512L и PIC18F14K50
    • HID клавиатура, мышка
    • MSD internal flash demo – использование внутренней flash для хранения файлов
    • MSD + HID composite example - пример составного устройства MSD и HID
    • CDC - эмуляция COM-порта
    • поддержка семейства PIC32MX460F512L для всех демонстрационных проектов
    • примеры HID, MCHPUSB и WinUSB теперь поддерживают функцию Microsoft Plug-and-Play (PnP) для автоопределения. Документация
    • полное описание всех API расположено в папке “ \Microchip\Help”
    1. Интерфейс пользователя (HID). Этот режим обмена используется практически во всех клавиатурах, «мышках» и прочих устройствах ввода/вывода
    2. Коммуникационное устройство (CDC). Этот режим наиболее простой для перехода с последовательного интерфейса RS-232 на USB. На компьютерах с WinXP/2K производиться создание и эмуляция виртуального COM-порта при подключении микроконтроллера. Программы, работающие с портами COM1.. 4 будут работать без изменений и с виртуальным портом, но с большей скоростью (порядка 1 Мбит/с)
    3. Устройства массового хранения (MSD). Это устройства, работающие как накопители информации - флешки, SD/MMC-карты, диски и прочее
    4. Устройства класса «принтер» (Printer Class). Этот режим создан для использования USB-принтеров, что позволяет конечному устройству на PIC-микроконтроллере с модулем USB выводить необходимую информацию непосредственно на USB-принтер
    5. Резидентный загрузчик Microchip. Простейший режим, который используется только для обновления по USB программного обеспечения микроконтроллера. Со стороны ПК устанавливается небольшая программа, аналог драйвера
    6. Собственный драйвер (Custom). Наиболее полное использование ресурсов USB2.0 для продвинутых пользователей: возможность выбора режимов работы шины (изохронный, по прерываниям, объемный, управления), высокая скорость передачи. Требует глубоких знаний работы шины и навыки разработки ПО под Windows

    Бутлоадер с USB Flash Drive. Обновление прошивки с обычного флэш диска.

    Для обновления прошивки микроконтроллера с модулем USB-OTG (PIC24 или PIC32) не обязательно использовать специальное программное обеспечение. Наличие Host-режима позволяет подключать к микроконтроллеру обычные USB-накопители данных (Flash Drive). На сайте Microchip опубликован пример (бета версия), позволяющий обновить программное обеспечение микроконтроллера из подключенного USB-диска.

    Для запуска примера вам нужно загрузить прошивку бутлоадера в плату PIC32 USB Board или Explorer 16 (c установленным процессорным модулем PIM PIC32 USB и дочерней платой USB PICtail Plus Daughter Board). Если подать питание на плату при нажатой кнопке, то контроллер перейдет в режим обновления прошивки. Если теперь подключить Flash накопитель с записанным файлом обновления прошивки, то микроконтроллер считает этот файл и перепишет в свою память программ.

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

    Содержание

    Основы технологии

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

    Виртуальный COM порт

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

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

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

    Массовые USB-2-COM переходники

    Частный случай виртуального COM порта является переходник с USB к COM. Переходник работает по такому же принципу, как описано в данной статье, но является отдельным устройством в собственном корпусе. Самые часто встречающиеся переходники:

    • Серия Aten;
    • Серия Prolific;
    • Серия Manhattan.

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

    Настройка софтвера

    Реальная настройка софтвера ничем не отличается от настройки стандартного RS-232 устройства. Разница в том, что выбирается виртуальный COM порт, а не реальный. Программное обеспечение работает без того, чтобы определять вид COM порта. Особенность в том, что виртуальный COM существует только когда устройство включено, т.е если устройство отсутствует или выключено, его COM порт невидим для прикладной программы. Это очень важно, потому что если устройство настроено, после чего выключится и активируется настройка, она укажет на несуществующий COM порт и программ может вывести ошибку. Иногда получается, что виртуальный COM порт работает на произвольной скорости, т.е. нет значения какая скорость обмена выбрана в настройках продукта. Так как USB драйвер эмулирует передачу данных, то скорость обмена не имеет значение, и любая скорость подходящая.

    Режим совместимости

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

    Исключения

    Очень редко существуют исключения указанного принципа действий. При некоторых устройствах производитель решил, что нет необходимости, а соответственно и не существует эмуляция COM порта. В таком случае обмен происходит на уровне HID интерфейса USB порта. Если устройство данного типа, то его добавление в систему требует создания индивидуального драйвера для данного устройства и изменение программы. К счастью, такие устройства являются редкостью и не особо популярны у ведущих производителей.

    Выводы

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

    Читайте также: