От контроллера Sega Genesis к USB-адаптеру за 2 доллара: 4 шага
От контроллера Sega Genesis к USB-адаптеру за 2 доллара: 4 шага
Anonim
От контроллера Sega Genesis к USB-адаптеру за 2 доллара
От контроллера Sega Genesis к USB-адаптеру за 2 доллара
От контроллера Sega Genesis к USB-адаптеру за 2 доллара
От контроллера Sega Genesis к USB-адаптеру за 2 доллара
От контроллера Sega Genesis к USB-адаптеру за 2 доллара
От контроллера Sega Genesis к USB-адаптеру за 2 доллара

Этот адаптер позволяет контроллеру Sega Genesis / Mega Drive эмулировать два геймпада XBox 360 для использования с Retroarch или другим программным обеспечением. Он использует Arduino-совместимую синюю таблетку stm32f103c8t6 для электроники.

Ингредиенты:

  • stm32f103c8t6 синяя таблетка
  • два штекерных разъема DB9 (сам сделал)
  • провода

Шаг 1. Подготовьте загрузчик и среду разработки

Подготовьте загрузчик и среду разработки
Подготовьте загрузчик и среду разработки
Подготовьте загрузчик и среду разработки
Подготовьте загрузчик и среду разработки
Подготовьте загрузчик и среду разработки
Подготовьте загрузчик и среду разработки

Подготовьте загрузчик и среду разработки Arduino.

1. Начните с выполнения приведенных здесь инструкций.

2. Примечание. К сожалению, сейчас существуют поддельные платы stm32f103c8t6 с измененной маркировкой IC. Эта перемаркированная ИС имеет только 32 Кбайт флэш-памяти и 10 Кбайт оперативной памяти, в отличие от 64 Кбайт (или даже 128 Кбайт) флэш-памяти и 20 Кбайт у оригиналов, и, возможно, это stm32f103c6. Если у вас есть один из них, то, когда вы собираетесь прошить загрузчик, STM32 Demonstrator сообщит вам, что у вас устройство с низкой плотностью 32K (см. Снимок экрана). Если вы находитесь в таком положении, убедитесь, что у вас есть последнее ядро и загрузчик Arduino, поскольку теперь они поддерживают это устройство более низкого уровня. И вам нужно выбрать Generic stm32f103c6 в Arduino IDE.

3. В ядре libmaple замените содержимое STM32F1 / libraries / USBComposite последней версией (или, по крайней мере, 0.92) отсюда. Это необходимо для поддержки двух контроллеров XBox360.

4. У синих таблеток неправильный резистор USB, обычно 10 кОм вместо 1,5 кОм. С некоторыми компьютерами они будут работать нормально, но с другими могут возникнуть проблемы. Проверьте свое сопротивление между 3,3 В и A12. Если это не 1,5 кОм, добавьте резистор параллельно между этими контактами, чтобы получить 1,5 кОм. Например, если у вас 10 кОм, добавьте резистор 1,8 кОм.

Шаг 2: установите Sketch

Установить Sketch
Установить Sketch

Получите мой набросок и загрузите его на доску. В зависимости от того, какой контроллер Xbox 360 вы хотите эмулировать, есть два варианта эскиза (совместимость может отличаться):

  • x360 проводной
  • x360 беспроводной.

Для моих целей ретроархии по умолчанию скетч отправляет движения левого джойстика в ответ на кнопки dpad, но если вы удерживаете кнопку START во время нажатия кнопок dpad, вместо этого он отправляет кнопки dpad XBox. Если вам это не нужно, закомментируйте строку:

#define START_ACTIVATED_DPAD

Подключите доску к компьютеру и убедитесь, что появляются два геймпада (они, конечно, не двигаются, так как у вас ничего не подключено к доске). В Windows нажмите win-R и введите joy.cpl, чтобы увидеть два геймпада.

Шаг 3: припой

Припой
Припой
Припой
Припой
Припой
Припой

Получите или сделайте свои два розетки DB9 (или только один, если это все, что вам нужно; в этом случае вы можете изменить код).

Теперь соедините их, как на двух схемах, с синей таблеткой. Вид здесь - с задней стороны разъема DB9, то есть со стороны, на которую вы паяете (или, что то же самое, с передней части гнездового разъема на контроллерах).

Шаг 4: Необязательно: чехол

Необязательно: чехол
Необязательно: чехол

У меня есть дизайн корпуса для 3D-печати для этого проекта, предполагая, что вы используете мои 3D-печатные сокеты DB9.