Пользователь
0,0
рейтинг
5 декабря 2010 в 17:05

UART и с чем его едят

После Vogue истерии появилось множество вопросов, как подключить плату к компьютеру. И многие люди даже не понимают, что же такое UART. И я решил рассказать здесь какой это мощный инструмент.

image
Роутер превращается в компьютер, если к нему по UART подключить клавиатуру и дисплей

От телеграфа к COM-порту


Протокол UART (Universal asynchronous receiver/transmitter) или, по-русски, УАПП (универсальный асинхронный приемопередатчик) — старейший и самый распространенный на сегодняшний день физический протокол передачи данных. Наиболее известен из семейства UART протокол RS-232 (в народе – COM-порт, тот самый который стоит у тебя в компе). Это, наверное, самый древний компьютерный интерфейс. Он дожил до наших дней и не потерял своей актуальности.

Надо сказать, что изначально интерфейс УАПП появился в США как средство для передачи телеграфных сообщений, и рабочих бит там было пять (как в азбуке Морзе). Для передачи использовались механические устройства. Потом появились компьютеры, и коды ASCII, которые потребовали семь бит. В начале 60-х на смену пришла всем известная 8-битная таблица ASCII, и тогда формат передачи стал занимать полноценный байт, плюс управляющие три бита.


В 1971 году, когда уже начался бум микросхем, Гордон Белл для компьютеров PDP фирмы Western Digital сделал микросхему UART WD1402A. Примерно в начале 80-х фирмой National Semiconductor был создан чип 8520. В 90-е был придуман буфер к интерфейсу, что позволило передавать данные на более высоких скоростях. Этот интерфейс, не претерпев практически никаких изменений, дошел и до наших дней

Физика интерфейса


Чтобы понять, что роднит и отличает разные UART-интерфейсы, разберем принцип работы самого популярного и любимого нами протокола RS-232. Дотошно расписывать все тонкости его работы я не буду. Об этом написан ни один десяток мегабайт статей, и если ты умеешь пользоваться Гуглом, то без проблем найдешь всю необходимую информацию. Но основы я расскажу, благо с ними можно уже круто всем рулить, а всякие фишки используются очень редко.

Основные рабочие линии у нас – RXD и TXD, или просто RX и TX. Передающая линия – TXD (Transmitted Data), а порт RXD (Received Data) – принимающая.
Эти линии СОМ-порта задействованы при передаче без аппаратного управления потоком данных. При аппаратном потоке задействованы еще дополнительные интерфейсные линии (DTS, RTS и пр.). Выход передатчика TX соединен с входом приемника RX и наоборот. Электрический принцип работы RS-232 отличается от стандартной 5-вольтовой TTL логики. В этом протоколе логический нуль лежит от +3 до +12 вольт, а единица от -3 до -12, соответственно. Промежуток от -3 до +3 вольт считается зоной неопределенности. Учти, что все напряжения указаны относительно корпуса компьютера, или земли. Теперь, я думаю, ты понимаешь, зачем в компьютерном блоке питания существует сразу два напряжения: -12 и +12 вольт. Они были введены специально для работы СОМ-порта.

image
Приём сигнала по RS-232 (взято из книги М.Гук «Аппаратные интерфейсы ПК»)

Такая большая амплитуда рабочих напряжений, целых 24 вольта, нужна в первую очередь для помехоустойчивости линий связи. По стандарту, длина кабеля, по которому у нас бегают данные, может быть 15 м. Хотя на практике люди умудрялись заставлять его работать даже на 25 м. Электрические параметры RS-232 – это главная характеристика, которая отличает его от других протоколов семейства UART.

Следующие характеристики – формат посылки и скорость передачи данных – полностью применимы ко всем видам UART и обеспечивают их совместимость через несложные схемы сопряжения.

Стандартная посылка занимает 10 бит. Но правило это распространяется только на стандартные настройки СОМ-порта. В принципе, его можно перенастроить так, чтобы он даже интерфейс One-Wire понимал. В режиме простоя, когда по линии ничего не передается, она находится в состоянии логической единицы, или -12 вольт. Начало передачи обозначают передачей стартового бита, который всегда равен нулю. Затем идет передача восьми бит данных. Завершает посылку бит четности и стоповый бит. Бит четности осуществляет проверку переданных данных. Стартовый бит говорит нам, что пересылка данных завершена. Надо отметить, что STOP-бит может занимать 1, 1.5, и 2 бита. Не стоит думать, что это дробные биты, это число говорит только о его длительности. Стоповый бит, как и стартовый, равен нулю.

image
Сигнал UART на экране осциллографа. Виден старт бит, данные и стоповый бит. Спасибо DIHALTза картинку

Скорость работы


Даже если тебе раньше никогда не приходилось работать с СОМ-портом, по крайней мере, в модеме ты должен знать номинальные скорости работы: 9600, 28800, 33600, 56000 и т.п. Сколько бит в секунду убегает из нашего порта? Вот смотри, допустим, скорость у нас 9600 бит в секунду. Это означает, что передача одного бита будет занимать 1/9600 секунды, а пересылка байта – 11/9600. И такая скорость для байта верна только в случае, если стоп-бит будет занимать один бит. В случае, если он занимает два стоп-бита, то передача будет 12/9600. Это связано с тем, что вместе с битами данных передаются еще специальные биты: старт, стоп и бит четности. Линейка скоростей СОМ-порта стандартизирована. Как правило, все устройства работают на трех стандартных скоростях: 9600, 19200, 115200. Но возможны другие варианты, даже использование нестандартных скоростей или скорости, меняющейся во времени, – с этим я сталкивался при разборе полетов очередного устройства.

Такой разный протокол


Видов UART существует великое множество. Я не буду перечислять их наименования, ибо, если ты владеешь английским, то сумеешь и сам нагуглить. Но самые основные не отметить нельзя! Напомню, что главное отличие интерфейсов состоит в среде и способе передаче данных. Данные могут передаваться даже по оптоволокну.

Второй по распространению интерфейс после RS-232 – это RS-485. Он является промышленным стандартом, и передача в нем осуществляется по витой паре, что дает ему неплохую помехоустойчивость и повышенную скорость передачи до 4 мегабит в секунду. Длина провода тут может достигать 1 км. Как правило, он используется на заводах для управления разными станками.

Надо сказать, что IRDA, или инфракрасная связь, которая встроена в большинство телефонов и КПК, тоже по сути является UARTом. Только данные передаются не по проводам, а с помощью инфракрасного излучения.

В SMART-картах (SIM, спутниковое телевиденье, банковские карты) – тех самых устройствах, которые мечтает похачить каждый уважающий себя фрикер – тоже используется наш любимый UART. Правда, там полудуплексная передача данных, и логика работы может быть 1,8/3,3 и 5 вольт. Выглядит так, будто RX запаян с TX на одном конце и на другом – в результате, один передает, другой в этот момент слушает, и наоборот. Это регламентировано стандартом смарт-карт. Так мы точно знаем, сколько байт пошлем, и сколько нам ответит карточка. Тема достойна отдельной статьи. В общем, запомни, что UART есть практически везде.

image
Устройства, которые имеют на своём борту UART, по часовой стрелке: мышка, ридер-эмулятор SMART-карт, КПК Palm m105, отладочная плата для микроконтроллера ATtiny2313 (или AT89C2051), модем.

Сопряжение интерфейсов


Я уже глаза намозолил разными интерфейсами, но как с ними работать-то? Ну, с обычным RS-232 понятно, а, допустим, с 5-вольтовым юартом как быть? Все просто: существуют различные готовые микросхемы-преобразователи. Как правило, в маркировке они содержат цифры «232». Увидел в схеме микруху с этими цифирями – будь уверен: скорее всего, это преобразователь. Через такие микросхемы с небольшим обвязом и сопрягаются все интерфейсы UART. Я не буду рассказывать о промышленных интерфейсах, а скажу о тех преобразователях, которые интересуют нас в первую очередь.

Самый известный преобразователь интерфейса – это микросхема, разработанная фирмой MAXIM, которая и получила от нее часть своего названия (max232). Для ее работы требуется четыре конденсатора от 0,1 микрофарады до 4 микрофарад и питание 5 вольт. Удивительно, что эта микросхема из 5 вольт генерирует отрицательное напряжение, чтобы сопрягать 5-вольтовый UART с RS-232.

Существуют микросхемы сопряжения USB с UART, например, микросхема ft232rl. В Ubuntu для этой микросхемы уже встроены драйвера. Для Windows их придется качать с официального сайта. После установки драйверов в системе появится виртуальный СОМ-порт, и с ним уже можно рулить различными устройствами. Советую не принимать эти микросхемы, как единственно возможные. Найдется громадное количество более дешевых и интересных аналогов, посему наседай на Гугл и поймешь, что мир UARTа – это круто.

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

Что нам это дает?


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

Апдейтим роутер


Намедни я намутил себе WiFi-роутер WL-520GU и, прочитав статью Step’a «Level-up для точки доступа» (][ #106), успешно установил туда Linux. Но у меня возникли проблемы с монтированием swap-раздела жесткого диска. Так появилась необходимость посмотреть лог загрузки точки доступа – подмонтировался раздел или нет – причем, как говорится, на лету, чтобы сразу вносить необходимые изменения. Шестым чувством я подозревал, что в моем роутере просто обязан быть UART. Я взял в руки крестовую отвертку и начал его разбирать. Дело тривиальное, но с заковыркой – потайные винтики находятся под резиновыми ножками (если решишь повторить, помни, что при разборе ты лишаешься гарантии). Моему взору предстала достаточно скучная плата, где все «chip-in-one»: один центральный процессор, в который включено все, внешняя оператива, флеша, преобразователь питания и рядок разъемов с кнопками. Но на плате была не распаянная контактная площадка, точнее сказать, отверстия под иголки. Их было четыре штуки. Вот он UART, это очевидно! По плате даже без мультиметра видно, что крайние иголки – это +3,3 вольта и второй – земля. Средние контакты, соответственно, RX и TX. Какой из них что, легко устанавливается методом научного тыка (спалить интерфейс очень проблематично).
Сразу хочу отметить, что интерфейс UART в каждом роутере выглядит по-разному. В большинстве случаев, это не распаянные отверстия на плате. Правда, в одном роутере от ASUS я даже встретил полностью подписанный разъем.

Собираем преобразователь


Чтобы подключить роутер к компу, необходимо сопрячь интерфейсы RS-232 с UARTом роутера. В принципе, можно подключить к USB, используя указанную выше микросхему FT232RL, – что я и сделал при первой проверке роутера. Но эта микросхема – в достаточно сложном для пайки корпусе, посему мы поговорим о более простых решениях. А именно – микросхеме MAX232. Если ты собираешься питаться от роутера, то там, скорее всего, будет 3,3 вольта, поэтому лучше использовать MAX3232, которая обычно стоит в КПК (схему распайки нетрудно найти в инете). Но в моем роутере присутствовало питание +5 вольт на входе, а указанных микросхем у меня великое множество, и я не стал заморачиваться. Для сборки нам потребуются конденсаторы 0,1 мкФ (4 штуки) и сама микросхема. Запаиваем все по традиционной схеме, и начинаем эксперименты.

image
Исходники для сборки

На выход я сразу повесил 9-пиновый разъем типа «папа», чтобы можно было легко подключить нуль-модемный кабель. Если ты помнишь, во времена DOSа такими кабелями делали сетку из двух компов и резались в «Дюкнюкем». Провод для наших целей собрать несложно. Правда, получится не полный нуль-модем и через него особо не поиграешь, но рулить точкой доступа будет самое то! Тебе понадобятся два 9-пиновых разъема типа «мама», корпуса к ним и провод, например, от старой мышки или клавы (главное, чтобы в нем было три провода). Сначала соединяем земли ¬- это пятый контакт разъемов; просто берем любой провод и с обоих сторон припаиваем к 5-му контакту. А вот с RX и TX надо поступить хитрее. С одного конца провода запаиваем на 3-й контакт, а с другого – на 2-й. Аналогично с третьим проводом, только с одного конца запаиваем на 2-й контакт, с другого – на 3-й. Суть в том, что TX должен передавать в RX. Прячем запаянные разъемы в корпус — и готов нуль-модемный кабель!

image
Распаянные иголки на плате роутера.

Для удобства монтажа в материнку роутера я впаял штырьковый разъем, а в монтажку с MAX232 – обратный разъем и вставил платку, как в слот. RX и TX роутера подбираются экспериментально.

image
Собраная плата

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

image
Прожигаем отверстие для вывода проводов

image
Распаянный СОМ-порт

image
Всё в сборе. Обратите внимание, что красный провод питания идёт к разъёму адаптера роутера. Узелок внутри сделан, для того чтобы рывком на оторвать припаянные провода.

Настройка терминала


Нам нужно настроить терминальную программу. В Винде все достаточно просто: запускаем Hyper Terminal, отключаем программную и аппаратную проверку данных, выставляем скорость 115200 и один стоповый бит. А вот в Линухе дело обстоит чуть хитрее. У меня Ubuntu, и рассказывать буду про нее. Для начала разберись, как в твоей сборке именуется СОМ-порт. В моем случае СОМ1 был ttyS0 (если использовать к примеру микросхему FT232, то он будет именоваться ttyUSB0). Для работы с ним я использовал софтинку minicom.

Запускай ее с параметрами: minicom -l -8 -c on -s. Далее выбирай «Настройки последовательного порта»:
Последовательный порт /dev/ttyS0

* Скорость/четность/биты 115200 8N1
* Аппаратное управление потоком — нет
* Программное управление потоком — нет

Сохраняем настройки. Софтина попробует проинициализировать модем — не обращай внимания. Чтобы вызвать меню, нажми <ctrl-a z>. Там можно менять настройки, например: включить/выключить эхо — Е.
Настройка

Я не рекомендую подключать микросхему преобразователя к роутеру, дабы проверить ее функционал. Допускается только брать с него питание. Проверка проходит очень просто — необходимо перемкнуть RX с TX. Сначала перемыкаешь в СОМ-порте 2-й и 3-й контакт — проверяешь настройки терминалки. Пишешь что-то на клаве: если символы возвращаются, значит, все ОК. Также проверяешь кабель, те же контакты. Потом подключаешь микросхему, и уже у нее на выходе ставишь перемычку. Я заостряю на этом внимание, потому что, например, у меня возникли проблемы, и ничего не работало, пока я все не проверил и не нашел ошибку.

После всех настроек можешь смело цеплять к роутеру и искать RX-TX на роутере, периодически выдергивая из него питание. Если все сделано правильно, то при подаче питания ты увидишь лог загрузки роутера. Принимай поздравления, теперь у тебя полный аппаратный рут, так, будто ты сидишь за монитором с клавой роутера.

image
Лог загрузки роутера в программе minicom

Автономное плаванье


Согласись, делать через терминальную программу то же самое, что удобнее сделать через SSH – не айс. Мне хотелось превратить роутер в автономный Linux-компьютер, со своей хитрой архитектурой. Для этого нужно, чтобы данные с клавиатуры передавались по UART, и по нему же выводились на монитор. Паять и разрабатывать устройство было лениво. Тогда-то и пришла идея заюзать для этих целей пылящийся без дела КПК. По сути, наладонник будет исполнять роль контроллера клавиатуры и дисплея, ну и служить сопряжением интерфейсов.

Сначала я попробовал древнейший Palm m100. Но, видимо, у него очень маленькая буферная память, и от количества данных, которые идут с роутера, ему становилось плохо. Я взял другой — промышленный КПК, с нормальным СОМ-портом и терминалкой. Подключил, вставил в док и, в результате, получил небольшой линукс-компьютер. В принципе, вместо дорогущего промышленного КПК подойдет большинство наладонников, работающих под операционкой WinCE, главное – найти подходящий терминальный софт.

image
Линукс компьютер :)



Итоги


Итак, я показал небольшой пример использования UART. Если ты вкуришь в этот протокол, то поверь, станешь просто повелителем различных железок. Есть он практически везде, и через него можно сопрягать, казалось бы, совершенно разные вещи. К примеру, к тому же роутеру при небольших настройках подключается мобильный телефон по юарту, – и раздает с него интернет. В общем, применений куча. Не бойся экспериментировать, самообразовываться и реализовать свои идеи.

Этот пост является отредактированной для хабра версией моей статьи в Хакере № 05/09 «Главный инструмент фрикера».

Литература:
1. Михаил Гук «Аппаратные интерфейсы ПК» — просто студенческая библия по персоналке.
2. en.wikipedia.org/wiki/RS-232
3. easyelectronics.ru/tag/rs232
Сергей @dlinyj
карма
441,2
рейтинг 0,0
Пользователь
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое

Комментарии (90)

  • 0
    Почему я поступая в институт выбрал другую специализацию…
    Сейчас бы изучал и собирал разные прикольные штуки.
    • +12
      Ты не одинок. Я закончил институт по специальности, далёкой от электроники. Но это не мешало мне ей заниматься и устроится потом на работу в этой сфере.
      • 0
        Не могу сказать, что учиться мне уже поздно =))
        Но основной профиль деятельности уже сейчас занял слишком большую часть жизни… + всякие Вилинуксы… и прочие не ИТ хобби…
        • +4
          Вопрос желания :)
          • +1
            В этом я с тобой согласен.
    • +2
      Вероятно, что не собирал бы. Кто хочет, тот и без специальности собирает.
    • 0
      А вам и сейчас никто не мешает. Интернет есть, всё есть.
  • +1
    Это старая статья из Ксакепа, она когдато подкрепила мой интерес к електронике, когда я занимался программированием и был вовлечен математикой будучи еще в школе и только тянулся к железкам. Это все и повлияло на мой выбор специальности.
    • +2
      Ну не очень старая, ей полтора года. Я рад, что мои статьи как-то влияют на судьбы людей. Хакер тоже сильно изменил мою судьбу :)
      • 0
        Ну не только ты, я тогда искал, раньше даже, два с половиной года тому, летом, всевозможные книги по схемотехнике. С журналом знаком был гораздо раньше, и в один прекрасный день я заметил статьи, которые носили довольно простой характер, гораздо легче воспринимались чем мудренные книги. Кстати, а почему сейчас нет этой рубрики?
        • 0
          Потому, что кроме меня её некому вести, а у меня нет времени к сожалению этим заниматься. Жаль конечно.
          • 0
            :), кстати по поводу литературы, посоветуй что нибудь, кстати когда у тебя появился этот кпк?
            • 0
              Лучше советских книжек 50-60-х годов ничего не видел. А так блог DIHALT easyelectronics.ru/ хабр и просто разные форумы. Даташиты, мануалы, апликейшен ноутс. В общем дорога сама подскажет куда идти. Главное не боятся.
              • 0
                Тоесть дорогу я уже прошел? Я вот сейчас ковыряю кпк hp h1940 думаю, может чтото опубликую. Хотя тоже сейчас практически нет времени((
                • +1
                  Я очень много знаний обрёл в своём созданном сообществе community.livejournal.com/ru_radio_electr/, тогда хабра не было и надо было блогеров где-то объединять. Вот и создал его, раскрутил и много знаний там обрёл. Главное не боятся писать и ждать критики, учить и пусть тебя поправят. Не боятся спрашивать, главное не доставать распросами

                  В данном случае комментарий мой предназначен не только тебе, а всем начинающим :)
                  • 0
                    Хмм, ну спасибо, что ж, стоит мне опубликовать сводку на процессор и еще некоторые микрухи?
                    • +1
                      решай сам, я не знаю :)
                      • 0
                        Как будет достаточно кармы, опубликую, заценишь)
                        • +1
                          кинул кармы, можешь публиковать :)
                          • 0
                            Корректирую, навожу вид, проверяю ошибки, ночью или завтра будет)
                  • 0


                    Не удержалься, я тоже много чего в нем обрел, давно слежу. Вот он и в ридере у меня есть.
            • +1
              На мой взгляд, очень хороший ресурс для начинающих электронщиков — easyelectronics.ru/. Там, как раз — простым языком о сложных вещах, и статей масса практически на все основные темы.
              • –1
                Да ну, он есть у меня в гугл ридере, но я уже давно ничего познавательного оттудова не беру для себя. Я так спрашиваю, чтото поуникальней, может я чтото пропустил?!
                • 0
                  Некислый заряд знаний и адских дядек живёт тут: forum.ixbt.com/?id=48 Давненько туда не лазал, но там можно решить любой вопрос
                  • 0
                    Тоже видел и читал, но мне чегото не хватает, я вот думаю давно чтото писать, публиковать, боюсь… Мне хочеться чегото нового:) Абсолютно нового.
                    • +2
                      Абсолютно новое — отслеживать новые технологии и свежие чипы на сайтах производителя, читать даташиты и аппноты из первоисточника, как писал dlynij. Все остальное — это в любом случае переработанный вариант уже существующей инфы.
                      • 0
                        Ну я хотел сказать чтото новое из уже давным давно извесного. Тоесть своеобразный Хардкор, тоесть освоение чегото нового на давно освоенном, Допустим Анроид на Старом Кютеке, Линукс на Айфоне, РокБокс на АйПоде, Кастомные прошивки для различных девайсов.
                        • +2
                          нет ничего новее собственного опыта ;)
                          • 0
                            Гдето так, мда, нужно начинать делать собственные ошибки, а не смотреть как их делают другие и повторять). Вот и сегодня чтото новое для себя нашел.
  • 0
    > В этом протоколе логический нуль лежит от +3 до +12 вольт, а единица от -3 до -12, соответственно. Промежуток от -3 до +3 вольт считается зоной неопределенности

    Троичная логика напрашивается
    • 0
      Да таких сигналов можно придумать сколько угодно. Главное ведь это — устройство логических элементов, обеспечивающих устойчивую работу с тремя состояниями входного сигнала!
  • 0
    Блин, только сегодня хачили DIR-320. Тоже кабель не помешал бы. Собирались транзисторную версию делать, да руки не дошли :(
    • 0
      Можно шнурок от мобилы юзать
  • 0
    Алсо, кпк называется Psion Workabout. В продаже таких уже нет, не знаете случайно где достать подобный?

    • +1
      На аукционах, стоит не меньше 1000$ даже БУшный.
      • 0
        tinyurl.com/338fmbl 200 фунтов за б.у.

        а если у вас валяется — продайте :) можно в личку. мне в хозяйстве сгодится
        • 0
          К сожалению я не хозяин этого девайса…
    • +1
      На самом деле достаточно бесполезная игрушка, у меня стоит сейчас пылиться.
      • 0
        Меня интересует возможность легко подключаться к коммутаторам и дслам-ам, потому как в бытовых ноутбуках нет com-порта а таскать переходники которые не везде работают не очень удобно.
        • +2
          Дешевле, проще, удобнее использовать переходники USB ->RS-232. Дёшево и сердито.
          • 0
            Промышленные железки не работают с переходниками ((
            • 0
              А если не USB, а PCMCIA->RS-232?
              • 0
                Тоже пробовал. Один модуль правда, особо перебирать негде было взять. Не работает.
                Я говорю про сименс промышленное железо.
                • 0
                  Что с чем не работает?
                  • 0
                    Siemens simoreg, siemens cpu 227 не работает.
                    • 0
                      Погуглил, могучие железяки!

                      И как вы из положения выходите, для настройки, стационарный комп таскаете?
                      • 0
                        рядом с силовыми стоит стационарный пк, для 227 таскаю системник по цеху ))) 315 контроллер через профибас.
                        • 0
                          ну раз системник всё равно по цеху таскаете, проверили бы свой переходник на нём. Может всё таки проблема в софте на ноуте.

                          Или вообще всё подключить через rs-485, вроде ваши железки его поддерживают.
              • 0
                на новых лептопах PCMCIA уже нету, а переходники ExpressCard->RS232 по факту «USB-шные», только в фром-факторе карты
            • +1
              Что за ерунда?
            • 0
              купите/спаяйте нормальный переходник на FT232.
              • 0
                так в переходниках usb->rs-232 скорее всего ft232 и используется
                • 0
                  не факт, есть и на pl2303, в 90% случая используется она, т.к. дешевле. Переходники на единственной pl2303 не умеют работать с честным TTL (±12 вольт).
                  • +1
                    а причём тут TTL? кстати регламент TTL ±5 В
                    • +1
                      прошу прощения, ошибся. имелось ввиду следующее:

                      The RS-232 standard defines the voltage levels that correspond to logical one and logical zero levels for the data transmission and the control signal lines. Valid signals are plus or minus 3 to 15 volts; the ±3 V range near zero volts is not a valid RS-232 level. The standard specifies a maximum open-circuit voltage of 25 volts: signal levels of ±5 V, ±10 V, ±12 V, and ±15 V are all commonly seen depending on the power supplies available within a device.

                      en.wikipedia.org/wiki/RS-232#Voltage_levels
            • 0
              А какая разница вашей железке переходник там или нет?
              • 0
                Думаю какие-то сигналы не нравятся.
                • 0
                  может где-то емкости монтажа просто плохие?
                  • 0
                    Не знаю, не электронщик я, но пробовали несколько усб-ком переходников и один pcmcia-com
                    • +1
                      Гхм, тогда скорее всего проблема не в преобразователе, а в софти.
                      • 0
                        скорее в настройке софта (скорости, старт/стоп биты и пр.)
                        • 0
                          Разумеется. Глупо думать, что виновато железо. Это редкое явление. Кстати на хосте тоже может быть упален СОМ-порт.
                          • 0
                            как показал мой опыт, на многих недорогих USB-переходниках распаяны толко RXD, TXD и GND. Да, в 90% случаев хватает, но вот иногда некоторые железки требуют и других контактов
            • 0
              Переходник переходнику рознь… С нормальными работают. Правда в последнее время нормальный переходник купить проблема. Паяем сами, когда надо…
  • +2
    Смею поинтересоваться: что это за мясной КПК? О_о
    • +1
      см. комментарий выше
      • +1
        Хм… Пока читал статью появились ответы на мой вопрос.
        Спасибо :)
  • +1
    Я не понял, роутер при загрузке сам всё валил в свой ком-порт и терминалом можно смотреть и давать команды?
    И так поступают другие железки?
    • 0
      Очень интересует ответ на данный вопрос.
    • +3
      Роутеры поступают именно так. Сначала в порт кидает свой лог бутлоадер, там еще может быть менюшка, типа загрузить ядро по tftp, прошиться по tftp итд. Если команд не поступает, то запускается вариант по умолчанию и передается управление лункс ядру, которое дальше сыпет свой лог в этот порт.
      • +1
        так просто и шикарно
      • 0
        >> там еще может быть менюшка, типа загрузить ядро по tftp, прошиться по tftp итд
        это зависить от используемого загрузчика, именно он и придлагает скачать/загрузить другую прошивку.
    • +1
      Сам валил
    • 0
      Угу. Такое часто практикуется.
    • 0
      >И так поступают другие железки?

      телефоны, например, тоже так делают.

      вот кстати схема конвертера: wiki.openezx.org/Serial_console
    • 0
      я так у одного модема nvram стер… потом nvram должен был перезаписаться со значениями по умолчанию… должен был…

      сейчас есть откуда индуктивности и светодиодики выпаивать.
  • +1
    <ламерский_вопрос>
    Вот когда говорят -12 В, +12В — это относительно чего? Земли? А земля она всегда 0?
    </ламерский_вопрос>
    • +1
      грубо, между -12 вольтами и +12 вольтами у нас будет разница потенциалов 24 вольта (в статье об этом сказанно). А +-12 вольт, да, относительно общего провода.
      • 0
        А куда ведет этот общий провод?
        • +1
          Общий провод — это некая точка, к которой соединяется все общие провода всего оборудования. И относительно него меряется вся логика. Его потенциал равен нулю. В частном случае это корпус компьютера.
          • 0
            Понятно, спасибо.
  • 0
    Братья, тетькам-леречницам-продавцам-вога мы уже мозги взорвали (те, кто спрашивал ВОГ — видел их глаза). Настало время ДДОСНуть ЕВРОСЕТЬ.

    Внимание, только в Евросети (или не только!). Всего за 190 рублей (ага, это не 129...). USB шнурок для старых телефонов. Ориентир — посредине кабеля коробочка из молочного пластика.

    Покупаем. Отрываем разъем, который идет в телефон. И снимаем оттуда питание, землю и RX TX уарта без всяких максов и других преобразователей уровня! (распиновку можно посмотреть по конкретной модели телефона, под которую вам достанется шнурок).

    Живет все это на микрухе pl2303 — не FT и не CP, но дрова, слава богу, имеются в том числе и под х64 семерку (правда пару раз меня в синий экран отправили — но это мелочи) :-))).

    Налетай! Вали желтых!
    • 0
      И да, если нужен полноценный переходник USB-COM, то берется микруха FT232Rl, а преобразование уровня выполняется не max232 (там недостаточно блоков для обслуживания всех линий ком-порта), а max2032 — в итоге получаете полноценный ком-порт со всеми задействованными линиями.
      • 0
        FT232 есть и BM и много их есть ;)
    • 0
      К сожалению не каждый шнурок имеет в коробочке заветную микросхему. Часто бывает просто коробочка и провода идут насквозь…
      • 0
        Там молочный пластик, через него явно видно наличие микросхем. Я взял шнурок от моторолы — несмотря на то, что был практически в бессознательном состоянии (пятница, дни рождения у коллег), со шнурком угадал и все правильно подпаял и прежде чем упасть спать увидел получаемые от PIC-a биты…
  • +1
    Я что за платка OUMEX на 3-м скриншоте?
    • 0
      Монтажка для Attyny2313 или AT89C(S)2051
  • +1
    На протяжении всей статьи меня не покидала мысль, что написана она как-то в стиле журнала Хакер. Уж больно много обращений на «ты» и прочих жаргонизмов.
    Внесу поправку насчет дальности. Вообще-то, она не является константной, скажем так. И зависит от кучи факторов: скорость передачи, сопротивление кабеля, емкость кабеля и т.д.
    Лично я без каких-либо проблем гнал по 25-метровому кабелю обычный 12-вольтовый UART со скоростью 9600 бод. И это было совсем не пределом длины кабеля. Просто больше не надо было.
    А так, и на 100 метров передают.
    • 0
      Поддержу. Мы с соседом через два подъезда в своё время коаксиал пробросили. Метров 80 точно было. Heretic (если кто-то ещё помнит такую игрушку) в мультиплее шуршал только так…

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