Подключаем джойстик от Dendy к компьютеру

Как подключить джойстик от приставки Денди/Dendy к компьютеру

Уверен многие видели в магазинах джойстики для компа, к примеру от Sony PlayStation.

К сожалению они стоят очень дорого, но почему бы не сделать такой самим? Существует вполне реальная возможность играть таким геймпадом/джойстиком на ПК – совместимом компьютере, даже не самом мощном. Большинство игр и программ не смогут отличить вашего устройства от фирменного джойстика за несколько $100. (почему то считается раз какой прибамбас к компьютеру, то обязательно стоить должен баснословные деньги) Самая фишка в том, что этот джойстик можно использовать в любой игре, просто при назначении клавиш назначайте их на кнопки джойстика.

Вообще GamePad – устройство очень похожее на аналоговый джойстик. Различие между типичным джойстиком и GamePadом – в характеристиках оси. Джойстики обычно имеют две оси – X и Y. Непрерывное движения рычага вдоль этих осей с помощью двух потенциометров преображаются в аналоговые электрические сигналы, которые потом с помощью АЦП преобразуются в цифровые, на основании которых вычисляются переменные X и Y. GamePad же имеет не-пропорциональные величине отклонения от центра величины X и Y для девяти позиций (включая центр), он гораздо проще по конструкции, и, следовательно, более надежен.

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

Начнем с джойстика для Dendy или NES.

Если у вас есть gamepad, и у него есть кнопки A, B, Turbo A, Турбо B, Select и Begin (последних двух может и не быть, настоятельно рекомендую такие не брать) и связывается через 5 проводов, тогда это или NES или аналог NES и будет работать если Вы все сделаете правильно.

Однако пора приступать к делу. Все, что вам понадобится – это разъем LPT порта (он же параллельный, он же от принтера), паяльник, 5 1N914 или 1N4148 диодов, ну и, собственно, сам джойстик. Приступим.

Вот сам разъем джойстика (правда похож на СОМ)

Спаивается все по схеме, если хотите подключить два джойстика, то все провода припаиваются также кроме 8 и 7 контакты на NES, их надо припаять к 11 и 12 контакту на LPT.

Чтобы припаять провода по схеме надо вскрывать разъем, я же предлагаю сделать все гораздо проще. Можно просто сделать своеобразный удлинитель переходник.

Помимо LPT нам понадобится еще и СОМ разъем(папа).

Еще очень важная деталь. На диодах есть маркировка, их следует припаивать полосочкой вверх. Просто припаиваете проводки по схеме к LPT и все.

Получается очень даже.

Как его настроить я расскажу в конце статьи.

Чтобы получить максимальное удовольствие, я скачал эмулятор Dendy. Вкратце что такое эмулятор.

Такая прога которая полностью эмулирует какую либо игровую приставку, игры для нее также подгружаются отдельно, любую игру можно качнуть в интернет.

Вот вам Suprer Mario.

А вот и черный плащ.

Только настоящий игровой гурман оценит это.

Ну а теперь джойстик для Sony Playalert alert-infoion (PSX)

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

Диоды те же что и для Dendy. Для джойстиков с шестью осями и обратной связью необходимо питание 9 вольт. Для простых же джойстиков как у меня, питание можно и не делать. Но если уж хотите, то я рекомендую купить китайский маленький блок питания на 9в для подключения в розетку, они стоят не дороже доллара.

Хочу заметить что на схеме изображена обратная сторона порта для PS.

Просто срезаете сонявский коннектор и припаиваете LPT.

Для того чтоб подключить второй джойстик, надо припаять все его провода также, но 9 контакт с PSX следует припаять на 13 контакт на LPT, а 1 контакт с PSX на 15 контакт на LPT. Вот и все.

Теперь конкретно о процедуре настройки, хотя тут дело еще проще.

Сначала надо скачать дрова DirectPad Pro (где скачать, гуглим, первоначальные источники более не существуют)

– В панели управления Windows выбираете игровые устройства (иконку джойстика) и жмете кнопку “Добавить”. В появившемся окне опять жмете кнопку “Добавить”, а потом “Установить с диска”.

– Далее находите ту директорию, в которую вы распаковали архив драйвера и выбираете появившуюся строчку DirectPad Pro.Inf. После этого пару раз жмем ОК и добавляем устройство DirectPad Pro Standard And Force FeedBack.

– Затем в списке игровых устройств можно будет выбрать DirectPad Pro Controller и DirectPad Pro Force FeedBack Controller. Выбираем соответствующий драйвер и в окне “Игровые устройства” появляется наш контроллер.

– Теперь нажимаем кнопку “Свойства” и попадаем в окно конфигурации драйвера. Выбирайте затем выберите ID джойстика (пишется посередине сверху) и поставьте номер в списке, рядом с Conroller Type (он может и не быть 1, если до этого у вас в системе были установлены другие джойстики).

– После этого выберите правильный адрес вашего LPT-порта (можно посмотреть в Системе: Устройства – Порты COM и LPT обычно 378).

– Вот и все! В конечном итоге у Вас получился DirectInput совместимый джойстик, т.е. можно будет играть в любой windows игре, поддерживающей джойстик через драйверы DirectX. Необходимо только выбрать DirectPad Controller в настройках игры.

На работоспособность были протестированы: NFS Undergraund, Max Payne2, Worms 3D, GTA 3, GTA Vice city и т. д. Схемы на 100% работоспособны. Наслаждайтесь.

Призма – не по детски интересные поделки
своими руками.

Главная Приветствую Вас Гость РегистрацияВходRSS » Гостевая книга
» Каталог сайтов

Сайт сегодня посетили:

  • Джойстик (подключить можно до пяти штук)
  • Паяльник
  • 5 дидов(не особо мощных)
  • Изолента
  • Разъём “папа” LPT порта (он же параллельный, он же от принтера, он же DB25M)

  • Желтый – Clock
  • Ораньжевые контакты – с них питаем джойстик (около 5В). Обязательно только через диоды , иначе можно спалить LPT контроллер на материнской плате или всю мат. плату.
  • Синий – Земля
  • Зеленый – Latch
  • Голубой – Управляющий контакт (10 контакт для первого джойстика, 11 – для второго, 12 – для третьего, 13 – для четвёртого, 15 – для пятого). Имейте В Виду, что штырёк 14 не использован , так как он не является входом параллельного порта.

(pin 10) —–> Pad 1 data – для первого геймпада
(pin 11) —–> Pad 2 data – для второго геймпада
(pin 12) —–> Pad 3 data – т.д.
(pin 13) —–> Pad 4 data
(pin 15) —–> Pad 5 data

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

1. Вопрос: Можно ли будет таким джойстиком играть в обычные РС-шные игры?
Ответ: Да, конечно, если в играх есть поддержка геймпада.

2. Вопрос: Вы сами подключали джойстик?
Ответ: Да, подключал, даже 2 пары приходилось делать, они у меня отлично работают!

3. Вопрос: Какой драйвер мне использовать?
Ответ: Самым универсальным драйвером является PPJoy. Для сеговского 6-ти кнопочного джоя рекомендуется XYZModeB, по той причине, что XYZModeB устраняет произвольные нажатия в этом джойстике.

4. Вопрос: Существуют ли другие схемы пайки?
Ответ: Существуют и другие схемы. Их можно найти, например, в комплекте драйвера PPJoy или через поисковик.

5. Вопрос: Подскажите, какие мне выбрать диоды?
Ответ: Подойдут практически любые малогабаритные диоды. В идеале следует применять диоды Шоттки (зайдите в магазин радиодеталей, там подскажут), но они достаточно дорогие.

6. Вопрос: А зачем вообще нужны диоды?
Ответ: Диоды нужны для выпрямления напряжения с нескольких пинов LPT-порта. Это, в свою очередь, необходимо для запитки джойстика.

7. Вопрос: Можно ли обойтись без диодов?
Ответ: Да, можно. В этом случае придётся применять отдельный блок питания (4,5 – 5,0 В). При этом Вы исключаете из схемы пайки блок диодов (то есть эти пины вообще не должны быть задействованы), и вместо него берете напряжение с контакта «плюс» внешнего блока питания, а контакт «минус» замыкаете на «землю» параллельного порта (пины с 18-го по 25-й).
Предупрежу сразу – внешний источник питания более надёжен в плане обеспечения питания джойстика, однако риск спалить ЛПТ-порт в случае неправильного подключения повышается в разы. Поэтому я этот способ рекомендую только тем, у кого работа джойстика связана с явной нестабильностью (а также для подключения двух и более джойстиков).
Исключительным способом подключения без диодов и внешнего питания является схема Сега-Линукс из пакета PPJoy.

8. Вопрос: Я все спаял и у меня ни хрена не работает (варианты: работают не все кнопки, кнопки работают неправильно).
Ответ: Для начала напишите какой джойстик подключаете, какая у Вас операционная система, каким драйвером пользуетесь и по какой схеме паяете. Как показывает практика, в 70% случаев причиной данной проблемы является неправильная спайка. Поэтому ещё раз (хоть в десятый, хоть в двадцатый раз) проверьте правильность спайки и ориентацию диодов. Если Вы уверены на 100%, что все спаяно правильно – пишите в комментариях или в форум.

Выше Вам представлена 1 часть данной статьи. Если Вы уже с ней ознакомились можете прочитать как программно подключить джойстик Денди к компьютеру во второй части данной статьи.

Подключаем джойстик от “Денди” к компьютеру

ВНИМАНИЕ!!

Автор статьи не несет ответственности за испорченное оборудование.

Используйте на свой страх и риск!

Ниже Вам представлена 1 часть данной статьи. Если Вы уже с ней ознакомились можете прочитать как программно подключить джойстик Денди к компьютеру во второй части данной статьи.

1) Джойстик (подключить можно до пяти штук)

3) 5 дидов (не особо мощных)

4) Разъем “папа” LPT порта (он же параллельный, он же от принтера, он же DB25M)

5) Разъем “папа” DB15M для разъема джойстика

Ораньжевые контакты – с них питаем джойстик (около 5В). Обязательно только через диоды, иначе можно спалить LPT контроллер на материнской плате или всю мат. плату.

Голубой – Управляющий контакт (10 контакт для первого джойстика, 11 – для второго, 12 – для третьего, 13 – для четвертого, 15 – для пятого). Имейте В Виду, что штырек 14 не использован, так как он не является входом параллельного порта.

В виду того, что клонов приставки NES (Денди) было превеликое множество поэтому и разъемов подключения джойстика к приставке было несколько. Цвета контактов обозначены соответственно цветам в Схеме разъема LPT. Отличает лишь замена ораньжевых контактов одним красным, т.к. питание берется с 5-ти контактов, а подается на джойстик через один. Представлено 3 наиболее распространненых:

Для этих, наиболее распрострранненых разъемов привожу соответственно три аналогичные схемы:

Таким образом, на диодах есть маркировка, и их следует припаивать полосочкой вверх, как на рисунке ниже. Просто припаиваете проводки по схеме к LPT и все.

Вторым важным моментом является подключение двух и более джойстиков. NES/SNES джойстики имеет линию Data, выше она названа управляющим контактом и на схемах обозначена голубым цветом. Она уникальна для каждого устройства (если их у Вас несколько) и каждый геймпад имеет свой собственный штырек Data.

(pin 10) —–> Pad 1 data – для первого геймпада

(pin 11) —–> Pad 2 data – для второго геймпада

(pin 12) —–> Pad 3 data – т.д.

(pin 13) —–> Pad 4 data

(pin 15) —–> Pad 5 data

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

Остается только установить драйвера и настроить джойстик. В данной статье рассматривается софт PPJoy, как наиболее простой в настройке. Скачать его можно в конце статьи. Итак, проблем с установкой возникнуть не должно, иначе и браться за эту затею не стоит.

Вы можете найти в интернете множество различных драйверов для приставочных джойстиков, но я советую воспользоваться теми, что предлагаю я, а именно PPJoy. Если честно, то PPJoy отличается от других драйверов большим размером дистрибутива, но в комплекте Вы получите еще несколько схем подключения различных приставочных джойстиков, FAQ по подключению и настройке, правда все на заморском языке. Если Вы согласны с моим выбором драйвера, то скачиваем дистрибутив драйвера PPJoy082 [1.76 MB]. Если верить мануалу, то подходит для ОС: Win9x/Me/NT/XP/2k. Разархивируем в любое удобное место и запускаем Setup.exe. На экране появляется такое окошко по которому надо кликнуть:

Процесс установки заключается в нажатии кнопки “Next” и вызвать затруднений не должен, поэтому рассматривать его подробно не вижу смысла.

После установки в меню “Пуск” появится папка “Parallel Port Joystick”, а в ней несколько ярлыков. Нас интересует “Configure Joysticks” – его и запускаем. На экране появляется окно утилиты конфигурирования джойстиков. В нем нажимаем кнопку “Add”.

Видим окно конфигурирования нового джойстика. В нем выставляем значения, как приведено на рисунке. Не смущайтесь в выборе типа интерфейса, с ОС Линукс в нашем случае это не связано.

Выставив правильно все значения, жмем на кнопку “Add”. Попадаем в предыдущее окно. Если у нас джойстик один, можно смело жать кнопку “Done”. Если же нам нужно настроить и второй джойстик, то заново жмем “Add”, появляется уже знакомый диалог, правда выбор наш уже несколько ограничен, но значения нужно будет выставить так же как и на картинке выше. Исключение лишь в предпоследней строке, т.е. номер контроллера теперь указываем не 1, а 2 или более в зависимости от того какой джойстик по счету мы подключаем. Все это справедливо если вы правильно руководствовались частью первой этой статьи про аппаратное подключение. Особо важно соответственное подключение data выхода джойстика к LPT порту, иначе могут быть просто “несостыковки”.

Что ж, пол дела сделано, осталось проверить работоспособность джойстика.Заходим в “Панель управления” и запускаем ярлык “Игровые устройства”. Выбираем интересующий нас джойстик и жмем по кнопке “Свойства”. Появляется окно свойств. Во вкладке “Проверка” мы можем проверить работает ли наш джойстик. В момент, когда джойстик никто не трогает и ни одна из его кнопок не зажата крестик осей будет по центру белой области, а изображения кнопок будут все одинаково темно-красными.

Если мы правильно подключили джойстик и будем нажимать кнопки, то реакция крестика и изображения кнопок будут соответственные.Если у Вас тест проверки пройден с положительным результатом, то поздравляю Вас. Вы смогли сами своими руками подключить и настроить джойстик от приставки “Денди” к компьютеру через LPT порт.

В интернете можно найти множество различных эмуляторов “Денди”. Каждый из них имеет свои плюсы и минусы. Некоторые ромы на одних эмуляторах работают, а на других могут отказать.

Вот схема подключения сеговского джойстика к компьютеру

Эта схема является одной из лучших, и + она не требует диодов, собрать по этой схеме очень легко. Удачи.

Подключаем джойстики от Dendy к PC через Arduino

Думаю многие из вас помнят те славные времена, когда мы часами рубились в танчики, черепашки ниндзя, батлтодс энд даблдрагон и еще пару десятков других суперских игр на Денди. Это было шикарное время! Большинство игр были чертовски сложные, но даже несмотря на это, неудача за неудачей, мы, все равно, шли к своей цели и начинали игру заново, чтобы уж сегодня-то пройти ее до конца.

Поностальгировав всласть, я решил, что очень хочу поиграть в Dendy и поиграть хочу на ноутбуке, но не на клавиатуре, а на старом добром джойстике.

Ниже я опишу, с какими проблемами я столкнулся и как их решил.

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

Встала проблема, как подключить джойстик от Денди к ноутбуку.

Немного погуглив, я понял, что в основном это решается подключением через LPT порт и использованием готовых драйверов, но у меня ноутбук, и мне это не подходит. Тут я вспомнил, что у меня есть плата Arduino Uno и я решил, что пойду своим путем и буду использовать именно ее.

0. Определение распиновки на джойстике

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

Найти спецификацию на мою noname денди мне не удалось, поэтому я стал рассматривать внутреннюю плату, чтобы найти там питание и землю, и понять какие из пяти контактов на джойстике с ними соединяются. С этим я справился быстро. Оказалось это два крайних контакта.

К Ардуино, я подсоединил все напрямую, питание — питание 5В, земля — земля, остальные три контакта подсоединил к 2, 3 и 4 цифровому пину.

1. Описание протокола работы джойстика

Оказалось не так-то просто найти эту информацию. Лишь несколько сообщений на паре форумов. Лично мне помогла эта запись: code.google.com/p/avrtoys/wiki/joystick, а именно этот код: avrtoys.googlecode.com/svn/trunk/joystick/main.c. А вот ссылка на упомянутую в этой записи заметку в журнале Радио: ftp.radio.ru/pub/arhiv/1996/06-96/46-6-1996.gif. Из всего этого я сделал вывод, что нужно подать сигнал на Latch, а потом 8 раз подавать сигнал на Clock и каждый раз считывать значение с Data, в котором после каждого Clock-а будет содержаться информация о следующей кнопке джойстика.

2. Настройка среды

Если у вас уже все настроено или вас устраивает Arduino IDE, можете перейти к 3 пункту.
Не знаю, как вас, но лично меня официальная Arduino IDE ужасно угнетает, поэтому коротко расскажу, как использовать свою любимую IDE.
Первым делом я скачал исходники Arduino IDE и нашел там код отвечающий за компиляцию и аплоад прошивки. Потратив немного времени я выделил все команды, которые там используются:

В приведенной выше команде, при линковке, используется библиотека libArduino.a, ее можно получить скомпилировав все *.c и *.cpp файлы из папки с хэдэрами и собрав все объектники в один архив. А можно просто запустить Arduino IDE, скомпилировать любой проект и скопировать файл /tmp/build*.tmp/core.a. Это будет абсолютно эквивалентно.
Все эти команды актуальны для Arduino Uno, для других ардуин следует изменить некоторые параметры.

Теперь используя эти команды можно легко настроить свою IDE, на автоматическую компиляцию и загрузку прошивки.

3. Написание кода прошивки

Здесь нужно было лишь определить какие из 2, 3 и 4 пина отвечают за Latch, Clock и Data. Это я решил методом проб и ошибок. Предполагаем, что 4 это Data, и делаем Serial.println(digitalRead(4)), если при нажатии кнопок есть какая-то реакция, значит это оно. Остальные 2 контакта определились, когда уже была написана прошивка, если все работает значит угадали, нет — меняем местами.

В результате я получил 1 байт содержащий в себе информацию о всех 8-ми кнопках джойстика, о каждой в соответствующем бите. У меня получилось следующее расположение: A, B, Select, Start, Up, Down, Left, Right. После этот байт отправляется на компьютер, где принимается и обрабатывается моим «драйвером».
Несложно заметить, что можно легко подключить второй джойстик.

4. Написание «драйвера»

Здесь нужно было принять этот самый байт от Arduino и эмулировать нажатия кнопок клавиатуры. Да-да, нажатия на джойстике будут обрабатываться, как нажатия на клавиатуре, хорошо это или плохо.
В качестве языка программирования я выбрал Python. Простой и эффективный, полагаю, он отлично подошел для этой задачи.

Единственная проблема, которая здесь возникла это дребезг контактов джойстика. Я ее решил путем введения временного интервала, наступающего после смены состояния кнопки, в течение которого состояния не изменяется. Хватило 0.05 с.

Для эмуляции нажатия кнопок клавиатуры я использовал утилиту xte, идущую в комплекте Xautomation. Она очень проста в использовании, вот пример: xte ‘keydown Left’ . За дополнительной инфорацией смотрите man xte.

Для выхода из драйвера я использовал состояние, когда нажата вся крестовина целиком. Этому состоянию соответствует число 0xf0.

5. Ура! Играем!

Все! Осталось лишь настроить эмулятор денди, я выбрал FCEUX.
Указываем в настройках те клавиши, которые указаны в драйвере ииии вспоминаем детство!

Заключение

На самом деле есть и другие, возможно, более эффективные способы использования Ардуино в данной ситуации. Например, если у вас Arduino Leonardo, то можно использовать объект Keyboard для прямой посылки команд клавиатуры на компьютер. Так же можно, как я понял, перепрошить Ардуино так, чтобы она отображалась, как джойстик/клавиатура/мышь и так же напрямую посылать команды. Вот туториал: http://mitchtech.net/arduino-usb-hid-keyboard/. Впрочем, мой способ меня полностью устраивает и результатом я более чем доволен.

Как ни крути, но Ардуино это замечательная платформа для подобных экспериментов.
Теперь осталось только собрать все это в виде отдельного устройства.

Ну и видео напоследок:

Подключаем джойстик от Dendy к компьютеру

В предыдущих новостях я опубликовывал сборники эмуляторов и игр к ним на Денди и Сега
И как многие уже поняли что в некоторые игры не совсем удобно играть на клавиатуре, а дорогой джойстик для компьютера очень дорогой да и ради того чтобы вспомнить молодость.

Уверен что у многих из вас ещё завалялись дендевские джойстики и вы задавались вопросом.
А можно ли его к кампУ подключить?
Оказывается можно и для этого нам понадобится:

* Джойстик (подключить можно до пяти штук)
* Паяльник
* 5 дидов(не особо мощных)
* Изолента
* Разъем “папа” LPT порта (он же параллельный, он же от принтера, он же DB25M)

Для справки – разъемы бывают “папа” – со штырьками и “мама” с дырочками под штырьки, откуда пошли такие аналогии можно только догадываться. Подключаем джойстик от приставки Денди к параллельному порту компьютера LPT своими руками
Итак, если Вы уже нашли у себя пару завалявшихся джойстика, необходимые запчасти, инструменты и запаслись энтузиазмом, то можно приступать.
Рассмотрим сначала порт LPT более подробно.
Если кто его не видел, показываю парочку таких выходов:

Если честно, то у себя на задней панеле я такого не нашел и залез поглубже. На метеринской плате LPT порт все-таки оказался.

В своей “коллекции” железок откапал необходимый штекер, который и подключил к материнке. Если Вы попали в аналогичную ситуацию и у Вас нет вывода LPT на задней панеле системного блока, но он присутствует на материнской плате подобный штекер можно найти на каком-нибудь радиорынке или у перекупщиков Б/У запчастей для компьютеров. На многих, особенно старых, материнских платах он не припаян жестко, а выносится именно таким штекером, поэтому найти его не должно составить особого труда:

Если же Вам повезло и у Вас такой выход имеется или Вы все-таки вы нашли этот штекер, то можно приступать к сборке схемы.
Что бы не загружать схему я не стал делать надписи на самой картинке, а все нужные нам контакты обозначил цветами. Отдельные контакты параллельного порта предназначены для различных целей: одни – для ввода, другие – для вывода данных. Особо вдаваться в тонкости работы копьютера и LPT-портов не будем. Думаю, достаточно будет объяснить только те, которые нам понадобятся. Итак:

* Желтый – Clock
* Ораньжевые контакты – с них питаем джойстик (около 5В). Обязательно только через диоды, иначе можно спалить LPT контроллер на материнской плате или всю мат. плату.
* Синий – Земля
* Зеленый – Latch
* Голубой – Управляющий контакт (10 контакт для первого джойстика, 11 – для второго, 12 – для третьего, 13 – для четвертого, 15 – для пятого). Имейте В Виду, что штырек 14 не использован, так как он не является входом параллельного порта.

Если Вам интересно, то Clock и Latch это два входных бита, которые управляют последовательной передачей.
В виду того, что клонов приставки NES (Денди) было превеликое множество поэтому и разъемов подключения джойстика к приставке было несколько. Цвета контактов обозначены соответственно цветам в Схеме разъема LPT. Отличает лишь замена ораньжевых контактов одним красным, т.к. питание берется с 5-ти контактов, а подается на джойстик через один. Представлено 3 наиболее распространненых:

Для этих, наиболее распрострранненых разъемов привожу соответственно три аналогичные схемы.

На схемах должно быть все достаточно понятно. Но, без комментариев схемы оставить не могу. Во-первых, напомню, что питать джойстик надо через диоды. Что это такое? Это, грубо говоря, выпрямители тока, т.е. они в одну сторону ток пропускают, а в другую нет. Таким образом, с LPT порта ток проходит, а вернуться на него через эти контакты диоды-то и не дают. Проверить диод у Вас в руках или нет Вы можете с помощью обычного мультиметра. Ток должен проходить от LPT к джойстику, а не как не наоборот. Если у Вас нет мультиметра, можете довериться подсказке на диоде – на них наносят полоску или схематичное изображение диода. На картинке ниже стрелкой указано направление протекания тока и соответствующее положение диода.

Таким образом, на диодах есть маркировка, и их следует припаивать полосочкой вверх, как на рисунке ниже. Просто припаиваете проводки по схеме к LPT и все.

Вторым важным моментом является подключение двух и более джойстиков. NES/SNES джойстики имеет линию Data, выше она названа управляющим контактом и на схемах обозначена голубым цветом. Она уникальна для каждого устройства (если их у Вас несколько) и каждый геймпад имеет свой собственный штырек Data.

(pin 10) —–> Pad 1 data – для первого геймпада
(pin 11) —–> Pad 2 data – для второго геймпада
(pin 12) —–> Pad 3 data – т.д.
(pin 13) —–> Pad 4 data
(pin 15) —–> Pad 5 data

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

После всех манипуляций у меня получилось вот что:

5 одинаковых диода я не нашел, пришлось один взять отличный от других. Лучше конечно, если все 5 будут одинковые. Если одинаковых нет, то по параметрам они должны быть примерно одинаковы, т.е. надо что бы сопротивление их не сильно отличалось.
Разъем DB25M можно взять со шнура нуль модема или со старого принтерного кабеля (Centronics’а). Лишь бы он был разборным. Хотя, конечно, можно и разрезать сам кабель и прозвонить мультиметром. Откуда я взял такой разъем? Все с той же “коллекции” компьютерного барахла. Подключаем джойстик от приставки Денди к параллельному порту компьютера LPT своими руками С другой стороны мой разъем имел не огрызки проводов с другой стороны, а вполне приличный разъемчик, который я не стал разбирать, а “понавтыкал” в соответственные “дырки” провода и соеденил с разъемом джойстика. В итоге получилось очень даже аккуратно:

Иногда, особо жадные производители, подключали джойстики к приставке не внешним разъемом, а внутренним или того хуже – припаивали к плате приставке. Но и из этой ситуации я предлагаю для Вас выход. Разбираем свой джойстик. На фотографиях ниже, я обвел нужные нам контакты кружечками соответственных цветов. Эти две фотографии, по сути, один и тот же джойстик с разных сторон для наглядности. Две фотографии ниже можно увеличить кликнув по ним. Далее прозваниваем эти контакты с другими концами провода и соединяем по любой из схем выше, что и в случае с путевым разъемом. Только в этот раз у нас не разъем, а заранее промаркированые провода.

Это все что касается аппартной части. Читайте вторую часть – программную или как правильно настроить драйвера для дендевских джойстиков [появится в ближайшие дни].

Конструкция очень простая. Но, прежде чем проверять сделанный вами интерфейс, дважды убедитесь, что все провода припаяны правильно, и, что никакие оголенные провода не касаются чего-нибудь. Я сильно рекомендую использовать корпус для этих интерфейсов, чтобы уменьшить риск короткого замыкания.

NES И SNES имеют разные разъемы. Также, есть очень много аналогов NES (среди них наш российский Денди, Кенга и д.р.), и поскольку компания Nintendo использовала патентованые разъемы для своих фирменных машин, производители клонов не могли повторять их и использовали стандартные разъемы D-Cannon. Во всяком случае, если у вас есть gamepad, и у него есть кнопки A, B, Turbo A, Турбо B, Select и Begin (последних двух может и не быть) и связывается через 5 проводов, тогда это или NES или аналог NES и будет работать если Вы все сделаете правильно. SNES gamepads также используют 5 проводов, но имеют больше кнопок, поэтому подключаются несколько иначе. Более подробно можетеузначть через поисковики.

Теперь небольшой FAQ по теме:

1. Вопрос: Можно ли будет таким джойстиком играть в обычные РС-шные игры?

Ответ: Да, конечно, если в играх есть поддержка геймпада.

2. Вопрос: Вы сами подключали джостик?

Ответ: Да, подключал, даже 2 пары приходилось делать, они у меня отлично работают!

3. Вопрос: Какой драйвер мне использовать?

Ответ: Самым универсальным драйвером является PPJoy. Для сеговского 6-ти кнопочного джоя рекомендуется XYZModeB, по той причине, что XYZModeB устраняет произвольные нажатия в этом джойстике.

4. Вопрос: Существуют ли другие схемы пайки?

Ответ: Существуют и другие схемы. Их можно найти, например, в комплекте драйвера PPJoy или через поисковик.

5. Вопрос: Подскажите, какие мне выбрать диоды?

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

6. Вопрос: А зачем вообще нужны диоды?

Ответ: Диоды нужны для выпрямления напряжения с нескольких пинов LPT-порта. Это, в свою очередь, необходимо для запитки джойстика.

7. Вопрос: Можно ли обойтись без диодов?

Ответ: Да, можно. В этом случае придется применять отдельный блок питания (4,5 – 5,0 В). При этом Вы исключаете из схемы пайки блок диодов (то есть эти пины вообще не должны быть задействованы), и вместо него берете напряжение с контакта «плюс» внешнего блока питания, а контакт «минус» замыкаете на «землю» параллельного порта (пины с 18-го по 25-й).
Предупрежу сразу – внешний источник питания более надежен в плане обеспечения питания джойстика, однако риск спалить ЛПТ-порт в случае неправильного подключения повышается в разы. Поэтому я этот способ рекомендую только тем, у кого работа джойстика связана с явной нестабильностью (а также для подключения двух и более джойстиков).
Исключительным способом подключения без диодов и внешнего питания является схема Сега-Линукс из пакета PPJoy.

8. Вопрос: Я все спаял и у меня нихрена не работает (варианты: работают не все кнопки, кнопки работают неправильно).

Ответ: Для начала напишите какой джойстик подключаете, какая у Вас операционная система, каким драйвером пользуетесь и по какой схеме паяете. Как показывает практика, в 70% случаев причиной данной проблемы является неправильная спайка. Поэтому еще раз (хоть в десятый, хоть в двадцатый раз) проверьте правильность спайки и ориентацию диодов. Если Вы уверены на 100%, что все спаяно правильно – пишите в комментариях или в форум.

Cхемы и особенности подключения джойстиков игровых приставок к PC

Cхемы и особенности подключения джойстиков
игровых приставок к PC

В персональных компьютерах в играх для управления в основном используются клавиатура и мышь. Однако, в некоторые игры удобнее играть при помощи джойстика или геймпада, например в автосимуляторы или спортивные – футбол, хоккей и т.д. Для этой цели можно применить джойстики от игровых приставок. Любители компьютерных игр начали подключать привычные и удобные джойстики от игровых видео приставок к своим компьютерам с 1999 г., когда для их обслуживания появился программный пакет DirectPad Pro, бесплатно распространяемый через Интернет. Но нередко случается, что вполне исправный джойстик отказывается работать с компьютером. Предлагается решение этой проблемы, предоставляя к тому же полезную во многих играх возможность увеличить число одновременно подключенных к компьютеру джойстиков.

Джойстики от игровых приставок соединяют с параллельным портом LPT1 или LPT2 компьютера через переходники всего из нескольких малогабаритных диодов. В Интернете несложно найти схемы подключения джойстиков от приставок “Atari”, “TurboGrafX-16”, “Genesis” (“Sega Mega Drive-ll”), “NES” (“Dendy”), “PlayStation” (в том числе джойстик “DUAL SHOCK”), “SuperNES”, “Sega Master System”, “Nintendo-64”, “Sega Saturn”, ‘Jaguar”, “Virtual Boy”. Сами джойстики никакой переделки не требуют и работают, как правило, без внешнего источника питания.

Наиболее распространены в странах СНГ джойстики от “Dendy”, “PlayStation” и “Sega Mega Drive”. Последние, к сожалению, принципиально несовместимы с некоторыми материнскими платами компьютеров недавней разработки.

Джойстики первых двух типов успешно используют многочисленные любители игр, установившие на своих компьютерах пакет DirectPad Pro.

Но иногда джойстики, нормально взаимодействующие с игровой приставкой, отказываются работать, будучи подключенными к компьютеру. К тому же при подключении к LPT-порту нескольких джойстиков одновременно не удается обойтись без внешнего источника питания.

Основных причин этому — две. Во-первых, недостаточна нагрузочная способность используемых для питания джойстиков линий LPT-порта. Уже под нагрузкой 3. 4 мА уровень лог. 1 (с учетом падения напряжения на диодах переходника) падает ниже необходимого для работы микросхемы джойстика минимума — 3 В. Во-вторых, проявляется свойственный КМОП-микросхемам тиристорный эффект — внезапное резкое увеличение потребляемого тока.

Последнее явление связано с открыванием обычно надежно закрытого “паразитного” тиристора, образованного внутри микросхемы участками полупроводникового кристалла различной проводимости. Оно становится возможным, если напряжение на логическом входе микросхемы превышает напряжение питания, и происходит, как правило, в моменты включения питания или “горячей”, без выключения питания, перестыковки разъемов.

Именно такие ситуации возникают при подключении джойстика к LPT по “стандартной” схеме. Напряжение на его логических входах повышено, так как в отличие от вывода питания они соединены с линиями порта непосредственно, без разделительных диодов и не потребляют от них заметного тока. Ситуацию усугубляет обычно имеющийся в цепи питания джойстика и разряженный в момент включения блокировочный конденсатор.

Нужно сказать, что не все КМОП-микросхемы подвержены тиристорному эффекту в одинаковой мере. Он характерен, например, для микросхем КР537РУ10, КР1146ФП2, но редко проявляется в таких распространенных сериях, как К561, КР1561 и многих других, изготовленных с использованием специальных приемов — охранных колец, МОП-транзисторов с вертикальным каналом и окольцовывающим затвором, технологии КНС (кремний на сапфире).

В данной статье мы рассмотрим способы подключения этих джойстиков к персональному компьютеру. Сначала несколько общих рекомендаций.

Как правило, схемы подключений очень простые и содержат небольшое число радиоэлементов. Для подключения джойстиков используется LPT-порт компьютера. Можно также использовать мультикарту, которая устанавливается в ISA разьем расширения на материнской плате. Мультикарта применялась в старых моделях PC и представляет собой плату с контроллерами LPT, COM портов, флоппи диска и т.п. Мультикарт существует несколько разновидностей. Для наших целей необходима мультикарта, в которой есть контроллер и соответственно разъём LPT порта. Кстати, применяя мультикарту, исключается риск в случае ошибки сжечь выходные цепи контроллера LPT порта в материнской плате. А если сгорит мультикарта, то материальный ущерб от этого не будет столь ощутимым.

При подключениях желательно кабель джойстика не разрезать – он может пригодиться еще по своему прямому назначению. Лучше попробовать найти ответную часть разъёма для подключения джойстика к интерфейсу PC. Если ответную часть разъёма найти не удалось, то можно разобрать какой-нибудь разъём (вилку или розетку – в зависимости от того, какой вид разъёма у джойстика) с подходящими по размеру штырьками или гнездами и их использовать для подключения. Разумеется, что в данном случае каждый штырек или гнездо придется подключать к контакту разъёма джойстика отдельно. Во избежании короткого замыкания на каждое гнездо (или штырек) надевается кембрик подходящего диаметра и все это обматывается изоляционной лентой и той же лентой прикрепляется к корпусу разъёма джойстика. Внешне выглядит это не очень красиво, зато надежно – не будет замыканий да и гнезда (или штырьки), подключенные к разъёму джойстика, не будут выскакивать.

При подключении к параллельному порту возникают проблемы с питанием джойстика, потому что сам порт не имеет выхода питания +5 В или другого. Конечно, можно взять напряжение питания с игрового порта или непосредственно с блока питания компьютера. Такое решение вполне возможно, но создает дополнительные проблемы. В данном случае можно поступить проще. Напряжение питания может быть получено со штырька данных порта LPT. Для геймпадов с малым потреблением тока достаточно использовать выпрямленное напряжение со штырька 9. Для джойстиков с относительно большим током потребления используется выпрямленное напряжение сразу с нескольких штырьков данных, например с 3 по 9. Штырьки соединяются с анодами (+) выпрямительных диодов, а диоды, в свою очередь катодами (-) соединяются в одну точку, которая подключается к проводу питания джойстика. В качестве общего провода любой штырек LPT порта с 18 по 25.

В качестве примера рассмотрим подключение джойстика от игровой приставки SONY PlayStation.

Рис.1

Вид разъёма на рисунке показан так, если на него смотреть со стороны штырьков. Имеется возможность подключить одновременно 2 джойстика. В данном случае все идущие ко второму джойстику провода на приведенной схеме дублируются кроме подключенных к DB25-10 и DB25-12. Провод второго джойстика вместо DB25-10 подключается к DB25-13, а вместо провода DB25-12 соответственно DB25-15.

Следует учесть, что при одновременном подключении двух джойстиков параллельный порт уже не сможет обеспечить необходимой мощности в цепи питания, поэтому придется использовать другой источник питания. Как уже говорилось выше, можно использовать напряжени + 5 B непосредственно от блока питания компьютера или воспользоваться любым внешним источником с выходным напряжением 4.5 – 5 В и током 100 – 150 mA. Дополнительный источник питания подключается так: все диоды с контактов DB25-5 – DB25-9 удаляются, а плюс дополнительного источника питания подключается в ту точку, где были соединены катоды диодов. Общий провод дополнительного источника соединяется с DB25-18/19. Схема подключения двух джойстиков приведена ниже.

Рис.2

Показанный на рисунке ещё один источник питания +9 В предназначен для питания встроенных двигателей геймпада Dual Shock (функция вибрации). Если эта возможность джойстика не используется или подключается простой джойстик (не Dual Shock), то этот источник питания не подключается. При необходимости в использовании данной функции следует подключить источник питания напряжением 9 В в соответствии с приведенной схемой.

Схемы подключений других джойстиков можно посмотреть в таблице.

Читайте также:  Панель управления на компьютер
Ссылка на основную публикацию
Призма – Статистика