Что такое стоповые биты в параметрах порта

Что такое стоповые биты в параметрах порта

RPI.su — самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

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

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected] . Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.

Посетителей: 13150 | Просмотров: 15611 (сегодня 0) Шрифт:

Если эти синхроимпульсы передаются от одного устройства другому, то такая передача называется синхронной. Асинхронной же считается такая передача, когда с фиксированной скоростью пересылается только информация, а приемник и передатчик синхронизируют процесс обмена данными самостоятельно. Наш СОМ-порт является асинхронным. Хочется также заметить, что разница между импульсами, по которым синхронизируется передача, и импульсами, синхронизирующими прием, не должна превышать 5% от их частоты. Так что едва ли не основной проблемой для асинхронных интерфейсов является одновременность запуска синхронизирующих генераторов. Для СОМ-порта стандартными являются следующие скорости: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 бит/с. Максимальная длина кабеля-соединителя — 15 метров. Есть специальные кабели, которые позволяют увеличить длину соединения до 150 метров. А если использовать устройства, называемые «репитерами» , то расстояние можно еще дополнительно увеличить. Вы спросите, зачем модему кабель в 150 метров? Вполне закономерный вопрос, однако такие расстояния используются в тех случаях, когда к ПК необходимо подключить какое-то специализированное технологическое устройство. Как, например, счетчик электрической энергии находится где-то в распределительном щите, а компьютер — в бухгалтерии.

Компьютерный СОМ-порт работает по стандарту RS-232C , который определяет электрические уровни сигналов и протокол обмена. Порт содержит две линии для обмена информацией (прием и передача), и 9 линий для управления обменом. Если для управления обменом задействовать эти линии, то обмен будет называться «аппаратным» (протокол RTS/CTS ). Однако обмен информацией можно организовать, используя только линии приема и передачи, тогда он будет называться «программным» (протокол XON/XOFF ). В таком режиме посылается символ, сигнализирующий о начале передачи, называется он XON, окончание передачи сигнализируется символом XOFF.

Теперь разберемся, как из цепочки передаваемых бит выделяются байты. Начало байта сигнализирует старт-бит , который имеет всегда определенное значение — 0, окончание — стоп-бит .

Аппаратной основой СОМ-порта является микросхема UART ( Universal Asynchronous Receiver/Transmitter — универсальный асинхронный приемопередатчик), которая с момента своего появления прошла длительный процесс эволюции ( таблица 1 ).

Читайте также:  Булыжники в ландшафтном дизайне фото

Если вы загляните в окно настройки последовательного порта, то заметите, что список скоростей явно не ограничивается 115.2 Кбит/с. Это связано с тем, что кроме стандартных, можно использовать еще и так называемые высокоскоростные СОМ-порты — Enhanced Serial Ports ( ESP ) и Super High Speed Serial Ports . Это варианты, базирующиеся на микросхемах 16550AF , 16650 , 16750 . Они обеспечивают обмен на скорости до 921.6 Кбит/с. В принципе, все высокоскоростные модемы xDSL содержат в своем составе такую микросхему, которая обеспечивает связь на 230–460 Кбит/с.

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

Ну, со скоростью , думаю, все понятно — в этом пункте выбираем скорость обмена между устройством и ПК. В принципе можно выбрать ту скорость, которая вам больше нравится, хотя я полагаю, если у вас модем на 56К, скорость работы порта устанавливать в 19200 бит/с вы не будете :-).

Биты данных — сколько бит передавать за один раз (между старт-битом и стоп-битом).

Четность — выбор способа контроля четности. Кто не знает, контроль четности — способ проверки принятого числа на ошибочность. При передаче к числу добавляется еще один бит, дополняющий количество единиц в числе до четного или нечетного (это уже как выбрано в режиме передачи). Этот бит становится младшим разрядом передаваемого числа и принимает значение 1, если у нас нечетное число единиц, и 0, если четное. При проверке на четность, в случае если мы приняли нечетное число единиц (при проверке на нечетность — наоборот), порт передает устройству информацию об ошибке и просит повторить передачу.

Стоповые биты — количество стоп-бит, необходимых для правильного распознавания конца байта.

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

И наконец, в пункте Дополнительно можно выбрать объем буферов FIFO либо отключить их вообще (что не рекомендуется).

Рассказав про эти настройки, дам вам один совет. Если у вас все нормально работает, не меняйте настройки, стоящие по умолчанию! Менять их необходимо тогда, когда этого требует устройство (о чем, наверняка, будет подробно сказано в инструкции к нему).

Теперь о «железном» конфигурировании СОМ-портов. Данные сведения могут очень пригодиться тем, кто купил внутренний WIN-модем. Как известно, при конфигурировании устройства необходимо указать ресурсы, которые ему необходимы (адрес ввода-вывода, номер прерывания, канал DMA). Система Plug&Play должна самостоятельно выделить эти ресурсы, когда вы установили устройство в систему. Но ничто не идеально, так что если вы установили одно устройство, а оно не работает, к тому же, перестало работать и другое, знайте — ошиблась технология Plug&Play. И вам необходимо указывать ресурсы самостоятельно.

Читайте также:  Как красиво обвязать тапочки крючком

Итак, для коммуникационных портов стандартны перечисленные ниже ресурсы. Диапазон ввода-вывода — 3F8-3FFh для COM1, 2F8-2FFh — для COM2, 3E8-3Efh — для COM3, 2E8-2Efh — для COM4. С прерываниями немного сложнее — для СОМ1 (3) используется IRQ4, для СОМ2 (4) — IRQ3. Теперь, приведя эти цифры, расскажу о подводных камнях, подстерегающих покупателей WIN-модемов. Последние работают через СОМ3 или СОМ4, и при установке часто могут нахомутать с ресурсами, ведь Plug&Play видит их как PCI карту, а не порт. Так что если что-то не работает, разберитесь с использованием ресурсов.

Многие, наверное, знают, что два ПК можно соединить не с помощью сетевой карты, а воспользовавшись нуль-модемным кабелем. Причем, за нуль-модемным кабелем не обязательно идти в магазин. Его на скорую руку можно сварганить, имея три куска провода и соединив линии: прием-передача и землю (в этом случае используется программный протокол управления потоком данных) ( рис. 4а ). Ну а для полноты картины приведу и распайку полного нуль-модемного кабеля (для аппаратного протокола управления потоком данных) ( рис. 4б ).

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

Если вы — ярый программист-железячник и захотели самостоятельно написать программу для работы с СОМ-портом, то для получения необходимой справочной информации о программировании этого чуда техники я советую зайти на http://www.codenet.ru/progr/other/comport.php. Там есть все, связанное с конфигурированием порта на уровне регистров.

Теперь немного расскажу вам о тестировании порта. Для его проверки используют специальные разъемы-заглушки, с которыми умеет работать диагностическое программное обеспечение. Принцип проверки состоит в том, что сигналы с выходных линий подаются на линии, предназначенные для приема. По большому счету, такой разъем можно изготовить самостоятельно. Приведу распайку для тестирования с помощью программы Norton Diagnostics :

для 9-контактного разъема:

для 25-контактного разъема:

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

Сайт СТУДОПЕДИЯ проводит ОПРОС! Прими участие 🙂 — нам важно ваше мнение.

Открыв окно свойств порта и выбрав вкладку Настройка, увидим множество опций (рис. 4).

Рис.4 – Окно настройки com-порта

Скорость — в этом пункте выбираем скорость обмена между устройством и ПК.

Читайте также:  Томаты малиновое чудо отзывы фото

Биты данных — сколько бит передавать за один раз (между старт-битом и стоп-битом).

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

Стоповые биты — количество стоп-бит, необходимых для правильного распознавания конца байта.

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

В пункте Дополнительно можно выбрать объем буферов FIFO либо отключить их вообще (что не рекомендуется).

Совет. Если у вас все нормально работает, не меняйте настройки, стоящие по умолчанию! Менять их необходимо тогда, когда этого требует устройство (о чем, наверняка, будет подробно сказано в инструкции к нему).

Таблица 2 – Ресурсы com-портов

Номер COM порта Используемые адреса Номер IRQ
COM1 3F8h — 3FFh IRQ4
COM2 2F8h — 2FFh IRQ3
COM3 3E8h — 3EFh IRQ4
COM4 2E8h — 2EFh IRQ3

2.2 Работа с сom-портом из-под Win32

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

Любая работа с портом начинается с его открытия. Для этого используется файловая функция WinAPI.

C последовательными портами в Win32 работают как с файлами. Причем используют только функции API Win32.

Начинается работа с открытия порта как файла, причем для асинхронного режима ввода-вывода возможен только один вариант:

HANDLE handle = CreateFile("COM1", GENERIC_READ | GENERIC_WRITE, NULL, NULL, OPEN_EXISTING, FILE_FLAG_OVERLAPPED, NULL);

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

При успешном открытии порта функция возвращает дескриптор handle, с которым и будем работать в дальнейшем. При неудачном открытии порта функция вернет значение INVALID_HANDLE_VALUE.

| следующая лекция ==>
Последовательные Com-порты | Настройка порта

Дата добавления: 2013-12-14 ; Просмотров: 3571 ; Нарушение авторских прав?

Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет

Ссылка на основную публикацию
Adblock detector