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

Опрос
Вам нравится Дональд Трамп?
Да
Нет

Пошаговая инструкция по изготовлению модифицированного контроллера MJoy16

Часть 1. Список необходимой документации, деталей и инструментов

1.1 Документация

Инструкции и прошивка к оригинальному контроллеру MeanDog'а:

Инструкции и схемы модифицированного контроллера:

  • эта инструкция (она же схема подключения и схема печатной платы).

Программное обеспечение:

1.2 Детали

Контроллер:

  • микросхема ATmega16-16PI (или PU) в корпусе DIP-40, 1 штука;
  • панелька под нее, на 40 ножек;
  • конденсатор электролитический 10 микрофарад 15 вольт, 1 штука;
  • конденсаторы 15 пикофарад, 2 штуки;
  • конденсаторы 0,1 микрофарады, 3 штуки;
  • индуктивность 10 микроГенри, 1 штука;
  • стабилитроны 3,3 вольта, 2 штуки (1N4733A или аналогичные);
  • кварцевый резонатор 12 мегагерц, 1 штука;
  • резистор 2,2 килоОма – 1 штука;
  • резистор 4,7 килоОма – 1 штука;
  • резисторы 82 Ома – 2 штуки;
  • диоды 1N4148 или аналогичные – по одному на каждую кнопку, плюс 4 на HAT-switch;
  • кабель USB A-B;
  • одинарная гребенка с 40 контактами – 2 штуки (отламываются по необходимости);
  • одинарные контактные разъемы – по необходимости;
  • пластиковый хомутик для закрепления кабеля, шириной 2,5 или 3 мм.

Все резисторы – 0,125 Ватта, но можно и большей мощности.

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

Программатор:

  • 25-контактный разъем (папа) или LPT кабель – 1 шт;
  • резисторы 330 Ом – 4 штуки.

Расходные материалы:

  • хлорное железо;
  • ацетон;
  • спирт;
  • припой;
  • флюс (канифоль или паяльная кислота);
  • мелкая наждачная бумага.

Инструменты:

  • ножницы;
  • паяльник;
  • пинцет;
  • кусачки (бокорезы);
  • сверла 0,8 мм и 3 мм;
  • дрель, способная их зажать.

Часть 2. Подготовка, травление и подготовка печатной платы

2.1 Печать заготовки

Как и в любой лазерно-утюжной технологии, работа над печатной платой начинается с печати ее зеркальной копии. Перед печатью в настройках лазерного принтера устанавливаем максимальную плотность тонера и максимальный контраст изображения. Разрешение роли не играет – 300 dpi ничуть не хуже 600 dpi.

Бумагу лучше использовать из глянцевых журналов, но может подойти и газетная (минус газетной бумаги – может порваться и застрять в принтере).

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

2.2 Закрепление тонера

Сначала необходимо подготовить плату – снять верхний слой окислов. Проще и надежнее всего окунуть плату в заранее подготовленный раствор хлорного железа на 3-5 секунд (см. пункт 2.4) и протереть ее ваткой, смоченной в спирте или ацетоне. Если же раствор еще не готов – можно пройтись мелкой шкуркой, и затем – опять таки спиртом или ацетоном.

После подготовки платы действуем быстро, чтобы не дать ей сильно окислится. Вырезаем ее изображение с тем расчетом, чтобы бумага с каждой стороны была чуть шире (5-8 мм), чем размер платы.

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

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

2.3 Очистка от бумаги, осмотр и коррекция платы

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

После того, как бумага размокла – очень и очень аккуратно, пальцем, начинаем скатывать бумагу с рисунка дорожек. Не забываем смывать скатанную бумажную кашицу. Оттирать бумагу слишком тщательно не нужно – есть риск сковырнуть тонер.

Время от времени слегка подсушиваем плату и смотрим – подсохшие дорожки должны быть с белесым налетом (остатками бумаги). Если налета нет – то в этом месте больше не трем.

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

2.4 Травление

Итак – плату проверили, бумагу отчистили. Сколотый тонер закрасили лаком и дали ему высохнуть. Теперь переходим к самому главному – травлению.

Готовим деревянную палочку (а лучше – две) и емкость для травления из стекла или пластмассы. Наливаем в нее немного теплой или чуть горячей воды, и тщательно разводим в ней хлорное железо – 1 часть реактива на 3 воды.

Опускаем плату в емкость рисунком вниз (чтобы продукты реакции опускались на дно, и не мешали дальнейшему травлению), и ждем, периодически помешивая и переворачивая плату. В зависимости от концентрации и температуры раствора, процесс занимает от 20 до 40 минут. Главное здесь – не передержать плату, чтобы не вытравить медь из-под рисунка.

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

2.5 Лужение, сверление и подрезка

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

Если лудить собираемся более чем через час – тонер можно не счищать. Но если тонер все-таки сняли – то лучше сразу покрыть медь спирто-канифолевым лаком.

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

Если в качестве флюса использовали паяльную кислоту – после лужения нужно обязательно промыть плату под теплой водой, с мылом и щеткой. Паяльная кислота – очень агрессивный флюс, и если вовремя не избавиться от его остатков – плату вскоре можно будет выбрасывать.

Затем сверлом диаметром 0,8 мм делаем отверстия со стороны меди. На дрель сильно не давим, и стараемся держать ровно. Если есть маленький сверлильный станочек – задача совсем упрощается.

Крепежные отверстия намечаем сверлом на 0,8 мм, а затем аккуратно рассверливаем трехмиллиметровым.

Как вариант – можно зажать сверло 0,8 мм в цанге большего диаметра, предварительно сунув его в изоляцию от провода чуть большей толщины. Разумеется, сидеть оно будет не настолько прочно – но будет прощать перекосы без поломки сверла.

Часть 3. Монтаж и пайка элементов

3.1 Монтаж, обрезка и подготовка элементов

Монтировать элементы можно двумя способами. Первый – просто вставить нужный элемент на место, загнуть его ножки в стороны (чтобы не выпал), и припаять. Затем бокорезами отрезать лишнее.

Второй – предварительно примерить элемент на плату и отрезать ножки – оставив 2-3 мм. Разумеется, в этом случае сам элемент держаться не будет – поэтому при пайке его придется придерживать с обратной стороны пинцетом или пальцем (главное тут – не обжечься).

Если вы используете неактивный флюс (например канифоль), то перед пайкой ножки элементов необходимо обезжирить – ваткой со спиртом или обычным ластиком.

Если же флюс активный – то зачисткой можно не заниматься.

3.2 Пайка элементов и проверка платы

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

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

Отрезаем от кабеля USB квадратный (B) разъем, и аккуратно снимаем около 5 см изоляции. Кончики всех проводов обрезаем до 3-4 мм (кроме оплетки, идущей на корпус разъема) и аккуратно залуживаем. Припаивать начинаем с нижнего (зеленого) провода. Контакт, идущий на корпуса разъема, залуживаем полностью, и аккуратно заводим на общую массу (GND), на обратной стороне платы. Крепко фиксируем кабель пластиковым хомутиком (в случае компактной версии – аккуратно выпиливаем или выкусываем верхнюю перемычку кроватки, и заводим хомутик не с тыльной, а с лицевой стороны платы).

Теперь очищаем плату от остатков флюса. Если использовали канифоль или другой спирторастворимый флюс – то опускаем плату в спирт, если водорастворимый – то в воду. Даем полежать полчасика, вытаскиваем, сушим – и переходим к следующему пункту.

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

Тщательно проверяем (а лучше – прозваниваем) плату на предмет непропая и замыканий. Подключаем к USB, и если ничего не загорелось и не задымилось – переходим к следующему пункту.

3.3 Пайка программатора

Разбираем разъем LPT, и припаиваем перемычки.

1. Контакты 20, 21, 22, 23, 24, 25 замыкаем между собой и провод от них пускаем на массу (GND) контроллера.

2. Устанавливаем перемычку между контактами 2 и 12 (на разъеме LPT) и между контактами 3 и 11 (на разъеме LPT).

3. Теперь подпаиваем четыре провода:

  • Контакт LPT 6 – резистор 330 Ом – нога контроллера 8;
  • Контакт LPT 7 – резистор 330 Ом – нога контроллера 6;
  • Контакт LPT 9 – резистор 330 Ом – нога контроллера 9;
  • Контакт LPT 10 – резистор 330 Ом – нога контроллера 7.

Резисторы можно спрятать внутрь самого разъема, для экономии места. Остальные контакты на LPT-разъеме оставляем пустые. На провода, идущие к ногам, припаиваем одинарные разъемы (или просто залуживаем – если не планируем использовать его часто).

Часть 4. Подготовка и запуск

4.1 Программирование

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

Подключаем разъемы программатора и землю (GND) к соответствующим разъемам на плате микросхемы. Затем – разъем программатора к LPT-порту, а разъем контроллера – к USB (именно в этой последовательности, USB после LPT).

Устанавливаем и запускаем PonyProg 2000. При первом запуске он может попросить калибровку – соглашаемся. Если не попросит – то делаем ее самостоятельно: Setup > Calibration > Yes.

Затем, выбираем тип интерфейса: Setup > Interface Setup. Ставим галочку на Parallel, выбираем Avr ISP I/O и порт, к которому подключен программатор (обычно LPT1).

Окно «I/O port setup» в программе PonyProg 2000

Рис. 1. Окно «I/O port setup» в программе PonyProg 2000

Выбираем производителя и тип микросхемы: Device > AVR micro > ATmega16, затем стираем данные на контроллере: Command > Erase (ни в коем случае не спутать с Reset!).

Загружаем файл с микропрограммой: File > Open Program (FLASH) File, выбираем MJoy16.hex, и затем записываем его в микроконтроллер: Command > Write Program.

Затем, загружаем файл данными: File > Open Data (EEPROM) File, выбираем MJoy16.eep, и точно так же записываем его: Command > Write Data.

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

Итак, жмем Command > Security and Configuration Bit, затем – Read, и выставляем галочки, как показано на рисунке.

Окно «Configuration and Security bits» в программе PonyProg 2000

Рис. 2. Окно «Configuration and Security bits» в программе PonyProg 2000

Иными словами – все фьюзы выставлены в 1, кроме BOOTSZ1, BOOTSZ0 и SUT0 (все верно – наличие галочки означает 0, ее отсутствие – 1). На фьюзу SPIEN не обращаем внимания – изменить ее в режиме программирования ISP невозможно.

Главное – CKSEL0-3 должны быть выставлены в 1-1-1-1 (т.е. галочек быть не должно!). При этом микросхема будет брать частоту с внешнего кварцевого резонатора – что, собственно, нам и нужно.

После программирования фьюз отключаем и снова включаем разъем USB. Если все прошло успешно, то контроллер найдется и определится как MJ16 – игровое устройство с 9 осями и 112 кнопками.

4.2 Подключение датчиков и кнопок

Схема расположения элементов на модифицированной плате отличается от оригинальной – см. приложение 5.2.

Часть 5. Приложение

5.1 Печатная плата

Модифицированная печатная плата

Рис. 3. Модифицированная печатная плата

Размеры модифицированной печатной платы – 57,14 на 34,27 мм.

Компактная версия модифицированной платы

Рис. 4. Компактная версия модифицированной платы

Компактная версия модифицированной платы – для крепления кабеля USB придется аккуратно выпилить или выкусить верхнюю часть кроватки. Размеры – 52,07 на 34,27 мм.

5.2 Схема расположения элементов, датчиков и кнопок

Схема расположения элементов, датчиков и кнопок

Рис. 5. Схема расположения элементов, датчиков и кнопок

Часть 6. Копирайты и благодарности

Автор оригинального контроллера и прошивки – Mindaugas Milasauskas (MeanDog).

Автор модифицированной платы – Олег Меркулов (fred kaa).

Последующая модификация платы, описание процесса изготовления – Артем Несмирный (tsinik).

В инструкции использован материал автора Eugen с сайта www.protu-154.com.

Приложение. Фотографии устройства от автора статьи

Модифицированная печатная плата

Рис. 6. Плата без установленной микросхемы

Модифицированная печатная плата

Рис. 7. Плата в сборе, вид сверху

Модифицированная печатная плата

Рис. 8. Плата в сборе, вид снизу

Модифицированная печатная плата

Рис. 9. Программатор в сборе

Модифицированная печатная плата

Рис. 10. Разъемы программатора

Артем Несмирный aka tsinik

Опубликовано: 18 августа 2008 г.

Обсудить на форумеОбсудить на форуме

Copyright © 2003–2018 Maxim Shalumov. All rights reserved. Server: HP ProLiant DL120 G7
Rambler's Top100 Рейтинг@Mail.ru