Witam.
Od dłuższego czasu noszę się z myślą zrobienia własnego joysticka. Wybrałem MJoy16 na procesorze ATmega16. Znalazłem schematy i pliki, zacząłem budowę na płytce stykowej pomijając wszelkie przyciski cyfrowe i osie analogowe (i tak na płytce stykowej by się nie zmieściły. To w końcu 112 przycisków i 8 osi). Zrobiłem samą komunikację MJoy-komputer i zasilanie. I tu pojawił się problem: nie działa. Komputer raz rozpoznaje go jako "nieznane urządzenie" i po chwili pisze, ze "nie rozpoznano urządzenia... może mieć awarię" albo od razu pokazuje się drugi komunikat. Czyli wszystko na to wskazuje, ze procesor nie komunikuje się z komputerem.
W załącznikach dam pliki .hex i .epp, schemat oryginalny i schemat mojej płytki. Strona projektu:
https://sites.google.com/site/mjoy16/home.
Teraz jaką mam prośbę:
Z oryginalnym schematem męczyłem się bardzo długo. Jest trochę "laurkowaty" i lekko niejasny dla początkującego. Obawiam się, że mogłem coś źle połączyć, dlatego daję cały schemat tego co ja zrobiłem. Dodatkowo zastanawiam się czy podpiąłem wszystko co jest wymagane do samej komunikacji. Jeśli będzie to konieczne to mogę zrobić zdjęcia mojej płytki.
Jeśli chodzi o te dwa pliki: Wgrywałem je jednocześnie przez MkAVRCalculator, FuseBity ustawiłem na zewnętrzny kwarc i nadal nie działało. Zastosowałem się do instrukcji ze strony projektu, zrobiłem wszystko przez PonyProg i port drukarki, tzn: odczytałem pamięć, wyczyściłem procesor, wgrałem tylko plik .hex (nie ma tam mowy o pliku .epp), ustawiłem manualnie fusebity, wgrałem je, wszystko się powiodło, ale nadal MJoy się nie komunikuje z komputerem.
Zatem miałbym prośbę żeby ktoś sprawdził czy przy takim podłączeniu, wgranym pliku .hex i ustawionych fusebitach to ma prawo działać.
PS: Pin AVCC na oryginalnym schemacie jest podpięty do VCC przez dławik. Ja też go mam (100nH), ale nigdzie nie mogę go w bibliotece Eagla znaleźć
Tak samo kondensator elektrolityczny 10uF między GND i VCC.
Jeśli coś jeszcze jest potrzebne to piszcie. Bardzo proszę o pomoc.
Do zamknięcia. W moim przypadku trzeba było zewrzeć pin 15 i 16 procesora.