Основные понятия и термины
Последовательная передача данных означает, что данные передаются бит за битом по единственной линии связи. Для обеспечения синхронизации передающего и принимающего устройства группе битов данных обычно предшествует специальный стартовый бит, а после группы битов данных следуют бит проверки на четность и один или два стоповых бита. Иногда бит проверки на четность может отсутствовать. Сказанное иллюстрируется рисунком 5.1.
Рис. 5.1. Формат данных, передаваемых через COM-порт
Из рисунка видно, что исходное состояние линии последовательной передачи данных - уровень логической 1. Это состояние линии называют отмеченным - MARK. Когда начинается передача данных, уровень линии переходит в 0. Это состояние линии называют пустым - SPACE. Если линия находится в таком состоянии больше определенного времени, считается, что линия перешла в состояние разрыва связи - BREAK.
Стартовый бит START сигнализирует о начале передачи данных. Далее передаются биты данных, вначале младшие, затем старшие.
Если используется бит четности P, то передается и он. Бит четности имеет такое значение, чтобы в пакете битов общее количество единиц было четно или нечетно, в зависимости от установки регистров порта. Этот бит служит для обнаружения ошибок, которые могут возникнуть при передаче данных из-за помех на линии. Приемное устройство заново вычисляет четность данных и сравнивает результат с принятым битом четности. Если четность не совпала, то считается, что данные переданы с ошибкой. Естественно, такой алгоритм не дает стопроцентной гарантии обнаружения ошибок. Так, если при передаче данных изменилось четное число битов, то четность сохраняется и ошибка не будет обнаружена. Поэтому на практике применяют более сложные методы обнаружения ошибок.
В самом конце передаются один или два стоповых бита STOP, завершающих передачу байта. Затем до прихода следующего стартового бита линия снова переходит в состояние MARK.
Использование бита четности, стартовых и стоповых битов определяют формат передачи данных. Очевидно, что передатчик и приемник должны использовать один и тот же формат данных, иначе обмен будет невозможен.
Другая важная характеристика - скорость передачи данных. Скорость передачи данных обычно измеряется в битах за секунду (bps) или в бодах (по фамилии французского изобретателя телеграфного аппарата Emile Baudot - Э. Бодо). Боды определяют количество передаваемых битов за секунду. При этом учитываются и старт/стопные биты, а также бит четности.
В литературе иногда неправильно отождествляют термины бит за секунду и боды. Эти термины действительно равнозначны, когда говорят о передаче данных через COM-порт, но при передаче данных по телефонной линии через модем с высокой скоростью значения скорости передачи информации в битах за секунду и бодах могут различаться. Более подробно об этом можно прочитать в главе "Модемы и факс-модемы", разделе "Боды, биты за секунду и символы в секунду".
Иногда для определения скорости передачи информации используют другой термин - символы за секунду (cps). Он более реально показывает скорость передачи данных, так как не учитываются служебные биты, не несущие полезной информации.