Zedomax DIY121 - Как да направите своя собствена "PS3 SIXAXIS контролер" стил ОСНОВНИ програмируеми USB-устройство!

Натиснете тук за да видите в режим на цял екран

USB устройства са лесни за потребителите да инсталират и създаде (доколкото всичко работи правилно). Често, просто включете в USB устройство и работи веднага. Това е особено вярно за входни устройства, като мишки и клавиатури.

Тези устройства да съответстват на спецификацията пластове на върха на протокол за USB: Human Interface Device. Почти всеки възможен вид на въвеждане е определен; цялата "доклад от ЕВРОВОК" език се използва да каже на компютъра как да обработва входа. Това не е много лесно да се приложат; десетки конкретни искания трябва да се работи правилно. Има много стъпки между включвате USB устройство и да могат да я използват; те всички се проведе в няколко милисекунди и неспособност на всяка стъпка означава устройство няма да работи.

Какво става, ако не сте да се притеснявате за някоя от това? Какво става, ако бихте могли да използвате любимите си микроконтролера, направи "нещо" и входа се появява на компютъра в правилния формат? Не би трябвало да се тревожи за комплекс код USB, HID спецификации, или счупване на вашия USB код при добавянето на други функции, които се нуждаете. Не би трябвало да се тревожи много за писане оптимизиран код, или винаги получаване на пътя на USB прекъсва.

HID портал

Точно това реших да направя. А преди няколко години, аз разработил устройство, USB и премина през всички главоболия на получаването на USB HID горе и тичане. Тъй като вече имах твърдия свършената работа, реших да добавите метод за получаване на данни от друг микроконтролер и работа с данни, че като входни данни за потока на код скри. Исках да използвам един Cubloc основното програмируем контролер за обработка на моите входни данни и да го изпратите на HID портал. Молбата ми тест ще бъде акселерометър, базирани HID джойстика; просто включете устройството в компютъра и той ще работи.

Той не трябва да се джойстик, той може да бъде една клавиатура, мишка, или много други видове контрол, определени от стандарта скри. Това е възможно да добавите бутони за управление обем на устройството ... може би има верига ням вашия компютър, когато звъни телефона? Превърнете всяка входно напрежение в джойстика ос, всяко преминаване в един бутон? Всичко е възможно!

Актуализация: Реших да се свие на хардуера CUBLOC определяне на CB220, и годни всичко в един самолет, модел. Моделът бе избран за мач на самолет на разположение в героите на играта Тихия ние използва за тестване на интерфейса джойстика.

Хардуер Разяснения

В HID портал е на базата на стария проект на мина, на базата на MC68HC908JB8 микроконтролера и програмирани по монтаж език. За определени причини не мога действително съобщение на кода точно сега, но има много други проекти, USB там, които могат да бъдат пригодени за тази цел. Има един отворен произхождащи мека изпълнение USB за микроконтролера ATTINY, например.

Моят микроконтролера не са вградени в I2C или SPI, така че е необходимо за изпълнение на една от моите собствени. Аз също не са на разположение прекъсват игли, което означава, ми е необходимо решение да се основава на изборите. Когато всичко е казано и направено и оптимизирано, не можех да открие ръбове по-бързо от 16kHz. Това е около десет пъти по-бавно, отколкото на прехода продукция на разположение от администратора CUBLOC, така че не биха могли да използват това. Аз накрая написах моята собствена смени на рутинни в ОСНОВНИ за да получите данни за HID портал. Това би могло да бъде избегнато чрез използване на микроконтролер, който е SPI или I2C построена през вече, но JB8 е това, което имах на ръка.

Аз използват три сигнали, за да общуват с администратора CUBLOC. Първо, това е сигнал, CLK. В HID портал открива въстание край. В този момент, се чете на стойност до момента на линия ДАННИ. Това е изместен в регистър, докато един байт е бил получен, и кода премине към следващия байт. В / RST линия е начин за синхронизиране на началото на всеки обмен на данни в случай, че е имало съмнителни вход; НИСКО когато тя определя пакета и индексите малко до нула.

В HID Порталът в момента е програмиран да действа като джойстик с три оси и осем копчета. Аз също го тестват, както от клавиатурата. В бъдещото развитие, бих искал да направи HID портал по-гъвкави, нека външните контролер изберете тип на устройството и колко от всеки вход са задължителни. Това ще бъде най-гъвкаво, ако те директно любимци HID дескриптори доклад, но това отваря възможност да се направи повече грешки и да се свърши с неработен устройство.

В акселерометър е DE-ACCM3D от измерение Инженеринг. В CUBLOC просто чете напрежение на своя Адин пристанища и конвертира на стойност между -127 и 127.

Продължава на Next Page

Оценявам

1 Star2 Stars3 Stars4 Stars5 Stars
Loading ... Loading ...
  • Джо Брок
    Интересувам се от една и съща сграда / подобен проект тип. Са били заниманията с VB.net, и не съм във всичко това.
    Още не сте побъркани с PIC's (микроконтролери) Как да програмирате на тези за USB порт или е, че част вече направи?
  • Фил
    Хей момчета страхотно проект ....

    Имате ли tihnk може да се прилага подобен процес да се разреши keyborad и настройка на мишката, за да работи с PS3 игри? Какво си мислех е, ако знаеше, че производството на администратора изпраща, можете oculd използва компютърна програма, за да симулира натискане на бутон, когато ф натискане на бутон от клавиатурата. Т.е. при натискане на клавиша влиза в моя клавиатура, програмата изпраща команда за "старт" на PlayStation ... някакви отзиви / идея за това как човек може да започне на такъв проект?
  • Стив Елис
    Мисля, че сте абсолютно невероятно как мога да се свържа с теб аз имам няколко въпроса за проекта Аз съм се опитва да започне, че аз мисля, че може да сте в състояние да отговори на моя имейл е ellis90002@gmail.com моля пишете ми, ако сте готови да отговорят на някои въпроси
  • doesn'tmatter
    Видях hjm fidiling с предната част на самолета с лявата си ръка през целия видео
  • Haha ...
  • добре.
    Аз се върна да видя приятел.
  • Ей, добре дошъл отново horisly! Знаете плейофите стигнем до вас? Hehe ...
  • Napsey
    Здравейте, след трясък ми доста скъп модел самолети за трети и последен път си помислих, че се дължи на малките контрол върху кутията радио контрол, че да намеря трудно да овладеят с моя тромав палци на моята възраст. Това, което е нужно е да да бъде в състояние да направят нещо като включите компютъра джойстика в лаптоп и да карам на лаптопа на самолета модел там в реалния свят, чрез приятел кутия връзка. Аз тогава също може да направите малки и отдалечени камера телевизия в пилотската кабина, които могат да предам видео фуражите към лаптоп чрез друго пристанище. Това ще ми помогне да лети на самолети и да ме реален поглед на света чрез този модел. Следващата стъпка ще бъде да направят модел с по-малко crashable кажа, един жироскоп модел хеликоптер инсталирани в строителните работи, така че Оставяйки на проверките, самолетът ще намери своето собствено право и ниво. Означава ли това изискване звука твърде далеч пръстите в задния двор схема на нещата?
  • Andy
    хей аз имам едно ПС игра акула с USB кабел и се опитвах да тече Linux на него, но играта акула е скрит (кажи ми как работи) и всичко, което може да изпрати се мами с измама програма! във всеки случай аз да редактирате файловете на флаш на gameshark?
  • Може би искате да се свържете с експерт HID Гарет в garrett@comfiletech.com
  • evance
    Здравейте ~
    хубаво сам

    Може ли един въпрос?
    PS3 USB контролер Крайна размер е 32Byte?
    или трябва да използвате 64Byte?
    Аз улавяне пакет е 64 байт
    но изглежда 32 байт може да се работи???
  • M07
    приятен един веднъж again.keep с добрата работа.
  • Надявам се, че може да го направи ..... :)
  • Да го направят! Аз дори не се опитвам ...
  • Леле това е страхотно!
    Брилянтна идея, браво.
  • Клинт Фишбърн
    Awsome и тя е само това, което са търсили. Мога ли да купя една събрани?
Блог коментари захранва от Disqus
Блог коментари захранва от Disqus

Featured Sites From Zedomax Blog Network