Detalhes técnicos da porta de joystick da placa de som
A porta de joystick
apresenta um conector do tipo DB15 (fêmea), cujos pinos estão identificados abaixo (em uma vista traseira do conector, onde os fios são soldados):
A entrada de joystick é uma porta de 8 bits com:
- 4 entradas (botões) digitais binárias (alto ou baixo)
<-> 4 primeiros bits
- 4 entradas (sticks) analógicas <->
4 últimos bits
Funcionamento da entrada digital da porta de joystick
As 4 entradas digitais
têm seu estado lógico interpretados diretamente
pelo processador do microcomputador através da entrada I/O.
A CPU do microcomputador lê e escreve os dados desta porta no endereço I/O 201h.
Estas entradas são conectadas por meio de um resistor a um potencial de 5 volts
-> normalmente apresentam nível alto (1).
Quando uma destas entradas é ligada ao terminal terra (ground), assume o valor lógico baixo (0).
Abaixo, um circuito típico de uma interface de joystick de um microcomputador. Os pinos 12 e 15 não são utilizados.
O intervalo de leitura para cada entrada digital é de ~ 10-6 s.
Utilidade das entradas digitais: medida de tempo ou contadores lógicos.
As 4 entradas analógicas
mostram os estados dos
4 multivibradores usados para medir o valor da corrente elétrica nestas entradas.
Um diagrama simplificado destes multivibradores pode ser visto abaixo.
- A diferença de potencial aplicada em cada entrada analógica é padronizada (5 V).
Funcionamento dos multivibradores monoestáveis
- Normalmente o capacitor C1 está carregado (5V) e a saída do multivibradpr encontra-se em estado lógico alto (1).
- Este valor é registrado no endereço I/O 201h; então, é enviado um sinal de reset para o multivibrador.
Recebendo este pulso o multivibrador descarrega o capacitor C1. De imediato a saída do multivibrador passa para o estado baixo (0).
- Em seguida o capacitor começa a carregar-se novamente devido à corrente existente em R1 e na resistência presente na entrada da porta,
pois há uma diferença de potencial de 5 volts entre estes dois resistores.
- Quando a voltagem do capacitor C1 atinge um valor limite, a saída do multivibrador volta ao estado lógico alto (1) e repete-se o ciclo.
Assim,
- a corrente elétrica na entrada analógica varia em função da resistência existente
na entrada de joystick e do resistor interno (R1), ligado em série com esta entrada;
- o pulso produzido pelo multivibrador é retangular e sua duração
é diretamente proporcional à corrente na entrada;
- quanto maior o valor da resistência de entrada, maior será o tempo necessário para o capacitor atingir a
voltagem limite de mudança de estado lógico.
Armazenamento dos dados coletados:
- o tempo que o multivibrador demora para atingir o estado alto, após receber o sinal de trigger -
duração do pulso - é lido usando uma rotina via software;
- este valor é convertido para um valor numérico que varia entre zero (resistência nula) e 255 (resistência infinita);
- este valor corresponde à resistência existente na entrada da porta.
O intervalo médio típico entre cada leitura para as entradas analógicas é de 1 a 2 ms.
Abaixo, um circuito típico de uma interface de joystick de um microcomputador. Os pinos 12 e 15 não são utilizados.
Configurando a porta Joystick.