Выбрать главу

Отметим еще, что обычный телефонный модем с точки зрения системы – тоже СОМ-порт, только поверх простейшего физического протокола RS-232 для него введены некоторые специализированные команды управления, а в остальном он ничем от СОМ-порта не отличается (даже если втыкается в USB). «Комом» является и инфракрасный (IR) порт, беспроводной интерфейс Bluetooth тоже образует виртуальные СОМ-порты, через которые ведется обмен.

С точки зрения современных технологий у COM-порта только два недостатка, зато очень серьезных. Во-первых, он медленный – со скоростью 115 кбит/с не только какое-нибудь видео, даже цифровой звук не всегда передашь с надлежащим качеством. Правда, современные порты поддерживают скорости и повыше (например, 256 кбит/с), но это не выход из положения. Во-вторых, он подразумевает только соединение «точка-точка» – если у вас один СОМ-порт, то вы к нему можете подключить только одно устройство. Тем не менее, хоронить протокол RS-232 не следует – это по-прежнему самый дешевый и простой способ связи внешних устройств с компьютером, отчего он и по сей день используется во многих специальных аксессуарах – вроде навигаторов, модемов или медицинских приборов.

Кабели для подключения RS-232 делятся на удлинительные (вилка-гнездо, рис. 3.2) и соединительные (гнездо-гнездо, рис. 3.3), последние часто называют нуль-модемными. В соединительных кабелях, обеспечивающих обмен между двумя устройствами, приемные-передающие линии (2-й и 3-й контакты 9-контактного разъема) соединены перекрестно. В правильном нуль-модемном кабеле контакт 4 (DTR, Data Terminal Ready, готовность компьютера) на противоположной стороне также соединяется с 1 и 6 контактами (DCD и DSR – готовность модема). В удлинительных кабелях все эти контакты соединены один к одному.

Рис. 3.2. Удлинительный кабель RS-232

Рис. 3.3. Соединительный (нуль-модемный) кабель RS-232

Если вы столкнулись с COM-интерфейсом на каком-то приборе, а в компьютере он отсутствует, – не отчаивайтесь. Есть несколько способов его организовать. Самые распространенные – приобрести переходник USB-COM в виде внешнего кабеля или вставную PCI-плату с набором портов. Последний способ предпочтительнее первого – кабели USB-COM бывают довольно капризными, и некоторые программы для работы через COM-порт с этими кабелями работают с ошибками или отказываются работать вовсе. «Железный» COM-порт, установленный, как постоянное оборудование компьютера, значительно надежнее и, кстати, даже предпочтительнее стационарного порта, установленного на материнской плате, – в случае чего выходит из строя дополнительная плата, а материнская остается в неприкосновенности.

Для ноутбуков такое решение, конечно, не подходит – в них можно пользоваться только переходниками, например, USB-COM. Более надежными будут переходники PCMCIA-COM, хотя они могут быть существенно дороже USB-кабелей. Есть и переходники ExpressCard-COM для тех ноутбуков, в которых нет PCMCIA.

Как определить номер виртуального COM-порта?

И вставные платы, и кабели, и различные переходники для ноутбуков, имеют, как правило, одну неприятную особенность – они не позволяют задать определенный номер COM-порта, он устанавливается произвольным образом после установки драйвера. Причем для переходников USB-COM часто номер порта еще и меняется в зависимости от того, в какой именно порт USB в этот раз воткнули кабель. Такую же особенность имеют и многие модемы (в том числе GSM-модемы для выхода в Интернет по сотовой связи или сотовые телефоны, используемые в качестве модема). А для соединения через COM в программах связи обычно приходится указывать его номер. Как быть?

Определить, какой именно номер присвоен в данном случае виртуальному COM-порту, можно через меню Панель управления | Система | Оборудование | Диспетчер устройств | Порты COM и LPT (в новых версиях Windows Диспетчер устройств может быть доступен прямо из панели управления). В указанном разделе может быть много разных COM-портов (особенно, если у вас в системе имеется Bluetooth), но нужный легко определяется наличием в названии «USB-to-serial» или другой подобной записи. Для модемов (а также сотовых телефонов, подключенных в качестве модема) соответствующий номер COM-порта можно узнать, если найти их в разделе Модемы Диспетчера устройств и обратиться к вкладке Модем в окне Свойства выбранного модема.

LPT (IEEE 1284)