Главная страница
Библиотека (скачать книги)
Скачать софт
Введение в программирование
Стандарты для C++
Уроки по C#
Уроки по Python
HTML
Веб-дизайн
Ассемблер в среде Windows
ActiveX
Javascript
Общее о Линукс
Линукс - подробно
Линукс - новое
Delphi
Паскаль для начинающих
Турбопаскаль
Новости
Партнеры
Наши предложения
Архив новостей





Подробности
Подавляющую часть времени линия находится в состоянии ожидания, т. е. имеет уровень логической единицы (отрицательный для RS-232). Потому выбор уровней стартового и стопового бита в RS-232 не был полностью произвольным — такая комбинация уровней важна со схемотехнической точки зрения. Во-первых, в качестве преобразователя уровня удобно использовать транзистор, который инвертирует сигнал, и тогда специально об инверсии уровней думать не приходится. Во-вторых, со стороны UART, где логика обратная, столовый бит должен иметь высокий уровень, что соответствует состоянию запертого транзистора с "открытым коллектором" (или с "открытым истоком"). Так как большую часть времени этот выходной транзистор оказывается выключен, то вывод не потребляет тока. Данным фактом мы воспользуемся далее для создания простейшего преобразователя уровней.
Сами скорости, как правило, выбираются из ряда 110, 150, 300, 600, 1200, 2400, 4800, 9600, (14 400), 19 200, (28 800), 38 400, (56 000), 57 600, 115 200 бит/с (в скобках указаны нестандартные, но часто употребляющиеся значения). Отметим, что стандарт RS-232C устанавливал максимальную скорость передачи 20 кбит/с, однако позднейшие версии не оговаривают величину скорости (устанавливая лишь, что передатчик должен "тянуть" емкость линии 2500 пФ, а входное сопротивление приемника должно быть не менее 3 кОм). Функции Windows позволяют в компьютере установить и более высокую скорость— 128 000, 256 000. МК AVR при достаточно высоких тактовых частотах позволяют устанавливать скорости передачи через UART до 2 Мбит/с. Следует учитывать, что не все схемы преобразования уровней RS-232 могут пропустить через себя сигналы с большой скоростью, поэтому, в частности, достичь максимальных скоростей передачи USB при эмуляции этого порта с помощью популярных микросхем-преобразователей FTDI (см. долее) не получается.

Обычно простой в схемотехническом отношении RS-232 предназначен для низких скоростей (2400-19 200 бит/с), когда основная задача заключается в обмене небольшим количеством данных в некритичных к вероятностям сбоя системах. Длина линии связи не должна превышать 15 м (при типовой емкости кабеля 150 пФ/м), но на практике эти величины могут быть больше. При невысоких скоростях передачи такая линия может надежно работать на расстоянии в десятки метров (автору этих строк удавалось без дополнительных ухищрений наладить обмен с компьютером на скорости 4800 бит/с по кабелю, правда, довольно толстому, длиной около полукилометра). В табл. 13.2 приведены ориентировочные эмпирические данные по протяженности линии связи для различных скоростей передачи. Эта информация ни в коем случае не может считаться официальной — слишком много влияющих факторов (уровень помех, толщина проводов, их взаимное расположение в кабеле, фактические уровни напряжения, выходное/входное сопротивление портов и т. п.).
Экранировка кабеля должна быть выполнена с/соблюдением определенных требований— если вы используете двухжильный кабель в экране-оплетке, в котором сигнальная "земля" интерфейса (GND) заведена на экран, то это неверное решение. В правильно построенной экранированной линии экран не должен быть одним из токоведущих проводов, т. е. контакты GND соединяются отдельным проводом в кабеле, а экран соединяется с GND только на одной стороне — либо там, где имеется более качественное настоящее заземление, либо:— в случае, если сигнальная "земля" GND является "плавающей" относительно "настоящей" земли — вообще только с настоящим заземлением, если оно есть.

Заметки на полях
Заметим, что потенциалы GND при соединении разных устройств должны выравниваться до соединения, иначе порт может сгореть. Если вы стыкуете два прибора, имеющие сетевое питание и при этом сигнальную "землю", соединенную с корпусом прибора, то эти устройства должны включаться в одну розетку с общим заземлением (т. е. вилка питания должна иметь провод заземления). Наиболее надежный способ уберечься от неприятностей — соединять разъемы в выключенном состоянии устройств, но это необязательно, если металлическое обрамление разъемов имеет соединение через экран с корпусами с обеих сторон, т. к. это обрамление входит в контакт раньше всего и потенциалы "земель" выравниваются. Поэтому для эксплуатации последовательных портов следует использовать "фирменные" кабели. При батарейном питании хотя бы одного из устройств (а также если сигнальная "земля" с одной стороны — "плавающая" и с корпусом не соединяется) соединение безопасно в любом случае.



     
 

Библиотека программиста. 2009.
Администратор: admin@programmer-lib.ru