quarta-feira, 31 de maio de 2017

Mais de um joystick ao mesmo tempo com o Arduino Leonardo



Vocês já devem conhecer essa plaquinha. Ela tem um Atmega32u4, que possui uma interface USB nativa, podendo funcionar como teclado, mouse, joystick ou controlador MIDI.

Agora, vocês sabiam que um só deles pode se comportar como 2 ou mais joysticks ao mesmo tempo? Sim, graças a alguma magia negra com descritores HID ele pode fazer isso. Existe uma biblioteca pronta que faz toda a parte difícil.

Ela pode ser baixada no seguinte link:

https://github.com/MHeironimus/ArduinoJoystickLibrary/tree/version-1.0

Depois de colocar as pastas Joystick, Joystick2 e Joystick3, experimente rodar o seguinte código no seu Arduino Leonardo:


Abra algum visualizador de joystick da sua preferência e perceba que o seu computador reconhecerá não um, mas dois joysticks ao mesmo tempo:


O Leonardo tem poucos pinos, mas utilizando o barramento SPI é possível construir uma interface para dois joysticks de SNES (que utiliza um 4021 e um barramento SPI para ler os botões dos dois controles), ou usar alguns 74xx166/165 para ler dois controles de arcade ao mesmo tempo.

Nenhum comentário:

Postar um comentário