В чем отличие параллельного порта от последовательного. Bluetooth, альтернативные сетевые технологии. Соединение по технологии HomePlug PowerLine

Последовательный порт

Порт или интерфейс, который может использоваться для последовательной связи, при которой за раз передается только 1 бит.

Большинство последовательных портов для персональных компьютеров удовлетворяют стандарту RS-232C или RS-422. Последовательный порт есть интерфейс общего назначения, он может использоваться для многих типов устройств, включая модемы, мыши и принтеры (хотя большинство принтеров подсоединяются к параллельному порту).

Обычный PC имеет ttyS0 и ttyS2 на IRQ 4, и ttyS1 и ttyS3 на IRQ 3. Вы можете увидеть, какие IRQs используются, напечатав: setserial /dev/ttyS2, и т.д. Просмотр /proc/interrupts покажет некоторых из них. Чтобы использовать более, чем два последовательных устройства, вы должны будете переназначить прерывания. Хороший подход состоит в переназначении прерывания для параллельного порта. В PC обычно для ваших параллельных портов установлены прерывания IRQ 5 и IRQ 7, но мало кто использует два параллельных порта. Вы можете переназначать одно из прерываний на последовательное устройство, и прекрасно использовать оставшийся параллельный порт. чтобы сделать это, вам нужна будет программа setserial. Кроме того, вы должны поиграть с перемычками на матернской плате, свериться с документацией на вашу плату. Установите перемычки на IRQ, который вы хотите назначить каждому порту.

Вы должны установить все так, чтобы имелось одно и только одно прерывание для каждого последовательного устройства. Вот как Грэг устанавливает его в /etc/rc.d/rc. local - вы должны сделать это в файле, который выполняется после запуска:

/sbin/setserial /dev/ttyS0 irq 3 # моя последовательная мышь

/sbin/setserial /dev/ttyS1 irq 4 # мой Wyse dumb терминал

/sbin/setserial /dev/ttyS2 irq 5 # мой модем Zoom

/sbin/setserial /dev/ttyS3 irq 9 # мой модем USR

Стандартные назначения IRQ:

IRQ 0 Таймер, канал 0

IRQ 1 Клавиатура

IRQ 2 Cascade for controller 2

IRQ 3 Последовательный порт 2

IRQ 4 Последовательный порт 1

IRQ 5 Параллельный порт 2

IRQ 6 Накопитель на гибких дисках

IRQ 7 Параллельный порт 1

IRQ 8 Часы реального времени

IRQ 9 Перенаправлен на IRQ2

IRQ 10 не назначен

IRQ 11 не назначен

IRQ 12 не назначен

IRQ 13 Математический сопроцессор

IRQ 14 Накопитель на жестких дисках 1

IRQ 15 Накопитель на жестких дисках 2

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

Номера прерываний 2, 3, 4, 5 или 7 - это хороший выбор. «не назначен» означает, что в настоящее время ничего стандартно не использует эти IRQS. Также обратите внимание, что IRQ 2 - это тоже, что и IRQ 9. Вы можете вызывать его или как 2 или как 9, последовательный драйвер очень понятливый. Если у вас последовательная плата с 16-разрядным разъемом шины, то вы можете также использовать IRQ 10, 11, 12 или 15.

Только удостоверьтесь, что вы не используете IRQ 0, 1, 6, 8, 13 или 14! Они используются вашей материнской платой. Вы модете заработать множество неприятностей, используя эти IRQ не по назначению. Когда вы закончите, посмотрите /proc/interrupts и удостоверьтесь, что конфликтов нет.

Установка адресов последовательных устройств

Затем, вы должны установить адрес порта. Проверьте в руководстве по вашей плате установки перемычек. Подобно прерываниям, одно последовательное устройство может иметь только один адрес. Ваши порты обычно будут приходить с такими установками:

ttyS0 адрес 0x3f8

ttyS1 адрес 0x2f8

ttyS2 адрес 0x3e8

ttyS3 адрес 0x2e8

Выберите адреса, которые вы хотите использовать для каждого последовательного устройства и соответственно установите перемычки. Мой модем установлен на ttyS3, мышь на ttyS0, а мой терминал на ttyS2.

Когда вы перезагрузитесь, Linux должен увидеть ваши последовательные порты по тем адресам, на которые вы их установили. IRQ, который видит Linux, может не соответствовать IRQ, который вы устанавливаете перемычками. Не волнуйтесь об этом. Linux не делает попыток определить IRQ при загрузке, потому что определение IRQ рисковано и может быть неправильным. Используйте setserial, чтобы сообщить Linux, какое IRQ используется портом. Вы можете проверить /proc/ioports, чтобы увидеть, какие адреса порта ввода-вывода используются после загрузки Linux.

Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в адресном пространстве устройств ввода/вывода. Количество регистров зависит от типа порта, однако три из них стандартны и присутствуют всегда - регистр данных, регистр состояния и регистр управления. Адреса регистров отсчитываются от базового, стандартные значения которого 3BCh, 378h, 278h. Узнать количество установленных портов в компьютере и их базовые адреса можно просканировав область данных BIOS по адресам 0:408h для LPT1, 0:40Ah для LPT2, 0:40Ch для LPT3 и 0:40Eh для LPT4. Если по данным адресам содержится слово (2 байта) с ненулевым значением, то это и есть базовый адрес порта. Если слово содержит нулевое значение - порт не установлен. BIOS не поддерживает больше 4 LPT-портов. Порт может использовать аппаратное прерывание (IRQ7 или IRQ9). Многие современные системы позволяют изменять режим работы порта, его адрес и IRQ из настроек BIOS Setup. Например, в AWARD BIOS имеется раздел Integrated Peripherals, позволяющий настраивать режим, адрес и IRQ порта.

LPT порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-х битную шину управляющих сигналов. При начальной загрузке BIOS пытается обнаружить параллельный порт, причем делает это примитивным и не всегда корректным образом - по возможным базовым адресам портов передается тестовый байт, состоящий из чередующегося набора нулей и единиц (55h или AAh), затем производится чтение по тому же адресу, и если прочитанный байт совпал с записанным, то считается, что по данному адресу найден LPT порт. Определить адрес порта LPT4 BIOS не может. Для работы с ПУ в BIOS предусмотрено прерывание INT 17h, предоставляющее возможность передавать данные (побайтно), инициализировать ПУ и получать информацию о его состоянии.

Порт называется «последовательным», так как информация через него передаётся по одному биту , последовательно бит за битом (в отличие от параллельного порта). Несмотря на то, что некоторые интерфейсы компьютера (например, Ethernet , FireWire и USB) тоже используют последовательный способ обмена информацией, название «последовательный порт» закрепилось за портом стандарта RS-232 .

Назначение

Наиболее часто для последовательного порта персональных компьютеров используется стандарт RS-232C. Ранее последовательный порт использовался для подключения терминала, позже для модема или мыши . Сейчас он используется для соединения с , для связи с аппаратными средствами разработки встраиваемых вычислительных систем , спутниковыми ресиверами, кассовыми аппаратами, программаторами, с приборами систем безопасности объектов, а также с многими прочими устройствами.

С помощью COM-порта можно соединить два компьютера, используя так называемый «нуль-модемный кабель» (см. ниже). Использовался со времен MS-DOS для передачи файлов с одного компьютера на другой, в UNIX для терминального доступа к другой машине, а в Windows (даже современной) - для отладчика уровня ядра.

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

Видео по теме

Разъёмы

На материнских платах ведущих производителей (например, Intel) или готовых системах (например, IBM , Hewlett-Packard , Fujitsu Siemens Computers) для последовательного порта принято условное обозначение COM или RS-232.

Варианты разъёма COM-порта типа DE-9

Наиболее часто используются стандартизированные в 1969 году D-образные разъёмы: 9- и 25-контактные, (DB-9 и DB-25 соответственно). Раньше использовались также DA-31 и круглые восьмиконтактные DIN-8. Максимальная скорость передачи в обычном исполнении порта составляет 115 200 бод .

Актуальность

Существуют стандарты на эмуляцию последовательного порта над USB и над Bluetooth (эта технология в значительной степени и проектировалась как «беспроводной последовательный порт»).

Тем не менее программная эмуляция данного порта широко используется и сегодня. Так, например, практически все мобильные телефоны эмулируют внутри себя классический COM-порт и модем для реализации тетеринга - доступа компьютера в Интернет через GPRS/EDGE/3G/4G оборудование телефона. При этом для физического подключения к компьютеру используется USB , Bluetooth или Wi-Fi .

Также программная эмуляция данного порта предоставляется «гостям» виртуальных машин VMWare и Microsoft Hyper-V , основная цель при этом - подключение отладчика уровня ядра Windows к «гостю».

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

Аппаратура

Разъем имеет контакты:

DTR (Data Terminal Ready - готовность к приёму данных) - выход на компьютере, вход на модеме. Означает готовность компьютера к работе с модемом. Сброс этой линии вызывает почти полную перезагрузку модема в первоначальное состояние, в том числе бросание трубки (некоторые управляющие регистры выживают после такого сброса). В UNIX это происходит в случае, если все приложения закрыли файлы на драйвере последовательного порта. Мышь использует этот провод для получения питания.

DSR (Data Set Ready - готовность к передаче данных) - вход на компьютере, выход на модеме. Означает готовность модема. Если эта линия находится в нуле - то в ряде ОС становится невозможно открыть порт как файл.

RxD (Receive Data - приём данных) - вход на компьютере, выход на модеме. Поток данных, входящий в компьютер.

TxD (Transmit Data - передача данных) - выход на компьютере, вход на модеме. Поток данных, исходящих из компьютера.

CTS (Clear to Send - готовность передачи) - вход на компьютере, выход на модеме. Компьютер обязан приостановить передачу данных, пока этот провод не будет выставлен в единицу. Используется в аппаратном протоколе управления потоком для предотвращения переполнения в модеме.

RTS (Request to Send - запрос на передачу) - выход на компьютере, вход на модеме. Модем обязан приостановить передачу данных, пока этот провод не будет выставлен в единицу. Используется в аппаратном протоколе управления потоком для предотвращения переполнения в оборудовании и драйвере.

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

RI (Ring Indicator - сигнал вызова) - вход на компьютере, выход на модеме. Взводится модемом в единицу после обнаружения вызывного сигнала телефонного звонка. Аппаратура компьютера может издавать прерывание при наступлении такого события.

SG (Signal Ground - сигнальная земля) - общий сигнальный провод порта, не является общей землёй , как правило, изолирован от корпуса ЭВМ или модема.

В нуль-модемном кабеле используются две перекрещенные пары: TXD/RXD и RTS/CTS.

Исходно в IBM PC и IBM PC/XT аппаратура порта была построена на микросхеме UART 8250 фирмы National Semiconductor, затем микросхема была заменена на 16450, программно совместимой с предыдущими, но позволявшей использовать скорости вплоть до 115200 бит в секунду, затем появилась микросхема 16550, содержавшая двунаправленный FIFO буфер данных для снижения нагрузки на контроллер прерываний. В настоящее время включена в SuperIO микросхему на материнской плате вместе с рядом иных устройств.

Программный доступ к СОМ-порту

UNIX

COM-порты в операционной системе Unix (Linux) - это файлы символьных устройств. Обычно эти файлы располагаются в каталоге /dev и называются

  • ttyS0 , ttyS1 , ttyS2 и т. д. в Linux
  • ttyd0 , ttyd1 , ttyd2 и т. д. (или ttyu0 , ttyu1 , ttyu2 и т. д. начиная с версии 8.0) в FreeBSD
  • ttya , ttyb , ttyc и т. д. в Solaris
  • ttyf1 , ttyf2 , ttyf3 и т. д. в IRIX
  • tty1p0 , tty2p0 , tty3p0 и т. д. в HP-UX
  • tty01 , tty02 , tty03 и т. д. в Digital Unix
  • ser1 , ser2 , ser3 и т. д. в QNX

Для программного доступа к СОМ-порту необходимо открыть на чтение/запись соответствующий файл и сделать вызовы специальных функций tcgetattr (для того, чтобы узнать текущие настройки) и tcsetattr (чтобы установить новые настройки). Также может потребоваться сделать вызовы ioctl с определенными параметрами. После этого при записи в файл данные будут отправляться через порт, а при чтении программа будет получать уже принятые данные из буфера СОМ-порта.

Устройства с именами «ttyxx» используются как серверные, то есть приложение, открывшее данное устройство, обычно ожидает входящего звонка от модема. Классическим таким приложением, используемым по умолчанию, является getty , которая ожидает входящего звонка, далее настраивает COM-порт в соответствии с файлами конфигурации, выводит туда "login: ", принимает имя пользователя и запускает как потомка команду «login ИмяПользователя», со стандартным вводом и выводом, перенаправленными в COM-порт. Эта команда в свою очередь запрашивает и проверяет пароль, и в случае успеха запускает (не как потомка, а вместо себя вызовом execve в том же процессе) default user shell, прописанный в файле /etc/passwd.

Эта технология исторически возникла в 1970-е годы, когда под ОС UNIX использовались компьютеры вроде PDP-11 (в СССР серия называлась СМ ЭВМ) или VAX , позволяющие подключение многих терминалов для работы многих пользователей. Терминалы - а значит, и весь интерфейс пользователя - при этом подключались через последовательные порты, с возможностью подключения вместо терминала модема и дальнейшего дозвона на компьютер по телефону. До сих пор в UNIX-подобных ОС существует терминальный стек, и обычно 3 реализации терминалов - последовательный порт, консоль текстового режима экрана+клавиатура, и «обратная петля» в один из открытых файлов управляющего приложения (так реализованы telnetd, sshd и xterm).

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

Так как последовательный порт в UNIX доступен только через терминальный стек, он может быть управляющим терминалом для процессов и групп (посылать SIGHUP при разрыве связи от модема и SIGINT при нажатии Ctrl-C), на уровне ядра поддерживать редактирование последней введенной строки клавишами стрелочек, и т. д. Для отключения этой возможности с целью превращения устройства в «трубу» для потока байт необходимы вызовы ioctl.

Windows

С последовательными портами в Win32 работают как с файлами. Для открытия порта используется функция CreateFile. Портов может быть много, поэтому они обозначаются как COM1, COM2 и т. д. по порядку обнаружения драйверов соответствующих устройств. Первые 9 портов доступны в том числе как именованные каналы для передачи данных (доступны по именам «COM1», «COM2», …), такой метод доступа считается устаревшим. Рекомендуется ко всем портам обращаться как к файлам (по именам «\\.\COM1», «\\.\COM2»,… «\\.\COMx»).

Лекция 6 Последовательный и параллельный порты .

6.1 Параллельные интерфейсы

6.1.1. Интерфейс Centronics и LPT-порт

6.1.2 Интерфейс Centronics

6.1.3 Традиционный LPT-порт

6.1.4 Расширения параллельного порта

6.1.5 Стандарт IEEE 1284

6.1.6 Физический и электрический интерфейсы

6.1.7 Развитие стандарта IEEE 1284

6.1.8 Конфигурирование LPT-портов

6.2 Последовательные интерфейсы

6.2.1. Способы последовательной передачи

6.2.2 Интерфейс RS-232C

6.2.3 Электрический интерфейс

6.2.4 СОМ-порт

6.2.5 Использование СОМ-портов

6.2.6 Ресурсы и конфигурирование СОМ-портов

6 .1 Параллельные интерфейсы

Параллельные интерфейсы характеризуются тем, что в них для передачи бит в слове используются отдельные сигнальные линии, и биты передаются одновременно. Параллельные интерфейсы используют логические уровни ТТЛ (транзисторно-транзисторной логики), что ограничивает длину кабеля изза невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует. Параллельные интерфейсы используют для подключения принтеров. Передача данных может быть как однонаправленной (Centronics), так и двунаправленной (Bitronics). Иногда параллельный интерфейс используют для связи между двумя компьютерами - получается сеть, "сделанная на коленке" (LapLink). Ниже будут рассмотрены протоколы интерфейсов Centronics, стандарт IEEE 1284, а также реализующие их порты PC.

6.1.1. Интерфейс Centronics и LPT-порт

Для подключения принтера по интерфейсу Centronics в PC был введен порт параллельного интерфейса - так возниклоназвание LPT-порт (Line PrinTer - построчный принтер).Хотя сейчас через этот порт подключаются не только построчные принтеры, название "LPT" осталось.

6.1.2 Интерфейс Centronics

Понятие Centronics относится как к набору сигналов и протоколу взаимодействия, так и к 36-контактному разъему на ринтерах. Назначение сигналов приведено в табл. 1.1, а временные диаграммы обмена с принтером - на рис. 1.1. Интерфейс Centronics поддерживается принтерами с парал-
лельным интерфейсом. Его отечественным аналогом явля-
ется интерфейс ИРПР-М. Традиционный порт SPP (Standard Parallel Port) является однонаправленным портом, через который программно реализуется протокол обмена Centronics. Порт вырабатывает аппаратное прерывание по импульсу на входе Ack#. Сигналы порта выводятся на разъем DB-25S (розетка), установленный непосредственно на плате адаптера (или системной плате) или соединяемый с ней плоским шлейфом.

6.1.3 Традиционный LPT-порт

Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5. Порт имеет внешнюю 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов, BIOS поддерживает до четырех (иногда до трех) LPT-портов (LPT1-LPT4) своим сервисом - прерыванием INT 17h, обеспечивающим через них связь с принтером по интерфейсу Centronics. Этим сервисом BIOS осуществляет вывод символа (по опросу готовности, не используя аппаратных прерываний), инициализацию интерфейса и принтера, а также опрос состояния принтера. Стандартный порт имеет три 8-битных регистра, расположенных по соседним адресам в пространстве ввода/вывода,
начиная с базового адреса порта (BASE).

6.1.4 Расширения параллельного порта

Недостатки стандартного порта частично устраняли новые типы портов, появившиеся в компьютерах PS/2.

Двунаправленный порт 1 (Type 1 parallel port} -интерфейс, введенный в PS/2. Такой порт кроме стандартного режима может работать в режиме ввода или двунаправленном режиме. Протокол обмена формируется программно, а для указания направления передачи в регистр управления порта введен специальный бит CR.5:0 - буфер данных работает на вывод, 1 - на ввод. Не путайте этот порт, называемый также enhanced bi-directional, с ЕРР. Данный тип порта прижился и в обычных компьютерах.

Порт с прямым доступом к памяти (Type 3 DMA parallelport)
применялся в PS/2 моделей 57, 90, 95. Был введен для повышения пропускной способности и разгрузки процессора при выводе на принтер. Программе, работающей с портом, требовалось только задать в памяти блок данных, подлежащих выводу, а затем вывод по протоколу Centronics произ-
водился без участия процессора. Позже появились другие адаптеры LPT-портов, реализующие протокол обмена Centronics аппаратно - Fast Centronics. Некоторые из них использовали FIFO-буфер данных Parallel Port FIFO Mode. He будучи стандартизованными, такие порты разных производителей требовали использования собственных специальных драйверов. Программы, использующие прямое управление регистрами стандартных портов, не умели более эффективно их использовать. Такие порты часто входили в состав мультикарт VLB. Существуют их варианты с шиной ISA, в том числе встроенные.

6.1.5 Стандарт IEEE 1284

Стандарт на параллельный интерфейс IEEE 1284, принятый в 1994 году, определяет порты SPP, ЕРР и ЕСР. Стандарт определяет 5 режимов обмена данными, метод согласования режима, физический и электрический интерфейсы. Согласно IEEE 1284, возможны следующие режимы обмена данными через параллельный порт:

^ Режим совместимости (Compatibility Mode) - однонаправленный (вывод) по протоколу Centronics. Этот режим соответствует стандартному порту SPP.

^ Полубайтный режим (Nibble Mode) - ввод байта в два цикла (по 4 бита), используя для приема линии состояния. Этот режим обмена может использоваться на любых адаптерах.

^ Байтный режим (Byte Mode) - ввод байта целиком, используя для приема линии данных. Этот режим работает только на портах, допускающих чтение выходных данных (Bi-Directional или PS/2 Type 1).

т Режим ЕРР (Enhanced Parallel Port) (EPP Mode) - двунаправленный обмен данными. Управляющие сигналы интерфейса генерируются аппаратно во время цикла обращения к порту. Эффективен при работе с устройства-
ми внешней памяти и адаптерами локальных сетей.

^ Режим ЕСР (Extended Capability Port) (ECP Mode) - двунаправленный обмен данными с возможностью аппаратного сжатия данных по методу RLE (Run Length Encoding) и использования FIFO-буферов и DMA. Управляющие
сигналы интерфейса генерируются аппаратно. Эффективен для принтеров и сканеров.

В компьютерах с LPT-портом на системной плате режим SPP, ЕРР, ЕСР или их комбинация - задается в BIOS Setup. Режим совместимости полностью соответствует стандартному порту SPP.

6.1.6 Физический и электрический интерфейсы

Стандарт IEEE 1284 определяет физические характеристики приемников и передатчиков сигналов. Спецификации стандартного порта не задавали типов выходных схем, предельных значений величин нагрузочных резисторов и
емкости, вносимой цепями и проводниками. На относительно невысоких скоростях обмена разброс этих параметров не вызывал проблем совместимости. Однако расширенные (функционально и по скорости передачи) режимы требуют четких спецификаций. IEEE 1284 определяет два
уровня интерфейсной совместимости. Первый уровень (Level I) определен для устройств медленных, но использующих смену направления передачи данных. Второй уровень (Level II) определен для устройств, работающих в
расширенных режимах, с высокими скоростями и длинными кабелями. К передатчикам предъявляются следующие требования:

^ Уровни сигналов без нагрузки не должны выходить за пределы -0,5... +5,5 В.

^ Уровни сигналов при токе нагрузки 14 мА должны быть не ниже +2,4 В для высокого уровня (Уон) и не выше +0,4 В для низкого уровня (VoiJ на постоянном токе.

Традиционные интерфейсные кабели имеют от 18 до 25 проводов, в зависимости от числа проводников цепи GND. Эти проводники могут быть как перевитыми, так и нет. К экранированию кабеля жестких требований не предъявлялось. Такие кабели вряд ли будут надежно работать на скорости
передачи 2 Мбайт/с и при длине более 2 м. Стандарт IEEE 1284 регламентирует свойства кабелей.


Три различных разъема, определенных в стандарте IEEE 1284

6.1.7 Развитие стандарта IEEE 1284

Кроме основного стандарта IEEE 1284, который уже принят, в настоящее время в стадии проработки находятся новые стандарты, дополняющие его. К ним относятся:

^ IEEE Р 1284.1 "Standard for Information Technology for Transport Independent Printer/Scanner Interface (TIP/SI)". Этот стандарт разрабатывается для управления и обслуживания сканеров и принтеров на основе протокола NPAP (Network Printing Alliance Protocol).

n IEEE P 1284.2 "Standard for Test , Measurement and Conformance to IEEE Std . 1284" - стандарт для тестирования портов, кабелей и устройств на совместимость с IEEE 1284.

ai IEEE P12843 "Standaixl for Interface and Protocol Extensions to IEEE Std. 1284 Compliant Peripheral and Host Adapter Ports" - стандарт на драйверы и использование устройств прикладным программным обеспечением (ПО). Уже приняты спецификации BIOS для использования ЕРР драйверами DOS. Прорабатывается стандарт на разделяемое использование одного порта цепочкой устройств или группой устройств, подключаемых через мультиплексор.

^ IEEE P1284.4 "Standard for Data Delivery and Logical Channels for IEEE Std. 1284 Interfaces" направлен на реализацию пакетного протокола достоверной передачи данных через параллельный порт. Основой служит протокол MLC (Multiple Logical Channels) фирмы ewlett-Packard, однако совместимость с ним в окончательной версии стандарта не гарантируется.

6.1.8 Конфигурирование LPT-портов

Управление параллельным портом разделяется на два этапа
предварительное конфшурирование (Setup) аппаратных средств порта и текущее (оперативное) переключение режимов работы прикладным или системным ПО. Оперативное переключение возможно только в пределах режимов, разрешенных при онфигурировании. Этим обеспечивается возможность согласования аппаратуры с ПО и блокирования ложных переключении, вызванных некорректными действиями программы. Конфигурирование LPT-порта зависит от его исполнения. Порт, расположенный на плате расширения (мультикарте), устанавливаемой в слот ISA или ISA+VLB, конфигурируется джемперами на самой плате. Порт на системной плате конфигурируется через BIOS Setup.

6.2 Последовательные интерфейсы

Последовательный интерфейс для передачи данных использует одну сигнальную линию, по которой информационные биты передаются друг за другом последовательно. Отсюда - название интерфейса и порта. Английские термины – Serial Interface и Serial Port (иногда их неправильно переводят как
"серийные"). Последовательная передача позволяет сократить количество сигнальных линий и увеличить дальность связи. Характерной особенностью является применение неТТЛ сигналов. В ряде последовательных интерфейсов применяется гальваническая развязка внешних (обычно вход-
ных) сигналов от схемной земли устройства, что позволяет соединять устройства, находящиеся под разными потенциалами. Ниже будут рассмотрены интерфейсы RS-232C, RS- 422А, RS-423A, RS-485, токовая петля, MIDI, а также СОМ-порт.

6.2.1. Способы последовательной передачи

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


биты. В идеале стробы располагаются в середине битовых интервалов, что позволяет принимать данные и при незначительном рассогласовании скоростей приемника и передатчика. Очевидно, что при передаче 8 бит данных, одного контрольного и одного стоп-бита предельно допустимое рас-
согласование скоростей, при котором данные будут распознаны верно, не может превышать 5%. С учетом фазовых искажений и дискретности работы внутреннего счетчика синхронизации реально допустимо меньшее отклонение частот. Чем меньше коэффициент деления опорной частоты внутреннего генератора (чем выше частота передачи), тем больше погрешность привязки стробов к середине битового интервала, и требования к согласованности частот становятся более строгими. Чем выше частота передачи, тем больше влияние искажений фронтов на фазу принимаемого сигнала. Взаимодействие этих факторов приводит к повышению требований к согласованности частот приемника и передатчика с ростом частоты обмена. Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19 200, 38 400, 57 600 и 115 200 бит/с. Иногда вместо единицы измерения "бит/с" используют "бод" (baud), но при рассмотрении двоичных передаваемых сигналов это некорректно. В бодах принято измерять частоту изменения состояния линии, а при недвоичном способе кодирования (широко применяемом в современных модемах) в канале связи скорости передачи бит (бит/с) и изменения сигнала (бод) могут отличаться в несколько раз (подробнее см. в приложении А). Количество бит данных может составлять 5, 6, 7 или 8 (5- и 6-битные форматы распространены незначительно). Количество стоп-бит может быть 1, 1,5 или 2 ("полтора бита" означает только длительность стопового интервала). Асинхронный обмен в PC реализуется с помощью СОМ-порта с использованием протокола RS-232C. Синхронный режим передачи предполагает постоянную активность канала связи. Посылка начинается с синхробайта, за которым сразу же следует поток информационных бит. Если у передатчика нет данных для передачи, он заполняет паузу непрерывной посылкой байтов синхронизации. Очевидно, что при передаче больших массивов данных накладные расходы на синхронизацию в данном режиме будут ниже, чем в асинхронном. Однако в синхронном режиме необходима внешняя синхронизация приемника с передатчиком, поскольку даже малое отклонение частот приведет к искажению принимаемых данных. Внешняя синхронизация возможна либо с помощью отдельной линии для передачи сигнала синхронизации, либо с использованием самосинхронизирующего кодирования данных, при котором на стороне приемника из принятого сигнала могут быть выделены импульсы синхронизации. В любом случае синхронный режим требует дорогих линий связи или оконечного оборудования. Для PC существуют специальные платы – адаптеры SDLC (дорогие), поддерживающие синхронный режим обмена. Они используются в основном для связи с большими машинами (mainframes) IBM и мало распространены. Из синхронных адаптеров в настоящее время применяются адаптеры нтерфейса V.35.

На физическом уровне последовательный интерфейс имеет различные реализации, различающиеся способом передачи электрических сигналов. Существует ряд родственных международных стандартов: RS-232C, RS-423A, RS-422A и RS-485.


. Стандартный 25-контактный разъем последовательного порта

Несимметричные линии интерфейсов RS-232C и RS-423A
имеют самую низкую защищенность от синфазной помехи,
хотя дифференциальный вход приемника RS-423A несколько смягчает ситуацию. Лучшие параметры имеет двухточечный интерфейс RS-422A и его магистральный (шинный) аналог RS-485, работающие на симметричных линиях связи. В них для передачи каждого сигнала используются дифференциальные сигналы с отдельной (витой) парой проводов.

В перечисленных стандартах сигнал представляется потенциалом. Существуют последовательные интерфейсы, где информативен ток, протекающий по общей цепи передатчик-приемник - "токовая петля" и MIDI. Для связи на короткие расстояния приняты стандарты беспроводной инфракрасной связи. Наибольшее распространение в PC получил простейший из перечисленных - стандарт RS-232C, реализуемый СОМ-портами. В промышленной автоматике широко применяется RS-485, а также RS-422A, встречающийся и в некоторых принтерах. Существуют преобразователи сигналов для согласования этих родственных интерфейсов.

6.2.2 Интерфейс RS-232C

Интерфейс предназначен для подключения аппаратуры, передающей или принимающей данные {О ОД – оконечное оборудование данных или АПД - аппаратура передачи данных; DTE - Data Terminal Equipment), к оконечной аппаратуре каналов данных (АКД", DCE - Data Communication Equipment). В роли АПД может выступать компьютер, принтер, плоттер и другое периферийное оборудование. В роли АКД обычно выступает модем. Конечной целью подключения является соединение двух устройств АПД. Стандарт описывает управляющие сигналы интерфейса, пересылку данных, электрический интерфейс и типы разъемов. В стандарте предусмотрены асинхронный и синхронный режимы обмена, но СОМ-порты поддерживают только асинхронный режим. Функционально RS-232C эквивалентен
стандарту МККТТ V.24/ V.28 и стыку С2, но они имеют различные названия сигналов.

6.2.3 Электрический интерфейс

Стандарт RS-232C использует несимметричные передатчики и приемники - сигнал передается относительно общего провода - схемной земли (симметричные дифференциальные сигналы используются в других интерфейсах - например, RS-422). Интерфейс НЕ ОБЕСПЕЧИВАЕТ ГАЛЬВАНИ- ЧЕСКОЙ РАЗВЯЗКИ устройств. Логической единице
соответствует напряжение на входе приемника в диапазоне -12...-3 В. Для линий управляющих сигналов это состояние называется ON( "включено"), для линий последовательных данных - MARK. Логическому нулю соответствует диапазон +3...+12 В. Для линий управляющих сигналов состояние называется OFF ("выключено"), а для линий последовательных данных - SPACE. Диапазон -3...+3 В - зона нечувствительности, обусловливающая гистерезис приемника: состояние линии будет считаться измененным только после пересечения порога (рис. 2.5). Уровни сигналов на выходах передатчиков должны быть в диапазонах -12...-5 В и +5...+12 В для представления единицы и нуля соответственно. Разность потенциалов между схемными землями (SG) соединяемых устройств должна быть менее 2 В, при более высокой разности потенциалов возможно неверное восприятие игналов. Интерфейс предполагает наличие ЗАЩИТНОГО ЗАЗЕМЛЕНИЯ для соединяемых устройств, если они оба питаются от сети переменного тока и имеют сетевые фильтры.

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

6.2.4 СОМ-порт

Последовательный интерфейс СОМ-порт (Communication Port - коммуникационный порт) появился в первых моделях IBM PC. Он был реализован на микросхеме асинхронного приемопередатчика Intel 8250. Порт имел поддержку BIOS (/Л/Т 74/?), однако широко применялось (и применяется) взаимодействие с портом на уровне регистров. Поэтому во всех PC-совместимых компьютерах для последовательного интерфейса
применяют микросхемы приемопередатчиков, совместимые с i8250. В ряде отечественных PC-совместимых (почти) компьютеров для последовательного интерфейса применялась микросхема КР580ВВ51 - аналог 18251. Однако эта микросхема является универсальным синхронно-асинхронным приемопередатчиком (УСАПП или USART - Universal Asynchronous
Receiver-Transmitter). Совместимости с PC на уровне регистров СОМ-порта такие компьютеры не имеют. Хорошо, если у соответствующих компьютеров имеется "честный" драйвер B/OS /Л/Т 14h, а не заглушка, возвращающая состояние модема "всегда готов" и ничего не делающая. Совместимость на уровне регистров СОМ-порта считается необходимой. Многие разработчики коммуникационных пакетов предлагают работу и через B/OS /Л/Т 14h, однако на высоких скоростях это неэффективно. Говоря о СОМ-порте PC, по умолчанию будем подразумевать совместимость регистровой модели с i8250 и реализацию асинхронного интерфейса RS-232C.

6.2.5 Использование СОМ-портов

СОМ-порты чаще всего применяют для подключения
манипуляторов
(мышь, трекбол). В этом случае порт используется в режиме последовательного ввода; питание производится от интерфейса. Мышь с последовательным интерфейсом - Serial Mouse -может подключаться к любому исправному порту. Для подключения внешних модемов используется полный (9-проводный) кабель АПД-АКД, схема которого приведена на рис. 2.7. Этот же кабель используется для согласования разъемов (по количеству контактов); возможно применение переходников 9-25, предназначенных для мышей. Для работы коммуникационного ПО обычно требуется использование прерываний, но здесь есть свобода выбора номера (адреса) порта и линии прерывания. Если предполагается работа на скоростях 9600 бит/с и выше, то СОМ-порт должен быть реализован на микросхеме UART 16550A или совместимой. Возможности работы с использованием FIFO-буферов и обмена по каналам DMA зависят от коммуникационного ПО. Для связи двух компьютеров, удаленных друг от друга на небольшое расстояние, используют и непосредственное соединение их СОМ-портов нуль-модемным кабелем (рис. 2.8). Использование программ типа Norton Commander или Interink MS-DOS позволяет обмениваться файлами со ско-
ростью до 115,2 Кбит/с без применения аппаратных прерываний. Это же соединение может использоваться и сетевым пакетом Lantastic, предоставляющим более развитый сервис.

Подключение принтеров и плоттеров к СОМ-порту требует применения кабеля, соответствующего выбранному протоколу управления потоком: программному XON/XOFF или аппаратному RTS/CTS. Аппаратный протокол предпочтительнее. Прерывания при выводе средствами DOS (командами COPY или PRINT) не используются. СОМ-порт при наличии соответствующей программной поддержки позволяет превратить PC в терминал, эмулируя систему команд распространенных специализированных терминалов (VT-52, VT-100 и т. д.). Простейший терминал получается, если замкнуть друг на друга функции BIOS обслуживания СОМ-порта (INT 14h), телетайпного вывода (/Л/Т 10h) и клавиатурного ввода (INT 16h). Однако такой терминал будет работать лишь на малых скоростях обмена (если, конечно, его делать не на Pentium), поскольку функции BIOS хоть и универсальны, но не слишком быстры.

Интерфейс RS-232C широко распространен в различных ПУ и терминалах. СОМ-порт может использоваться и как двунаправленный интерфейс, у которого имеется 3 программно управляемые выходные линии и 4 программно-читаемые входные линии с двуполярными сигналами. Их использование определяется разработчиком. Существует, например, схема однобитного широтно-импульсного преобразователя, позволяющего записывать звуковой сигнал на диск PC, используя входную линию СОМ-порта. Воспроизведение этой записи через обычный динамик PC позволяет передать речь. В настоящее время, когда звуковая карта стала почти
обязательным устройством PC, это не впечатляет, но когда-то такое решение было интересным.

СОМ-порт используют для беспроводных коммуникаций с применением излучателей и приемников инфракрасного диапазона - IR (Infra Red) Connection. Этот интерфейс позволяет осуществлять связь между парой устройств, удаленных на расстояние, достигающее нескольких метров. Различают инфракрасные системы низкой (до 115,2 Кбит/с), средней (1,152 Мбит/с) и высокой (4 Мбит/с) скорости. Низкоскоростные системы служат для обмена короткими сообщениями, высокоскоростные - для обмена файлами между компьютерами, подключения к компьютерной сети,
вывода на принтер, проекционный аппарат и т. п. Ожидаются более высокие скорости обмена, которые позволят передавать "живое видео". В 1993 году создана ассоциация разработчиков систем инфракрасной передачи данных IrDA (Infrared Data Association), призванная обеспечить совместимость оборудования от различных производителей Инфракрасные излучатели не создают помех в радиочастотном диапазоне и обеспечивают конфиденциальность передачи. ИК-лучи не проходят через стены, поэтому зона приема ограничивается небольшим легко контролируемым пространством. Инфракрасная технология привлекательна
для связи портативных компьютеров со стационарными компьютерами или станциями. Инфракрасный интерфейс имеют некоторые модели принтеров.

6.2.6 Ресурсы и конфигурирование СОМ-портов

Компьютер может иметь до четырех последовательных портов СОМ 1-COM4 (для машин класса AT типично наличие двух портов). СОМ-порты имеют внешние разъемы-вилки DB25P или DB9P, выведенные на заднюю панель компьютера. СОМ-порты реализуются на микросхемах UART, совместимых с семейством 18250. Они занимают в пространстве ввода/вывода по 8 смежных 8-битных регистров и могут располагаться по стандартным базовым адресам. Порты вырабатывают аппаратные прерывания. Возможность разделяемого использования одной линии запроса несколькими портами (или ее разделения с другими устройствами) зависит от реализации аппаратного подключения и ПО. При использовании портов, установленных на шину ISA, разделяемые прерывания обычно не работают. Управление последовательным портом разделяется на два этапа - предварительное конфигурирование (Setup) аппаратных средств порта и текущее (оперативное) переключение режимов работы прикладным или системным ПО. Конфигурирование СОМ-порта зависит от его исполнения. Порт на плате расширения конфигурируется джамперами на самой плате. Порт на системной плате конфигурируется через BIOS Setup.

Контрольные вопросы

Контрольные вопросы

1Опишите назначение параллельных и последовательных интерфейсов.

2К чему относится понятие « Интерфейс Centronics »?

3Опишите «Традиционный LPT-порт».

4Опишите двунаправленный порт 1.

5Опишите порт с прямым доступом к памяти.

6Опишите особенности стандарта IEEE 1284.

7Какие уровни интерфейсной совместимости определяет IEEE 1284?

8Перечислите новые стандарты IEEE 1284.

9Опишите способы последовательной передачи сигналов.

10Опишите реализацию последовательного интерфейса на физическом уровне.

11Опишите назначение интерфейса RS-232C.

12Опишите особенности электрическогоинтерфейса RS-232C.

13Для чего используют СОМ-порты.

14Опишите использование СОМ-порта для беспроводных коммуникаций.

15Опишите конфигурирование СОМ-портов.

Конец формы

Параллельный порт (сокращенное название – LPT) появился на самом первом IBM PC. Иногда его называют Centronics – по имени фирмы-разработчика. Параллельный порт использовался раньше преимущественно для подключения принтеров.

Современные принтеры обычно подключаются к компьютеру через USB (см. главу 10), но многие модели имеют разъем для подключения LPT-кабеля (кабеля параллельного порта).

Научимся находить разъемы параллельного порта. На рис. 9.1 изображен LPT-разъем на принтере Lexmark E321 – довольно современная модель (принтер куплен в прошлом году). Под ним – USB-разъем с подключенным USB-кабелем. Это говорит о том, что в данный момент принтер подключен к компьютеру через USB.


Рис. 9.1. LPT-разъем на принтере

Если бы принтер подключался к параллельному порту компьютера, то нам бы понадобился кабель, изображенный на рис. 9.2.


Рис. 9.2. Кабель

На рис. 9.3 показана материнская плата. Самый большой разъем, изображенный на этом рисунке, – параллельный порт. Обычно он окрашен для подключения устройств к параллельному порту компьютера в розовый цвет. Как различить последовательный и параллельный порты, одинаковые по размерам? Разъем параллельного порта имеет тип «мама», а последовательного порта – «папа». Другими словами, даже если вы перепутаете цвета (последовательный порт обычно окрашивается в синий цвет), вы не сможете подключиться к последовательному порту с помощью LPT-кабеля.


Рис. 9.3. Параллельный и последовательный порты

К параллельному порту, кроме принтера, можно подключить:

Некоторые носители данных, например внешние приводы CD-ROM, магнитные накопители «повышенной» емкости (раньше повышенной емкостью считалось 120 Мб);

Стримеры – устройства хранения данных на магнитной ленте. Сейчас они практически не используются, а раньше часто использовались для создания резервных копий на серверах предприятий – ведь магнитная лента стоила копейки по сравнению с другими носителями информации и позволяла записывать большие на то время объемы информации (несколько гигабайтов);

Сканеры старых образцов (современные подключаются через USB).

Откровенно говоря, я сомневаюсь, что сегодня вам придется воспользоваться параллельным портом, но такая вероятность есть – может быть, у вас есть старенький принтер, который еще хорошо работает, но подключается только к LPT-порту. Тогда вы должны знать о режимах работы параллельного порта (режим работы порта обычно выбирается в BIOS):

SPP (Standard Parallel Port) – стандартный режим параллельного порта. В данном режиме разрешается только односторонняя передача данных от компьютера к периферийному устройству, подключенному к порту. Скорость передачи данных – 200 Кбит/с;

EPP (Enhanced Parallel Port) – расширенный режим. Разрешен двусторонний обмен данными. Скорость работы – до 2 Мбит/с. Разрешается подключение до 64 периферийных устройств (в цепочку);




Top