[#1] Mikrokontroler i obsługa dżojstika
Pracuję nad, opartym na mikrokontrolerze AVR, zewnętrznym modułem auto-fire. Pomysł jest taki, żeby przechwycić sygnał z przycisku Fire i, w zależności od pozycji przełącznika, wysłać go dalej bez zmian lub wygenerować na wyjściu zadaną częstotliwość. Używam mikrokontrolera, ponieważ moduł będzie miał regulowaną skokowo prędkość (3 do 15Hz, krok 3Hz).

Zanim jednak podłączę prototyp do prawdziwej Amigi, chciałbym Was prosić o wyjaśnienie jednej kwestii. Czy jeśli AVR wyśle sygnał HIGH (5V) bezpośrednio na pin 6, to Amiga zarejestruje to jako wciśnięcie przycisku Fire, czy może potrzebuję może czegoś w stylu transoptora, którym AVR będzie sterował? Oczywiście dżojstik i mikrokontroler korzystają z tej samej masy, a AVR będzie zasilany z pinu nr 7 portu dżojstika.

Przeglądając dokumentację w sieci dowiedziałem się, min, że:
1. Sygnał Fire wędruje bezpośrednio do układu CIA 8520 na pin PA6, który wydaje się być wejściem;
2. Złącze Fire w porcie dżojstika (pin 6) oznaczone jest jako dwukierunkowe;
3. Z opisu CIA 8520: "providing both CMOS and TTL compatibility".

Elektroniką zajmuję się od niedawna, więc nie jestem do końca pewien, jak powyższe fakty zastosować do mojego projektu.

Wszelka pomoc w wyjaśnienie tej kwestii będzie na wagę złota. Jeśli wszystko będzie działało jak należy, udostępnię schematy i kod źródłowy. Chętnie usłyszę też sugestie dotyczące projektu.
[#2] Re: Mikrokontroler i obsługa dżojstika

@Rosto, post #1

Fire ma stan aktywny niski. Robienie tego na mikrokontrolerze to sztuka dla sztuki, oryginalnie było to robione zdaje się na NE555, tu można by regulować częstotliwość potencjometrem.
[#3] Re: Mikrokontroler i obsługa dżojstika

@Rosto, post #1

Lubisz patrzeć, jak wykonują się Twoje rozkazy co? Jakiemu mikrokontrolerowi i w jakim języku je wydajesz? ;)
[#4] Re: Mikrokontroler i obsługa dżojstika

@RomanWorkshop, post #3

A kto by nie lubił? szeroki uśmiech

Planuję użyć ATiny25 i języka C. Asembler znam, ale w tak prostej aplikacji pisanie w maszynowym chyba niewiele zmieni, więc stawiam na czytelność kodu.
[#5] Re: Mikrokontroler i obsługa dżojstika

@sanjyuubi, post #2

1. Czyli żeby Amiga zarejestrowała strzał, na pinie AVR powinienem ustawić wejście, bez rezystora podciągającego i będzie się on zachowywał jak masa?

2. Tak jak wspomniałem, chcę uzyskać precyzyjną kontrolę nad częstotliwością; coś czego potencjometr mi nie da. Poza tym, w przyszłości, będę mógł dowolnie zmienić wartości wyjściowe i wystarczy przeprogramować układ.

Przede wszystkim jest to dla mnie dobre ćwiczenie w tworzeniu układów opartych na mikrokontrolerach. Jeśli wyjdzie z tego coś pożytecznego, tym lepiej, bo Amigowcy nie są pod tym względem rozpieszczani.

P.S. Czy i jak można odpowiadać na kilka postów jednocześnie?

Ostatnia aktualizacja: 14.05.2015 13:54:20 przez Rosto
[#6] Re: Mikrokontroler i obsługa dżojstika

@Rosto, post #5

Przede wszystkim jest to dla mnie dobre ćwiczenie w tworzeniu układów opartych na mikrokontrolerach. Jeśli wyjdzie z tego coś pożytecznego, tym lepiej, bo Amigowcy nie są pod tym względem rozpieszczani.


Jak to nie są rozpieszczani ok, racja Ryś, Sakura 4MB PCMCIA SRAM, Sum, Floppy Drive, a to tylko przykłady z naszego poletka
[wyróżniony] [#7] Re: Mikrokontroler i obsługa dżojstika

@Rosto, post #5

Na pinie AVR masz ustawić wyjście i masz podawać masę (0) jak chcesz strzelać. Linie w porcie joysticka są podciągnięte do zasilania
[#8] Re: Mikrokontroler i obsługa dżojstika

@sanjyuubi, post #7

O to mi właśnie chodziło. Wielkie dzięki za podpowiedź.
[#9] Re: Mikrokontroler i obsługa dżojstika

@spidi, post #6

Masz rację. Czytałem wcześniej o tych projektach i szczerze podziwiam umiejętności twórców (jak rozumiem, jesteś odpowiedzialny za Rysia i Suma). Sam dopiero raczkuję jeśli chodzi o mikrokontrolery i elektronikę jako taką, ale ludzie tacy jak Ty są dla mnie wielką inspiracją.

Kiedyś zbudowałem profesjonalny arcade stick do Amigi: drążek i przyciski Seimitsu, drewniana obudowa, panele z plexi. Zrobiłem do niego prostą płytkę PCB z obowiązkowym Fire2, ale zawsze chciałem stworzyć wersję z uniwersalnym układem auto-fire. Ten projekt to pierwszy krok w tym kierunku.
[#10] Re: Mikrokontroler i obsługa dżojstika

@Rosto, post #8

Prawidłowo to powinieneś mieć tam wyjście typu Open Collector/Drain, ale jeśli zasilasz mikrokontroler 5V, to nie ma to znaczenia. Najlepiej jednak byłoby zastosować jakiś driver linii lub układ wzmacniający stan niski na dwóch tranzystorach. Znane są przypadki nie działania drugiego przycisku fire (prawy przycisk myszki) na niektórych wersjach płyt od A1200 przy bezpośrednim podłączeniu linii do mikrokontrolera.

No i jak chcesz przychwytywać sygnał fire, to musisz od strony joysticka podciągnąć go do zasilania, bo inaczej będziesz miał stan nieustalony i masę, możesz też użyć wbudowanego pull-up'a w AVR.

Ostatnia aktualizacja: 15.05.2015 00:45:45 przez sanjyuubi
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem