Приставки > Джойстики и прочие манипуляторы

Подключение приставочных джойстиков через USB

(1/33) > >>

Олег:
Похоже наша мечта сбылась - быстро все в магазин за свежим журналом "Радио", все остальные - спамить на сайт www.paguo.ru с требованием выложить статью на сайте.


--- Цитата ---С. Рюмик. Подключение джойстиков от игровых приставок к шине USB.
 Автор рассказывает, как изготовить простой адаптер на МК, позволяющий подключить к разъему USB компьютера джойстик от игровой видеоприставки. Статья будет полезна не только любителям поиграть в «приставочные» игры на компьютере, но и всем, кто интересуется применением интерфейса USB в своих конструкциях.
 Микроконтроллерный узел предлагаемых адаптеров выполнен на МК Atmega8-16PI. Даны схемы подключения к нему джойстиков от Dendy (до четырех штук), от Sega (до двух штук) и от PSX (до двух штук). Есть чертежи печатных плат для всех трех вариантов адаптеров.
 Программы МК для всех адаптеров и проекты печатных плат в формате P-CAD 2001 будут размещены на нашем FTP-сервере по адресам и соответственно.

--- Конец цитаты ---

HardWareMan:
http://www.emu-land.net/forum/index.php/topic,67&page=6
Тут было первое упоминание о Сеговских джоях на USB. Потом никто ничем подобным на АТМеге не занимался, а существующий проект был, для подключения PSX джоев, на Cypress'е вроде. Короче на экзотическом контроллере.

Олег:
Ну вот в том-то и фишка - кульное устройство на дешевом микроконтроллере. Единственное что я понял из статьи - с вибрацией пока вопрос не решён. На днях постараюсь выложить оригинал статьи с картинками. Самое смешное - схемки крайне простые, в "Радио" их развели на двусторонние платы.

Rumata:
Олег, свежий - это январский? Просьба указывать источник более точно. И не вижу необходимости набирать пост жирным шрифтом, а то это и правда начинает походить на спам.
HardWareMan, как знать. Мы же не знаем, кто такой "Масяниня". У Рюмика уже были подобные разработки, правда весьма бесполезные. Были дешифраторы (на микроконтроллере) для разных джойстиков, было устройство для проверки (!!!) джойстиков. Бесполезные - потому, что стоимость такой "проверки" выше стоимости дюжины новых джойстиков. Подробности опускаю, если кому сильно интересно - могу указать номера журналов (или ищите на сайте Радио)
Вопрос с вибрацией сводится к написанию драйвера, при обычном HIDе её не будет.

--- Цитата: Олег ---Самое смешное - схемки крайне простые
--- Конец цитаты ---
Знаешь, сделать сложные на микроконтроллере - это надо суметь

HardWareMan:

--- Цитата: Rumata;115464 ---Олег, свежий - это январский? Просьба указывать источник более точно. И не вижу необходимости набирать пост жирным шрифтом, а то это и правда начинает походить на спам.
--- Конец цитаты ---
[/COLOR]
Судя по ссылке (точнее ее части) "/2007/01/", то действительно 1 номер за 2007 год.

--- Цитата: Rumata;115464 ---HardWareMan, как знать. Мы же не знаем, кто такой "Масяниня". У Рюмика уже были подобные разработки, правда весьма бесполезные. Были дешифраторы (на микроконтроллере) для разных джойстиков, было устройство для проверки (!!!) джойстиков. Бесполезные - потому, что стоимость такой "проверки" выше стоимости дюжины новых джойстиков. Подробности опускаю, если кому сильно интересно - могу указать номера журналов (или ищите на сайте Радио)
--- Конец цитаты ---

Тоже верно. Хотя, док щас много по имплементации программной реализации протокола интерфейса USB.

--- Цитата: Rumata;115464 ---Вопрос с вибрацией сводится к написанию драйвера, при обычном HIDе её не будет.
--- Конец цитаты ---

А разве HID поддерживает feedback? Надо спецификацию почитать.
Кстати, я даже как-то хотел сделать универсальный джойстиковый хаб. типа девайса на большой АТмеге (чтобы портов хватило) и каждого типа гнезд по 2 (Dendy, Sega, SNES и PSX). 2 светодиода и кнопка выбора режима (для одного из типов джойстиков). Было бы круто, а щас сыр Рюмиковских девайсов доступен, так чтто возможно скоро и будет.
PS После анализа сыра выяснилось, что USB была сделана раньше и кем-то другим. Рюмик просто использовал.

--- Цитата: Из исходников ---LICENSE FOR PROJECTS BUILT WITH "OBJECTIVE DEVELOPMENT'S
FIRMWARE-ONLY USB-DRIVER FOR ATMEL'S AVR MICROCONTROLLERS"
Version 2006-01
/* Name: usbdrv.c
 * Project: AVR USB driver
 * Author: Christian Starkjohann
 * Creation Date: 2004-12-29
 * Tabsize: 4
 * Copyright: (c) 2005 by OBJECTIVE DEVELOPMENT Software GmbH
 * License: Proprietary, free under certain conditions. See Documentation.
 * This Revision: $Id: usbdrv.c 174 2006-03-23 10:09:01Z cs $
 */

--- Конец цитаты ---

Олег:

--- Цитата: Rumata;115464 ---Знаешь, сделать сложные на микроконтроллере - это надо суметь
--- Конец цитаты ---

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

Rumata:

--- Цитата: HardWareMan ---А разве HID поддерживает feedback?
--- Конец цитаты ---
Как я понимаю, не поддерживает, без драйвера

--- Цитата: HardWareMan ---После анализа сыра выяснилось, что USB была сделана раньше и кем-то другим. Рюмик просто использовал
--- Конец цитаты ---
Это не удивляет, хотя не могу поставить это в минус автору. Надо прочитать исходную статью в Радио

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

Олег:

--- Цитата: Rumata;115483 ---Крайне рекомендую соблюдать осторожность в этом вопросе. Не хотелось бы в дальнейшем бодаться с редакцией Радио по поводу публикации без разрешения редакции
--- Конец цитаты ---

Тоже правильно :( , в таком случае - собираем казино и идём спамить на мыло журнала, чтоб выложили статью на сайте.

Rumata:
Вот завтра - послезавтра доберусь до магазина, куплю журнал, если будет, и обсудим подробности. :)

HardWareMan:

--- Цитата: Rumata;115492 ---Вот завтра - послезавтра доберусь до магазина, куплю журнал, если будет, и обсудим подробности. :)
--- Конец цитаты ---

Купишь журнал - поскань мне эту статейку, ладно? И намыль.

[позже]

Поимел пока распознанные сканы статьи: http://vis-image.narod.ru/Joy.rar Попозже будут оригинальные JPGи. Спасибо PuM'у.

Олег:
Порадовало наличие на ФТПшнике пикадовских печатных плат, на днях постараюсь развести на одностороннюю печатную плату

Rumata:
В том же номере Радио, на той же странице, обнаружил интересную рекламу: http://www.progm.nm.ru. Прошитый ATmega8 у них стоит 200р

Yoric:
Кто-нибудь знает что надо изменить в программе, чтобы в аналоговом режиме крестовина (вверх, вниз, влево, вправо) работала как дополнительные 4 кнопки? И ещё почему-то при использовании программы для одного джойстика зажимаются кнопки вниз-вправо (и ещё что-то вроде-бы), даже если к схеме не подключать джойстик, при этом программа для двух джойстиков работает отлично, но дело в том что два джойстика мне не надо.

Rumata:
Похоже на косяк исходого кода. Я так понимаю, речь о джойстике PS. Там цифровая крестовина в аналоговом режиме должна восприниматься как "переключатель вида" или типа того. Завтра проверю по китайским переходникам

Yoric:
Да, я имел ввиду, конечно же, джойстики PS. С программированием имел дело впервый раз, но всё равно заставил я эту программу работать как мне надо :). Добавил ещё 4 кнопки (было 12, стало 16) и сделал чтобы они работали только в аналоговом режиме. Программа эта теперь предназначена для одного джойстика (как мне и надо было:)).

Cruel:
Хм, интересно, если LPT в будующем упразднят, все равно придется что-то похожее собирать. Кроме того, это может решить проблему НовыйСеговскийДжойстик+виндаXP у них ведь проблема с таймингами в PPjoy (при нажатии крестовины нажимаются X Y Z и MODE)... Ну это уже от драйвера будет зависеть.

HardWareMan:
Данная тема - единственный 100% вариант. Только, я бы все-таки сделал некий "джойстиковый хаб". Т.е. выбрал бы АТМегу поболее ног и поставил бы много разных гнезд + пару кнопок и светодиодов для выбора режима.

Rumata:
Cruel, собирать подобное имело смысл ещё вчера :)
HardWareMan, не уверен, что это целесообразно, хотя, дело вкуса. Впрчем, если оформить его как вставку в 5" отсек, может получиться интересно. Типа 2 NES, 2 MD, 2 PSX и переключатель NES - MD - PSX. Правда, возникает вопрос: не будут ли они путаться между собой в системе (скорее всего, будут)? Делать же подключенными все сразу через один порт явно не стоит: частота опроса будет слишком низкой

Итересная идея представлена в http://www.joystiq.com/2004/09/07/how-to-make-a-nintendo-controller-into-a-pc-joystick , он же Литература [4] у Рюмика. Правда, там не ATmega, а PIC, но принцип тот же. Кстати, сам давно пользуюсь подобным. Внутрь оригинального SCPH-1080 вставил платку из китайского переходника. Очень удобно

Cruel:
Ну пока еще рано... Как там дела с ПО? Без софта получится дохлая железка. Для меня даже Бейсик - темный лес. ^_^

Rumata:
Каким ПО? В Виндах поддержка HID встроена. Или ты всё ещё в Вин98?

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии