ПК-мобильный последовательный интерфейс

Hacker

Professional
Messages
1,048
Reputation
9
Reaction score
712
Points
113
Предисловие
У меня было несколько мобильных телефонов, и с момента первого мне было любопытно подключить его к ПК, но у меня не было достаточно информации. Я не был серьезно заинтересован, пока не приобрел Siemens MC 60, потому что у него есть возможность подключаться к компьютеру, как указано в руководстве. Для этой цели Siemens бесплатно предоставляет программное обеспечение (Siemens Data Suite) и у них есть кабельные аксессуары (последовательный и USB), которые вы можете купить для подключения мобильного телефона к ПК.

Исходный кабель мне показался немного дорогим, учитывая ожидаемое использование, которое я предвидел (хотя есть гораздо более дешевые кабели-клоны, которые вы можете купить во многих местах). Кроме того, я из тех людей, которым нравится делать все самостоятельно, поэтому, учитывая обе причины, я попытался сделать свой собственный кабель. Сначала, конечно, я заглянул в Интернет, чтобы узнать, не опубликовал ли уже кто-нибудь дизайн. Я нашел схему и несколько вариантов на базе интегральных схем MAX232 или MAX3232. Эта схема выглядит довольно простой и дешевой, но я подумал, что смогу разработать что-то еще более простое и дешевое.

В этой статье я представляю интерфейс ПК-мобильный, использующий последовательный порт, который я считаю наиболее простым, но при этом надежным и безопасным. Он состоит только из двух обычных транзисторов, одного нормального диода (опционально, входит в комплект для лучшей защиты мобильных устройств) и трех резисторов. Эта схема была специально разработана для Siemens MC60, однако она наверняка будет работать с большей частью семейства Siemens (я тестировал, что она работает и с Siemens M 55), а также, скорее всего, с большинством других производителей: Nokia, Motorola, Ericsson, Alcatel. и т. д. Обратите внимание, что эта конструкция является экспериментальной, и в ней используются некоторые приемы, что приводит к нестандартному поведению. Поэтому используйте его на свой страх и риск и не обвиняйте меня, если что-то повредится (хотя я считаю это непохожим).

Чтобы использовать этот дизайн с другими мобильными телефонами, вам просто нужно выяснить, где находятся линии FBUS TX, RX и GND в интерфейсе вашего мобильного телефона, чтобы знать, как его подключить (см. некоторые выводы здесь, а также здесь). Я считаю схему достаточно безопасной, чтобы вы могли без особого риска подключить ее и посмотреть, работает ли она. Если это не так, то вам решать, в чем причина. Обратите внимание, что этот интерфейс специально настроен для Siemens MC60, поэтому мы можем сделать его очень простым. Если другие мобильные устройства значительно отличаются по своему электрическому поведению FBUS (скорее всего, входное и выходное сопротивление), тогда могут потребоваться некоторые изменения в значениях резисторов, чтобы соединение ПК с мобильным работало. Если у вас есть некоторые знания в области базовой электроники, вы можете найти необходимые модификации, потому что интерфейс исчерпывающе объяснен шаг за шагом в оставшейся части этой статьи.

Интерфейс Siemens MC60
Прежде чем вы даже подумаете о подключении мобильного телефона к ПК, вам сначала нужно узнать о возможностях мобильного ввода-вывода. Если у него есть ИК-порт или Bluetooth, тогда все намного проще, потому что кабели не нужны, но если мобильный телефон (или ПК) не имеет таких функций, вам понадобится кабель, который, по крайней мере, должен адаптировать разные типы разъемов. Если у мобильного телефона есть линии USB, кабель будет очень простым, никакой электроники не потребуется, просто контактное соединение с USB-интерфейсом вашего ПК, в котором получение мобильного разъема является более сложным шагом.

Однако наиболее распространенной возможностью ввода-вывода является последовательная линия, хотя она не в форме хорошо известного стандарта RS-232-C последовательного порта ПК, а в форме того, что называется FBUS , который похож на TTL (как в параллельном порту ПК), но с логической единицей около +2,9 В вместо +5 В. Логический ноль равен 0 В, как в TTL. Это классический последовательный протокол со стартовым битом, битами данных, битом четности (если есть) и стоповым битом (ами). Здесь задействованы три контакта: один для передачи (TX), один для приема (RX) и земля (GND), которая является общей ссылкой.

Как только вы решили использовать последовательный кабель, поищите распиновку вашего мобильного телефона, по крайней мере, на предмет расположения линий TX, RX и GND. Здесь вы можете найти некоторые из наиболее распространенных мобильных распиновки , а также здесь, быть в курсе , однако , что штифт из может быть изменен , даже если разъем такой же. Это происходит с выводом Siemens в последней ссылке, которая используется в старых моделях, в более новых моделях, таких как MC60, вывод отличается, и его можно найти здесь.

В моем случае MC60 (также действителен для M55), вывод соответствующих линий:
  • Контакт 2 => GND
  • Контакт 3 => TX
  • Контакт 4 => RX
где контакт 1 - крайний левый контакт, когда вы смотрите на разъем клавиатурой вверх. Обратите внимание, что эта распиновка отличается от предыдущих моделей Siemens, их легко отличить, просто измерив напряжение источника питания. Он использует контакты 1 и 2 в обоих случаях, но с обратной полярностью, в старой распиновке GND - это контакт 1, в то время как в новой схеме GND - это контакт 2, конечно, GND - это контакт, который имеет отрицательное напряжение по сравнению с другим контактом.

Схема
В принципе, есть возможность подключить мобильный FBUS напрямую к порту RS232 ПК и получить рабочий канал между ними. Однако, если вы попробуете это сделать, возникнет несколько проблем. С одной стороны, может быть рискованно подключать сигнал -25 / + 25 вольт (но обычно он составляет около -12 / + 12) в устройство, предназначенное для входа 0 / + 5 вольт, но это не проблема, потому что вход и Выходные импедансы обычно высоки, и поэтому токи достаточно малы, чтобы быть в безопасности. Основная проблема заключается в том, что вы можете сместить рабочую точку напряжения различных компонентов, и это может привести к непредсказуемому поведению (которое прекращается, когда вы снимаете мешающее напряжение). Решить эту проблему можно парой резисторов и одним диодом.

С другой стороны, мобильные телефоны очень консервативны по току из-за того, что они питаются от батарей, это заметно по высокому выходному сопротивлению линии TX. Выходной ток настолько ограничен, что мобильная линия передачи не может управлять входом RX последовательного порта ПК. Решить эту проблему можно с помощью внешнего источника питания и одного транзистора.

Тем не менее, есть еще одна проблема, которая немного усложняет ситуацию: FBUS использует прямую логику, тогда как RS232C использует обратную логику (не в линиях управления). Это означает, что FBUS представляет собой логическую единицу, устанавливающую выходное напряжение TX в высокое состояние (+2,9 В), в то время как RS232C кодирует его с низким состоянием (-12 В). Логический ноль отображается FBUS с низким состоянием (0 В), в то время как это высокое состояние (+ 12 В) на выходе RS232C TX. Эта проблема должна быть решена с использованием активной электроники: внешнего источника питания и как минимум одного транзистора на линию.
mobile.gif


На рисунке выше показана схема адаптера для взаимодействия мобильного телефона с ПК через последовательный порт. Как видите, это простейшее решение, необходимое для решения упомянутых выше проблем. Он должен быть запитан от +12 В, и лучше всего использовать его с одной из двух линий управления выходом последовательного порта ПК, RTS или DTR. Выберите тот, при котором программное обеспечение для обмена данными будет постоянно поддерживать +12 В (или любое, если и то, и другое), в случае Siemens Data Suite единственная линия, постоянно поддерживаемая на высоком уровне, - это RTS. Почти гарантировано, что по крайней мере одна из двух линий управления выходом будет поддерживаться стандартным программным обеспечением, потому что оригинальный кабель передачи данных также должен быть запитан.

Резисторы R2 и R3 представляют собой делитель напряжения, который адаптирует напряжение высокого состояния RS232C к уровню FBUS, поэтому его необходимо настроить так, чтобы выход схемы для RX мобильного устройства соответствовал тому же напряжению, что и TX мобильного устройства, обычно около +2,9 В. . Вы можете сделать это, используя переменный резистор с тремя ножками, который будет учитывать как R2, так и R3. Отрегулируйте переменный резистор в два этапа: сначала отключите мобильный телефон, чтобы установить безопасный уровень перед подключением, затем подключите мобильный и точно настройте напряжение. После того, как вы закончите установку уровня, вы можете измерить сопротивление обеих половин переменного резистора (от одного конца до курсора и от курсора до другого конца), и теперь вы можете заменить его двумя эквивалентными обычными резисторами, которые обычно дешевле. и меньшего размера (это может быть важно для размещения схемы в коробке последовательного разъема ПК). На самом деле выходное напряжение для мобильного RX не так критично, и вы можете оставить его немного выше или ниже + 2,9 В, скажем, плюс / минус 1 В, и поэтому вы можете использовать предлагаемые значения резистора без какой-либо настройки, просто проверьте безопасность, чтобы уровень приемлемо.

Назначение резисторов R1 и R2 - подтянуть до высокого уровня по умолчанию RX мобильного устройства и ПК (обратите внимание, что они имеют разные напряжения из-за R3), когда транзисторы закрыты. Когда они разомкнуты, резисторы ограничивают ток и падение напряжения, вызывая низкое состояние обоих входов RX путем их заземления (мы признаем, что это не стандартно для ПК, но это работает, см. следующий абзац).

Транзистор Q1 отвечает за управление PC RX на высоком уровне, когда мобильный TX низкий, и за низкий уровень, когда мобильный TX высокий. Обратите внимание на инверсию состояний, необходимую из-за разной логики обоих портов, о которой мы говорили выше. Также обратите внимание, что мы передаем особенность RS232C ПК, выходящую за рамки стандарта: открытый или заземленный вход считается низким состоянием UART, как если бы вход -12 В. Это единственное нестандартное поведение, которое мне пришлось использовать в этой схеме, чтобы сделать ее такой простой. Все UART, которые я тестировал, ведут себя подобным образом, и у меня не было проблем с передачей этой функции.

Этой ситуации можно избежать, подключив эмиттер Q1 к -12 В, а не к земле, но это приведет к дополнительному требованию наличия источника питания -12 В, который мы могли бы взять из линии управления, не используемой для обеспечения + 12 В. То есть, если мы хотим избежать внешнего источника питания, мы потребуем, чтобы программное обеспечение для обмена данными постоянно поддерживало RTS и DTR на +12 В и -12 В (или наоборот). В случае с Siemens Data Suite это именно так, возможно, оригинальный кабель Siemens использует это двойное питание. Я променял простоту на стандартную функцию и выбрал более простую нестандартную схему, которая работает. Если вы предпочитаете выбрать другой вариант (сложность для стандартного поведения), теперь вы знаете, какая модификация требуется для схемы.

Транзистор Q2 отвечает за активацию мобильного RX, когда PC TX выходит из строя, и оставляет его на низком уровне, когда PC TX высокий, обратите внимание на инверсию состояний. Диод D1 предназначен для защиты мобильного телефона, если источник питания в цепи опускается ниже нуля. Это происходит каждый раз, когда вы перезагружаете компьютер, если вы запитываете интерфейс с помощью линии управления, потому что состояние выходных линий RS232C по умолчанию составляет -12 В. Если вы так осторожны, чтобы не подключать мобильный телефон к ПК до запуска программного обеспечения или после его выхода, то D1 строго не нужен.

Ноутбуки (устранение неполадок)
Этот интерфейс был разработан и протестирован с использованием обычного ПК-клона, и хотя нет причин, по которым он не должен работать с другими компьютерами, я обнаружил несколько проблем при использовании с ноутбуками. Во-первых, мобильные компьютеры используют менее 12 В в портах RS232C, скорее всего, из-за энергосбережения; Я видел 9v и даже 6v. В этом нет ничего плохого, если вы принимаете это во внимание при выборе отношения R2 / R3, для 9v потребуется соотношение 2, а для 6v - коэффициент 1. Если вы возьмете это соотношение равным 3 (для более используемых Уровень RS232C 12 В), как показано на схеме выше, тогда вы можете обнаружить, что интерфейс не работает с вашим ноутбуком, даже если он работает с другими ПК.

Если вы планируете использовать схему с компьютерами, которые используют очень разные уровни RS232C, у вас есть несколько вариантов. У вас может быть один интерфейс для каждого компьютера, это возможно, потому что схема дешевая и простая в изготовлении, однако это не выглядит лучшим решением. Другой вариант - включить переменный резистор или переключатель для выбора подходящих значений R2 / R3 для каждого компьютера. Опять же, это решение не очень чистое, я предпочитаю создать только один интерфейс с фиксированным соотношением R2 / R3, но установить посередине между значениями, требуемыми двумя компьютерами с более разными уровнями RS232C. Таким образом, входная линия мобильного устройства будет получать меньшее или большее напряжение, чем стандартное, при подключении к тому или иному компьютеру. С этим не должно быть проблем, так как есть допуск на входное напряжение. Например, Если вы хотите, чтобы эта схема работала с портами ПК RS232C 6 В и 12 В, вы можете выбрать R2 / R3 = 2, тогда мобильная линия RX будет получать 2 В и 4 В соответственно, что на 1 В ниже и выше стандартного уровня 3 В. Хотя я думаю, что нет никакого риска подавать на линию RX 4 В или даже больше, я считаю 2 В несколько низким для надежной работы с любым мобильным телефоном, поэтому на самом деле я бы выбрал меньшее соотношение, например 1,7.

Вторая проблема, которую я обнаружил при использовании интерфейса с ноутбуками, заключается в том, что иногда требуется больше тока для управления их портами RS232C. Чтобы исправить это, достаточно выбрать меньшее значение R1, например половину значения, предложенного в схеме выше, то есть использовать 5k вместо 10k.

Кабель
К кабелю особых требований нет, сигналы сильные, малоточные и не слишком высокочастотные. Для своего первого интерфейса я использовал тонкий кабель длиной один метр с двумя витыми парами, то есть четыре кабеля, хотя строго нужно было только три, два кабеля (по одному на каждую витую пару) подключены к земле. В моем втором интерфейсе я использовал старый кабель мыши, который имеет то преимущество, что уже имеет последовательный разъем ПК (кажется, что мыши используют по крайней мере TX, RX, RTS и GND, что нам нужно), однако я отрезал его, потому что этот вид разъемы заводского изготовления не могут быть открыты для размещения внутри электроники.

Схема может быть размещена в коробке последовательного разъема ПК DB-9S или DB-25S без печатной платы, припаивая компоненты непосредственно к контактам разъема и к соседним компонентам; некоторые короткие кабели могут помочь, но мне не понадобилось их использовать. Обратите внимание, что схема может быть запитана там с помощью линии управления последовательного порта.

Основной проблемой этого проекта был мобильный коннектор. Глупо, но факт. Я начал использовать разъем для кабеля громкой связи, но это была настоящая головная боль. Контакты очень маленькие и расположены близко друг к другу, поэтому у меня было много проблем с пайкой кабелей с помощью недостаточно острого паяльника. Когда я припаял кабели, они часто ломались, потому что они должны быть очень тонкими, чтобы их можно было припаять к одному контакту и не касаться соседних контактов. Действительно больно.

Один из вариантов, на который мне обратил внимание друг, который использовал свое воображение (вы должны сделать то же самое :) при создании своего личного интерфейса (вероятно, первый, кто попробовал эту схему сразу после меня), - это использовать разъем зарядного устройства, который может открывать без повреждений, чтобы вставить три кабеля, необходимые для правильного подключения. Здесь у вас есть иллюстрированный процесс создания интерфейса, любезно предоставленный этим другом и его цифровой камерой ;-).

Может быть, если вам повезет, вы найдете мобильный разъем, хорошо подходящий для этого проекта, но если вы этого не сделаете или если вам нравится делать все самостоятельно (как я), есть альтернативный вариант: создать свой собственный разъем. Следующие инструкции действительны только для мобильных телефонов Siemens и устройств с аналогичным типом разъема, для других типов просто используйте свое воображение.

Вырежьте кусок плотной бумаги или тонкого мультфильма размером с мобильный коннектор в ширину и примерно четыре сантиметра в длину. Согните его пополам, чтобы получилась V-образная форма длиной 2 см, которая поместится в мобильный разъем. Вставьте бумагу вершиной в сторону мобильного телефона и отметьте ручкой положение контактов 2, 3 и 4 (это для моделей Siemens с тем же выводом, что и MC60, для некоторых старых моделей вам необходимо отметить другие положения контактов) , булавки не видны, когда бумага вставлена, но вы можете видеть начало дорожек, к которым они прикреплены.

Затем извлеките бумагу и проделайте иглой пару отверстий на каждой булавке. Одно отверстие должно быть на пару миллиметров впереди вашей отметки (по направлению к вершине), где, как вы ожидаете, начнется контакт соответствующего штифта разъема. Другое отверстие нужно проделать за пару миллиметров до вершины, в которой, как вы ожидаете, закончится контакт соответствующего штыря разъема.

Теперь возьмите очень тонкий медный провод (один из нескольких проводов размером с волос, который проходит внутри обычных слаботочных электрических проводов), пропустите его через одно отверстие изнутри V в направлении наружу, а затем снова пропустите его через другое отверстие того же штифта. от внешней стороны к внутренней части V. Проделайте этот шаг для трех штырей, чтобы у вас получились три маленькие медные линии, идущие параллельно, которые будут касаться соответствующих штыревых контактов мобильного разъема. У вас есть идея, а?

Внутри V у вас будет три пары медных проводов, скручивайте каждую пару так, чтобы на конце оставалось только три медных провода, по одному на каждый контакт. Сильно скручивайте, чтобы кабели не оставались слишком свободными, особенно на той стороне, которая будет контактировать с подвижным разъемом. Чтобы облегчить пайку этих тонких медных проводов с обычными проводами кабеля, проделайте еще три отверстия с помощью иглы на полсантиметра перед внешним концом бумажного соединителя, но как можно дальше друг от друга. Теперь пропустите медные провода через каждое соответствующее отверстие изнутри буквы V к внешней стороне. Это поможет припаять внешний кабель, предотвращая соприкосновение медных проводов друг с другом внутри или снаружи V (хотя есть и другие методы, такие как использование клейкой ленты для их изоляции или использование медных кабелей от трансформатора, которые уже изолированы,

Осталось только припаять внешние кабели к соединительным кабелям и закрепить соединитель липкой лентой, чтобы он стал прочным, устойчивым и кабели не двигались. Перед закреплением разъема лентой удобно заполнить V другим V, идентичным другому (но, конечно, без отверстий и кабелей), чтобы разъем плотно вошел в мобильную розетку и не оставался слишком свободным. Это добавит давления, чтобы предотвратить случайное извлечение разъема и усилить соединение между разъемом и подвижными контактами.

После того, как у меня возникли проблемы с оригинальным разъемом, я сделал этот, и он сработал с первой попытки. Теперь я предпочитаю разъем. Здесь у вас есть пара изображений (внешний и внутренний вид) соединителя, чтобы вы могли произвести впечатление. Кстати, снимки были сделаны на встроенную камеру MC60, видно, что она не очень хороша для крупных планов (она не подходит и для изображений на большом расстоянии, лучшая производительность достигается с фотографиями людей, то есть на средних расстояниях). диапазон).
mc60con1.jpg
mc60con2.jpg


Программное обеспечение
Это ключевой момент, без него кабель ПК-мобильный бесполезен. Некоторые производители предоставляют специальное программное обеспечение для своих мобильных устройств, например Siemens Data Suite, Nokia Data Suite и т.д. основные операции, такие как обработка SMS и т. д., чтобы вы могли использовать одно и то же программное обеспечение с разными мобильными телефонами. Например, любопытно, что многие анонимные средства для снятия блокировки SIM-карты и другие утилиты можно найти на многих специализированных сайтах GSM. Откуда люди получают знания о протоколе и командах, если он нигде не опубликован? Кажется, это вопрос исследований и экспериментов, решать вам!

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

Еще одно программное обеспечение, которое работает с этим интерфейсом, - это Windows HyperTerminal, поскольку оно повышает RTS, я тестировал его на Windows 98 и Windows XP. Используя эту программу, вы можете ввести AT-команду и получить ответ OK от внутреннего модема MC60! Мобильный телефон работает с любой скоростью COM-порта ПК, поэтому установите для нее 115200 бод, 8 бит данных, отсутствие четности и 1 стоповый бит, и вы достигнете максимальной скорости. Кстати, софт Siemens GPRS с этим интерфейсом не работает, мобильник не определяет. Пока меня не интересует возможность подключения к GPRS, я не исследовал причину. Это может быть связано с тем, что он использует аппаратное рукопожатие и нуждается в других линиях, кроме TX и RX (MC60, похоже, имеет несколько таких дополнительных последовательных линий). В этом случае можно использовать ту же схему для сопряжения этих линий между ПК и мобильным телефоном, так же, как и с линиями TX / RX, однако для определения точных линий необходимы некоторые тесты. Тем не менее, проблема может быть намного проще и заключаться в коротком замыкании определенных линий, как в комплекте громкой связи. Если узнаешь, дай мне знать! ;-)

Если вы попробуете этот дизайн с мобильным телефоном, отличным от того, который я тестировал, сообщите мне, и я включу его в список успешно протестированных мобильных телефонов. Удачи со своим мобильным телефоном!
 
Top