Rozważam zbudowanie niestandardowych gadżetów do łączenia się z portem gry na moim komputerze retro-hobby (adapter kontrolera SNES, skrzynka makro / turbo itp.) ale nie udało mi się znaleźć wielu informacji o szczegółach, takich jak dozwolone aktualne limity.
(Tylko ta niewymieniona wzmianka na forach DSLReports który twierdzi: „Standardowe napięcie robocze dla portu MIDI / Gameport to 5 V ± 5%, a prąd wyjściowy 40 mA w stanie aktywnym i 22 mA w trybie gotowości.”)
Biorąc pod uwagę bardziej wyszukane cyfrowe joysticki, które nie wymagały zewnętrznych zasilaczy, wiem, że można zawiesić jakiś rodzaj wymyślnego obciążenia na liniach 5V portu gier, ale nie chcę ryzykować, że SoundBlaster 16 Kilka lat temu ostrożnie zaczerpnąłem z eBay, jest co najmniej tak solidne, jak dowolna kombinacja wciąż będącej w produkcji przejściówki USB-Gameport i Raspberry Pi, którą ryzykuję podczas testów rozwojowych.
Po stronie ochrony host PC, mam nadzieję, że fi Znajdź solidne źródło szczegółów, takich jak:
- Maksymalny bezpieczny prąd szczytowy
- Maksymalny bezpieczny utrzymywany prąd
- DO i DON „Ts, które joysticki cyfrowe utknęło w sytuacji, gdy wyprowadzenia, takie jak ten , wyświetlają wiele linii zasilających 5 V i określają, że każda linia GND jest przeznaczona dla określonego przycisku.
Od strony ochrony mikrokontrolera, czy ktoś ma jakieś specyfikacje dotyczące maksymalnego obserwowanego prądu, gdy przyciski są naciskane lub linie osi X i Y znajdują się na końcu zakresu 0Ω?
(W przypadku to ma znaczenie, mam nadzieję, że wykorzystam te płyty STM8S o wartości poniżej 1 USD z Sduino , jeśli sprawdzą się liczby. 16 MHz powinno wystarczyć, aby coś osiągnąć, i nie można ich pokonać pod względem rozmiaru lub ceny.)
Cytat, który również zawiera podobne informacje na temat portów klawiatury PC i PS / 2, byłby mile widziany, ponieważ ja „Rozważam także zbudowanie podróbki Dynapoint GameStar .
Odpowiedź
dokumentacja oryginalnego adaptera Game Control Adapter firmy IBM zawiera pewne informacje, które będą przydatne. Nawet jeśli zamiast tego używasz karty SoundBlaster, powinna ona nadal być zgodna z oryginałem IBM.
Chociaż dokumentacja nie określa maksymalnych prądów dla żadnych pinów, zawiera schemat logiczny:
Może to być Widziałem, że na oryginalnym porcie gier wejścia przycisków są podawane do bufora 74LS244 (przez rezystory podciągające 1 kiloom i kondensatory 51pF). Arkusz danych 74LS244 „ określa maksymalny prąd wyjściowy niskiego poziomu 24 mA na pin i prąd wyjściowy wysokiego poziomu -15 mA.
Wejścia potencjometrów (osi) są podawane do wejść czasowych poczwórnego zegara NE558 (przez wbudowane rezystory 2,2 kΩ i kondensatory 0,01 uF). Jego arkusz danych nie szczegóły dotyczące bieżącego obciążenia na tych pinach wejściowych; są one ponownie używane jako wartości taktowania RC.
Schemat IBM pokazuje wszystkie masy (i zasilacze 5V) połączone razem. Podejrzewam, że piny 5V portu gier są podłączone bezpośrednio do zasilania 5V gniazda ISA; można to zweryfikować dla Twojej karty za pomocą testu ciągłości na multimetrze. W takim przypadku maksymalny pobór prądu dozwolony dla karty ISA może dać dalsze wskazówki.
Odpowiedź
z powrotem (x386) dni, kiedy używałem portu GAME jako ADC dla domowego skanera i innych samodzielnie zbudowanych HW. Jak to zwykle bywa w trakcie prac rozwojowych, sporadycznie zdarza się cofanie, np. Zwarcie itp. Porty GAME, których używałem, zawsze były zasilane chipem GoldStar z kartą IDE / portami ISA (były bardzo powszechne), a zwarcie na pinach analogowych zawsze się przepaliło + Linia zasilania 5 V na PCB (żaden chip nie został uszkodzony, o czym wiem, że obejście spalonego przewodu znów zadziałało), więc nie ma oczywistego ograniczenia prądu innego niż gęstość prądu użytych przewodów PCB.
przewody w tamtych czasach mogły bezpiecznie przenosić 0,5 A (zwykle zaczynają się palić powyżej 1 A), ale nie robiłbym obciążenia większego niż 100 mA.
Jednak kiedy spojrzałem na arkusz danych NE558 (link jest w Kaz „odpowiedź”) oprócz błędu pinout tutaj jest równoważny obwód pojedynczego zegara:
interwał czasowy to:
t = R.C
gdzie C = 0.1 uF
i R >= 2K2
. Biorąc pod uwagę Vcc = 5V
i zgodnie z
Podstawy tranzystora spadek napięcia tranzystoraVce = ~0.2V
, a następnie absolutny „bezpieczny” maksymalny prąd dla wyjścia taktowania (pin analogowy GAMEPORT) wynosi:
I = (Vcc-Vce) / R = (5-0.2)/2200 = 2.18 mA tmin = R.C = 2200*0.1/1000000 = 220 us
co brzmi rozsądnie, biorąc pod uwagę prąd wejściowy komparatora.Po takiej analizie Prądy zwarciowe, które pamiętam, są niemożliwe, więc mój GAMEPORT miał albo inne obwody albo prądy, które przechodzą przez różne piny (może VCC / GND).
Piny analogowe portu gier mają ograniczenie prądu 2.18 mA
.
uwaga, obciążenie powinno być pasywne, gdy pin opróżnia się prąd samodzielnie, więc potencjometr lub tranzystor NPN (kolektor-> Vcc, emiter-> GAMEPORT_analog_pin) wykonują tę samą pracę.
Jednak adaptery SB16 i / lub USB mogą mieć różne obwody (zwłaszcza jeśli zawierają Interfejs MIDI), ale 2mA to wspólna wartość dla komparatorów i wzmacniaczy.
Uwaga, niższe prądy oznaczają dłuższy czas konwersji, więc musisz znaleźć kompromis, aby kod odczytu odpytywania nie czekał zbyt długo i miał wystarczającą rozdzielczość. . na przykład 1 ms
:
t = (Rl+R)*C Rl = (t/C)-R Rl = (0.001/0.1)*1000000-2200 = 7800 ohm
więc jeśli dobrze widzę, jeśli Twój ładunek to 0 .. 7K8
następnie th Konwersja zakończy się 1 ms
szczytami.
Podczas pomiaru mojego starego joysticka Rockfire oś X ma 160K prawe położenie zero po lewej i 68K w środku (nie „t używał go od wieków, więc pozycja środkowa mogła zostać przesunięta), co prowadzi do maksymalnego czasu konwersji t = 16.22 ms
Komentarze
- 100mA jest dla wyjścia NE558, a nie wejścia czasowego, do którego są podłączone wejścia analogowe portu joysticka.
- @Justme You ' re right ( +1) Tęsknię za przeczytaniem. Po dokładniejszym zbadaniu znalazłem bardziej wiarygodny limit. Zmieniłem odpowiedź.
- Nie ' nie rozumiem, dlaczego zakładasz, że Vce wynosi 0,6 V, co powoduje mniejszy przepływ prądu. Lepiej byłoby założyć, że Vce tranzystora rozładowującego jest równe zeru przy tych poziomach prądu, a zatem w najgorszym przypadku płynie prąd. Różnica nie jest jednak duża, biorąc pod uwagę wszystkie tolerancje, powinna ona nadal wynosić poniżej 2,5 mA na wejście analogowe.
- Naprawdę chciałbym móc podać dwie ” zaakceptowane odpowiedzi ” znaczniki wyboru, ponieważ zaktualizowana odpowiedź i odpowiedź Kaz ' naprawdę wydają się być dwiema połówkami idealnej odpowiedzi. To powiedziawszy, musiałem dać to Kazowi za to, że był zarówno początkiem połączonej odpowiedzi, jak i tym, który znalazł schemat logiczny dla oryginalnego adaptera IBM.
- Spadek @Spektre Vbe wyniósłby około 0,6 V w tranzystory. Ale to jest spadek Vce. Jeśli tranzystor wyładowczy jest podobny do tranzystora wyjściowego, zgodnie z arkuszem danych NE558, spadek Vce wyniósłby zwykle 0,1 V przy prądzie 10 mA, a ponieważ prąd dostępny na kołku czasowym jest poniżej 3 mA, napięcie również byłoby znacznie poniżej 0,1 V.
Odpowiedź
Nie ma oficjalnych specyfikacji aktualnego limitu portu gier. Niektóre adaptery mogą mieć rezystory, koraliki ferrytowe lub bezpieczniki ograniczające prąd, ale zwykle zwarcie nadal coś frytuje (z wyjątkiem polifuse). Powiedziałbym, że 100 mA jest bezpiecznym limitem w każdym przypadku. Oryginalny adapter ma 1k podciągnięć na przyciskach, więc dla wszystkich czterech przycisków jednocześnie wciśniętych dodaje do 20 mA prądu z przewodów przycisku do przewodu uziemiającego. Wejścia analogowe mają 2,2 k szeregowo, więc wszystkie potencjometry wejścia analogowego znajdujące się w skrajnym położeniu 0R sumują około 9 mA prądu z przewodu 5 V do przewodów wejścia analogowego.