Главная страница > Вопрос
Вопрос
Что такое стоп бит (стоп-бит) COM-порта?
Встретился с этим термином при программировании COM-порта. Объясните пожалуйста по-человечески на что влияет эта настройка и для чего она нужна
стоп бит | программирование | COM порт | COM | настройка 10.05.08 Автор: Гопарь
Ответы
1 из 4
нашел только вот что
Last modified: Sunday, September 01, 1996

In asynchronous communications, a bit that indicates that a byte has just been transmitted. Every byte of data is preceded by a start bit and followed by a stop bit.

и вот что:

In serial communications, where each bit of the message is transmitted in sequence, stop bits are extra "1" bits which follow the data and any parity bit. They mark the end of a unit of transmission (normally a byte or character).

For example, characters on an EIA-232 serial line may have one or two stop bits added. Some UARTs even allow for 1.5 stop bits but one is probably the most commonly used. A serial connection may be described as, for example, "8N1" which means eight data bits, no parity and one stop bit.

думаю перевести на русский можно :)
10.05.08 Автор: magic4x
2 из 4
Изветно, что байт состоит из 8-и бит. При передаче данных к 8-и добавляются ещё три бита: стартовый, стоповый и бит чётности. Стартовый и стоповый биты определяют начало и конец передачи байта. На физическом уровне (в диде электрических сигналов) они могут несколько отличаться по форме передачи. По этим меткам аппаратура синхронизирует сигнал и запрашивает повторную передачу, если обнаружено что информация исказилась. Например в промежутке между стартом-стопом обнаружено лишь восемь бит, значит один потерялся. И пр. Ну а девятый бит чётности служит как самая примитивная система контроля ошибок. Вопроса небыло, значит пояснять не буду.
10.05.08 Автор: Vitaly-afas
3 из 4
Да, нужно добавить, что на уровне обычного программиста эти дополнительные биты практически никогда не видны. Они создаются аппаратурой при передаче и обрабатываются и удаляются при приёме. Хотя, можно предположить случай, когда они будет эмулироваться и на верхних уровнях. Возможна и ситуация, когда эти дополнительные биты не используются. Однако, эти две последние ситуации врядли относятся к стандарту RS-232 т.е. СОМ-портам. Так что Вам скорее всего нужно знать об этих битах лишь теоретически, чтобы было. Или, если Вы разработчик аппаратуры.
11.05.08 Автор: Vitaly-afas
4 из 4
Говоря о передаче данных,  мы интересуемся  передачей  байтов данных от одного устройства к другому, например, от персонального компьютера к модему или к  последовательному  принтеру.  Если  мы имеем  восемь линий между двумя устройствами,  то мы можем назначить каждой линии бит и послать сразу один байт данных. Это будет параллельная  передача.  Таким образом работает параллельный порт персонального компьютера, кроме того, в дополнение к восьми линиям  данных имеются другие сигнальные линии,  оказывающие помощь в передаче данных.
            С другой стороны,  если мы имеем одну линию для передачи сигналов, то необходимо посылать каждый байт данных последовательно,  по одному биту.  Более того,  мы может посылать данные синхронно, таким образом,  что каждый байт посылается в  ранее  определенное время (скажем, один байт каждые х секунд), или асинхронно со скоростью, которую предварительно определять необязательно.
            Последовательная связь  дешевле,  чем  параллельная,  так как требует меньше линий передачи данных - минимум две для двусторонней связи. Кроме того режим асинхронной передачи оказывает значительно меньшее воздействие на аппаратуру ввиду того,  что не требуется  дополнительное  специальное  оборудование  для  поддержки синхронизации между передатчиком и приемником.
            Таким образом,  асинхронная  последовательная  связь является предпочтительным решением ввиду низкой стоимости и  простоты  используемых аппаратных средств. Конечно, в этом режиме передачи мы должны преобразовывать каждый байт данных в серию битов и  указывать приемнику начало и конец каждого байта.  
            Предположим, что мы умеем преобразовывать каждый байт в поток единиц и нулей,  то есть биты,  которые могут быть переданы через среду связи (например,  телефонную линию).  В самом деле, универсальный асинхронный приемопередатчик (UART), как мы увидим в следующем разделе,  выполняет точно такую же функцию.  Обычно,  в то время как линия находится в режиме ожидания, для демонстрации того, что линия в порядке, по ней передается единица, обозначая незанятость линии. С другой стороны, когда линия находится в состоянии   логического  нуля,  говорится,  что  она  стоит  в  режиме выдерживания интервалов. Таким образом, логические единица и ноль рассматриваются, соответственно, как MARK и SPACE.
            В асинхронной  связи изменение условия состояния линии с MAR на SPACE означает начало символа (смотри рисунок 1).  Это называется стартовым битом. За стартовым битом следует комбинация битов,  представляющая символ, и затем бит контроля четности. Наконец,   линия   переходит   в  состояние  ожидания  MARK,  которая представляет собой стоповый бит и означает конец текущего  символа.  Число битов, используемых для представления символа, называется длиной слова и обычно бывает равно семи  или  восьми.  Контрольный  бит используется для выполнения элементарной проверки на наличие ошибки.

                 <---------     Направление передачи
     Линия                                     Линия возвращается в
     свободна                                   свободное состояние
             A                                          
     B ────┐  ┌ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┬ ─ ┬───┬───────┐  ┌ ─ ─
           │  │ 0   1   2   3   4   5   6   7     │           │
     C ─ ─ └──┘ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ┴ ─ ─ ─ └──┘ ─ ─
              └──────── 7 или 8 бит данных ───┘                  
        Стартовый                       бит четности│    Начало другого
          бит                                       │      символа
                                             бит стоповый
                     Время ----->

             Рис.1. Представление в асинхронной  последовательной
                        связи формата одиночного символа
               A-длительность 1 бита; B-MARK или 1; C-SPACE или 0

            Как передатчик  (или  приемник) узнают о длительности каждого
        бита?  Действительно,  и передатчик,  и приемник должны знать его
        длительность или детектирование битов будет невозможно.  Длитель-
        ность каждого бита определяется генераторами  тактовых  импульсов
        приемника и передатчика. Отметим, однако, что генераторы в прием-
        нике и передатчике должны иметь одну и ту же частоту,  но не тре-
        буется, чтобы они были синхронизированы. Выбор частоты генератора
        зависит от скорости передачи в бодах,  которая означает число из-
        менений состояния линии каждую секунду. Номинально  тактовая час-
        тота "16-кратная скорость передачи в бодах" означает,  что  линия
        проверяется  достаточно часто для надежного распознавания старто-
        вого бита.
            Существует одно  обычное состояние линии,  которое иногда ис-
        пользуется для привлечения внимания приемника. Нормальным состоя-
        нием  линии  является  MARK (или 1) и начало символа определяется
        переходом SPACE (0). Если линия находится в состоянии SPACE в те-
        чение периода времени большем,  чем время,  которое она затратила
        бы на получение всех битов символа,  тогда мы говорим, что насту-
        пило  состояние  BREAK.  В  кодах ASCII отсутствует представление
        BREAK - это означает,  что линия  "умерла"  на  непродолжительный
        промежуток времени, который составляет BREAK.
13.05.08 Автор: Dmitry Fisenko
Это может быть интересно
Помогите найти песню по словам
Реабилитация после перелома лодыжки
До скольки лет растет стопа?
Сегодня дёрнул стоп-кран в электричке...
как лечить стопа Шарко при хпн
Войти
Просмотреть Вопросы и ответы в версии: для мобильных устройств | для ПК
©2014 Google - Политика конфиденциальности - Справка