PC игрового порта (Джойстик) — распиновка
В настоящее время наиболее распространенным типом аналогового джойстика PC аналог джойстика. Эта модель джойстика был представлен IBM вместе со своим первым IBM PC компьютера. Джойстик просто основной аналоговый джойстик с двумя кнопками. Оригинальный интерфейс джойстика была цепь для подключения двух джойстиков, но был только один разъем джойстика. Особое Y-кабель был необходим, если существует необходимость в двух джойстиков одновременно. Позже время некоторые производители положить два разъема для их интерфейсной карты и некоторые производители карт осуществляется только один вход джойстика. К счастью, большинство из карты в настоящее время имеют возможность в течение двух джойстиков, как оригинального IBM джойстика карты.
Интерфейсная плата джойстик был разработан, чтобы быть столь же простым и дешевым, насколько это возможно. Карточка состоял только из интерфейсного модуля интерфейса и четырех одновибраторов (олл-ин на 558 чипе). Эти одновибраторов были простые таймер схемы, которые потушить импульс с шириной прямо пропорциональной величины сопротивления джойстика. Ширина импульса была затем измерена с помощью программного цикла. Это вызвало anormous количество проблем к игре программистов, когда компьютеры стали быстрее и быстрее все время. На быстрых машинах, процедура джойстик в программном обеспечении не читает джойстик сигнал должным образом, что приводит к проблемам синхронизации. Некоторые выделенные джойстик карты предназначены для изменения сигнала джойстик, чтобы программное обеспечение сможет правильно определить джойстик и обработки данных.
Штифт | Название | Порывы | Описание |
---|---|---|---|
1 | +5 В | ![]() |
|
2 | / B1 | ![]() |
Кнопка 1 |
3 | X1 | ![]() |
Джойстик 1 — X |
4 | Земля | ![]() |
Первый (для переключателя 1) |
5 | Земля | ![]() |
Первый (для переключателя 2) |
6 | Y1 | ![]() |
Джойстик 1 — Y |
7 | / В2 | ![]() |
Кнопка 2 |
8 | +5 В | ![]() |
|
9 | +5 В | ![]() |
|
10 | / B4 | ![]() |
Кнопка 4 |
11 | X2 | ![]() |
Джойстик 2 — X |
12 | Земля | ![]() |
Первый (для переключателя 3,4) |
13 | У2 | ![]() |
Джойстик 2 — Y |
14 | / B3 | ![]() |
Кнопка 3 |
15 | +5 В | ![]() |
Джойстик состоит из двух потенциометров с переменной величины сопротивления от 0 Ом и 100 кОм (в некоторых джойстиков до 150 кОм). Потенциометра сопротивления имеют минимальные значения, когда джойстик в левом верхнем положении. Один конец потенциометра подключен к +5 В штифта и центром вывод подключен лучших аналоговый вход джойстика. Другой конец потенциометра остается не подключен к любом месте.
Есть два широко используемых способов, как PC аналог механизм джойстик палка построенные. Некоторые джойстик преобразовать позицию придерживаться линейного движения, whcih затем изменяет положение ползунка в около 100 кОм линейного потенциометра. Более популярным строительным является использование нормальные осевые потенциометры и движение джойстика непосредственно превращается эти потенциометры. Некоторые джойстик используется специальный 100 кОм потенциометра которая может превратить только что 60 .. 90 градусов, что joytick может превратиться. Более распространенным строительство использовать стандартный 470 кОм (LIN) 270 градусов potentiomer и использовать около четверти шкалы с самого начала (в этом случае получение 0 .. 120 диапазон кОм значение). Обычно эти потенциометры нормальные слайдер углерода potentimeters которые долго не живут в интенсивных игр.
Как ПК джойстик порт оборудование работает
Джойстик порт является очень простой 8 бит I / 0 карта, которая проживает в ISA шину адреса ввода / вывода 201h. Процессор может читать и писать к порту джойстика адрес ввода / вывода 201h. Дать по этому адресу начинается джойстика измерение postition. Интерфейс Джойстик использует только сигнал, что кто-то письменной форме по адресу ввода / вывода для сброса мультивибраторы в карты. Значение данных не хранится, так что это действительно же, что значение записывается на этот адрес.
Когда вы читаете один байт от ввода / вывода addess 201h, вы получите информацию о состоянии интерфейса джойстика. В следующей таблице покажет, как биты отображаются в стоимости вы получите.
Игровой порт 201h байт: _______________________________________________________ | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | | But4 | but3 | but2 | но1 | stk4 | stk3 | stk2 | stk1 | | ______ | ______ | ______ | ______ | ______ | ______ | ______ | ______ |
Четыре старших бита сказать вам состояние кнопок джойстика. Четыре младшие биты сказать состояние мультивибраторов, которые используются для измерения величины сопротивления joytick потенциометров позиции. Более точное описание битных значений можно найти в таблице ниже:
7 6 5 4 3 2 1 0 *. . . . . . . Кнопка В2 (контакт 14), 0 = закрыт, 1 = открыто (по умолчанию) . *. . . . . . Кнопка В1 (вывод 10), 0 = закрыт, 1 = открыто (по умолчанию) . . *. . . . . Кнопка A2 (контакт 7), 0 = закрыт, 1 = открыто (по умолчанию) . . . *. . . . Кнопка А1 (вывод 2), 0 = закрыт, 1 = открыто (по умолчанию) . . . . *. . . Моностабильный ПО (с контакта 13), 1 = времени, 0 = приурочен выезда . . . . . *. . Моностабильный BX (с контакта 11), 1 = времени, 0 = приурочен выезда . . . . . . *. Моностабильный А.Ю. (с контакта 6), 1 = времени, 0 = приурочен выезда . . . . . . . * Моностабильный AX (от контакта 3), 1 = времени, 0 = приурочен выезда
Резистивные аналоговые входы (позиционный джойстик)
Позиционный джойстик входы просто вводит где переменная 0-100 кОм джойстик потенциометра подключен. Потенциометры подключены между +5 силовым выводом и одним потенциометра входной линии, связаны между землей и 5В. На следующем рисунке пытается показать, как проводка делается:
+5 ________________ | stick1 ________ | | 100K | _ / / / _____ | stick2 ________ | | 100K | _ / / / _____ | stick3 ________ | | 100K | _ / / / _____ | stick4 ________ | | 100K | _ / / / _____ |
Величина сопротивления джойстика потенциометров, оцениваются, используя очень простой моностабильной схемы мультивибратора, где маленький конденсатор загружается через потенциометра джойстика до определенного уровня напряжения. Интерфейс джойстик имеет четыре этого типа одновибраторов. Обычно джойстик мультивибраторы интерфейса находятся в одной 558 IC (что IC, как четыре упрощенных 555 типа таймеров в одном IC) в течение двух джойстиков портов и 556 (двойной таймера 555) в течение одного джойстика только порта.
Джойстик Пот в> --- + (Палка п) | R1 / ____________ 2.2K | | / | |> ----------> Бит данных в ISA шину | | Моностабильный | ушло + ------- | Multi-| | | Вибратор | С1 --- | | <----------> записи
ПРИМЕЧАНИЕ: Ссылка дизайн в Crystal Semiconductor CD4376B называет рекомендует С1 быть 5,6 нФ и R1 составляет 2,2 кОм для их отсчета звуковая карта дизайна.
Мультивибратора работа по следующим образом:
- 1. Обычно на неактивном состоянии конденсатор С1 полностью заряжен (5 В) и выход multivibator выдает логическую 1.
- 2. Компьютер записывает в адрес 201h ввода / вывода для сброса мультивибраторы. Мультивибратора получить triggger импульс от сигнала записи ввода / вывода и выписан конденсатор С1. Выход мультивибратор переходит в 0, поскольку конденсатор разряжается (0В).
- 2. Конденсатор начинает заряжаться форма тока, который проходит через R1 и потенциометра джойстика.
- 3. Когда напряжение на конденсаторе достигает некоторого порогового oltage уровень, на выходе мультивибратора восходит к логике 1.
Чем больше значение сопротивление потенциометра, тем больше времени требуется для конденсатора для достижения порогового напряжения. Время, сколько времени требуется для каждого multivibator достичь логику 1 после срабатывание будет measued с помощью программного обеспечения, и это значение говорит сопротивление потенциометра (и положение палки, а потому что Потенциометр подключается к палке). Этот простой метод для измерения величины сопротивления довольно дешево, но не очень точно.
Это простая реализация порт джойстика метизы (первоначально разработан для 4,7 МГц IBM PC) вызывает много головной боли к игре программистов (проблемы разной скоростью компьютеров, joycitck различий порта, проблем в многозадачных операционных систем и т.д.). Большие допуски в джойстиков и джойстика портов означает, что каждая игра должна иметь возможность cablibrate джойстик (который на самом деле означает, что программа адаптируется принять значения в го диапазона, который подпрограмма джойстик чтение делает, а затем преобразует данные в своем внутреннем формате используя значения, измеренные в процессе калибровки джойстика).
Переключение входов (кнопки joytick)
Кнопки джойстика просты включения / выключения входов. Джойстик либо покидает контактный плавающей или подключить его к земле.
___ кнопка1 ______ о o_______ ___ | button2 ______ о o_______ | ___ | button3 ______ о o_______ | ___ | button4 ______ о o_______ | | Земля ________________ |
Состояние кнопок подается непосредственно в интерфейс джойстика и через него, чтобы ISA линий шины данных, когда кто-то читает интерфейса джойстика адрес ввода / вывода. Кнопки очень легко проводной. Каждый вход имеет 1 кОм резистор R1, который ensires, что контакты на джойстик кнопка остаться в +5 потенциала (логической 1), когда ни одна кнопка не нажата.
+5 В | / R1 1K / Джойстик | Кнопка в> -------- + -------------------------> бит данных в ISA шину (Кнопка п)
ПРИМЕЧАНИЕ: Ссылка дизайн в Crystal Semiconductor CD4376B требует 4,7 кОм подтягивающий резистор и 1000 пФ конденсатора от входа до земли.