Gitaar held USB controller met Arduino en Java (5 / 6 stap)

Stap 5: Programmeren in Java


Om de seriële gegevens ontvangen van een Arduino in Java, moet u de RXTX-bibliotheek, die hier beschikbaar is: http://fizzed.com/oss/rxtx-for-java - installeren instructies zijn in het gecomprimeerde zip-bestand.

Normaal, zonder een controller, zou u moeten gebruiken van het toetsenbord en de muis om te spelen. In Java, er is een klasse genaamd "Robot", die is gemaakt voor het imiteren van toetsaanslagen en muisbewegingen.

Java API voor Robot klasse: https://docs.oracle.com/javase/7/docs/api/java/awt...

Ik heb toegevoegd de Java-broncode met opmerkingen, maar ik zal erover schrijven hier ook.

Ten eerste, we de seriële poort openen met de naam (als er geen COM3, het veranderen van de arduino poort) en de gegevens (9600 baud, gegevens en pariteit en stop-bits..). U kunt het skelet downloaden vanaf hier: http://playground.arduino.cc/Interfacing/Java

In de SerialEvent-functie kunt u de gebufferde invoer (de lijn die is gecreëerd in de lus in arduino) met de input. ReadLine() functie-aanroep.

Ik zal vervolgens de tekenreeks doorgeven aan de functie van de gitaar, waarin ik de stappen voor het maken van de toetsaanslagen zal maken.

De tekenreeks is opgesplitst in een matrix van gehele getal, omdat het gemakkelijker is om te controleren de waarden in die. Het indexeren is hetzelfde als in de Arduino.

Als het eerste element van de matrix één, dat betekent is dat de eerste fret knop is ingedrukt, en we hebben te imiteren dat op iemand de '1' toets drukt op het toetsenbord. Dat is waarom we hebben de robot.keyPress(KeyEvent.VK_1); -oproep.

Als het werd ingedrukt, maar het is nu uitgebracht, moeten we de loslaat evenals met de functieaanroep: robot.keyRelease(KeyEvent.VK_1);

Als de tweede fret-knop wordt ingedrukt, noemen we de robot.keyPress voor de sleutel '2', enzovoort enzovoort.

Ik moest het maken voor elke fret knop, ontsnappen, en stermacht, en het tokkelen op en neer. Voor de frets, zijn de toetsen '1' naar '5' ingedrukt overeenkomt met de index van de fret op de hals. Voor het tokkelen de pijlen omhoog en omlaag worden ingedrukt, voor het ontsnappen, het ontsnappen, persen en stermacht, de sleutel van '.

Wanneer de whammy wordt geactiveerd, roept de functie whammy, waardoor een nieuwe draad bewegen van de muis op de X-as, omdat het kan worden ingesteld in het spel op het activeren van de whammy met de muis. Wanneer het beweegt, het schommelt, dus het is niet alleen binaire 1 of 0 voor de whammy. Met een nieuwe thread gestart, kunt u gaan op andere toetsen ingedrukt te tokkelen, er is geen probleem. En ook als u leiden de whammy meerdere keren tot, meerdere threads worden gestart en de muis heen en weer gaat. Ik denk dat het een mooie oplossing voor het probleem.

De mededeling wordt gestart na het versturen van een '1' naar de Arduino in de main functie onderaan.

Als u het uitproberen, wanneer u drukt op de knoppen van de fret, is hetzelfde als wanneer u de overeenkomstige toetsen op uw toetsenbord drukt.

Laten we het instellen in het spel!

Gerelateerde Artikelen

Een Networked LED Strip Controller met Arduino en Android

Een Networked LED Strip Controller met Arduino en Android

ik ben fascinerende van verlichting effect sinds kind en eenmaal gevonden op Ebay een goedkope multicolor LED strip ik ben begonnen op zoek hoe besturingselement het, op zoek naar een Ethernet ingeschakeld besturingselement dat maakt de strips een se
Gasmelder / indicator (USB powered) met arduino

Gasmelder / indicator (USB powered) met arduino

ArduSnifferDit Instructable toont hoe het bouwen van een gas detector / indicator met behulp van een arduino.Het eindproduct is USB powered en bevat het bedrag van gedetecteerde gas op een led display.De reset-knop op de arduino werkt ook in dit ontw
Maak een ThinkPad toetsenbord USB-adapter met Arduino

Maak een ThinkPad toetsenbord USB-adapter met Arduino

Onder de business klasse laptops hebben ThinkPads de beste toetsenborden. Zelfs met de wijziging eiland stijl toetsenborden, zou ik zeggen dat ThinkPad toetsenborden nog verslaan alle haar laptop concurrenten handen naar beneden in de afdeling van he
Omzetten van een ZX82 Spectrum toetsenbord in een uitbreidbaar USB-toetsenbord met Arduino

Omzetten van een ZX82 Spectrum toetsenbord in een uitbreidbaar USB-toetsenbord met Arduino

In dit Instructable, ik zal je laten zien hoe u uw toetsenbord ZX82 Spectrum converteert naar een functioneel-uitvouwbare USB-toetsenbord compatibel met om het even wat USB-enabled. Deze build is compact genoeg dat wanneer u klaar bent, u kunt het sp
Eenvoudig diy controller met arduino uno of micro

Eenvoudig diy controller met arduino uno of micro

Als een gamer zou weten, controllers zijn duur, ongeveer 60$.Ik had een arduino micro, dus heb ik besloten om een dubbele analoge controller van de xbox/playstation stijl.De code kan hier worden gevondenOnderdelenArduino micro of uno2 x analoge thumb
Mijn GBRL cnc controller met Arduino

Mijn GBRL cnc controller met Arduino

Hier, Toon ik u mijn klaar GBRL - Arduino CNC controller. Voor verpakking gebruikte ik oude lunchboxStap 1: bedrading Ik het bekabeld als op Github werd getoond, en uploaden GBRL 8.0 met x laderStap 2: Zijn alle packadged in oude lunchbox. Ik gesnede
Tactiele toetsenbord / game controller met Arduino en Processing

Tactiele toetsenbord / game controller met Arduino en Processing

dit instructable beschrijft een snelle en eenvoudige manier om een tactiele toetsenbord of de spelbesturing met behulp van te maken-karton,-aluminiumfolie,- en een Arduino.Het biedt ook de Arduino en Processing codes om onmiddellijk te beginnen spele
Solar warm water controller met arduino mega en ds18b20 temperatuur sensor

Solar warm water controller met arduino mega en ds18b20 temperatuur sensor

Dit is project voor solar controlesysteem.Stap 1: Dingen die je moet Delen:1xArdunio1xLCD 16 x 23x4.7 kOhm weerstand2xN-P-N transistor2x5v estafette3xDS18b20 temperatuursensor1xBreadboard2 x 220 Ohm weerstandStap 2: Aansluiten van de DS18b20 sensoren
Raspberry Pi/RetroPie Project - Appendix 1 - installeren/gebruiken 1e Gen Xbox/360 Wired USB-Controller voor gebruik met RetroPie

Raspberry Pi/RetroPie Project - Appendix 1 - installeren/gebruiken 1e Gen Xbox/360 Wired USB-Controller voor gebruik met RetroPie

mijn Youtube-kanaal (dagelijkse Uploads)https://www.YouTube.com/user/daiatlus79Dit is een video tutorial over hoe te installeren en gebruik een Xbox 360 of 1st Gen Xbox (Duke of S Type) USB-controllermet het RetroPie Project, een enorme multi retro v
Controle van een DC-motor met Arduino en Visual Basic

Controle van een DC-motor met Arduino en Visual Basic

Hallo vrienden dit is mijn eerste post in instructables.com waar ik zal proberen om meer nieuwheid des vaak.Thema is vandaag met Arduino en Visual Basic.Het project dat we nu zien is een dc-motor controller met Arduino en Visual Basic.Om te controler
SNES USB controller en flash drive

SNES USB controller en flash drive

dit instructable zal in detail te beschrijven hoe ik ging over het wijzigen van een SNES-controller in een USB-controller met ingebouwde flash drive.  Dit is niet een bijster origineel methode, net trekken samen kale hardware bits om de klus te klare
Controle Arduino functioneert met een USB-controller, geen solderen vereist-ik maakte het op TechShop

Controle Arduino functioneert met een USB-controller, geen solderen vereist-ik maakte het op TechShop

eerder dit jaar besloot ik dat het zou leuk om mijn bedrade controller van de Xbox 360 gebruiken om te bepalen Arduino projecten - in dit geval een RGB LED. De meest gebruikte methode om dit te doen impliceert echter toegang tot de elektronica binnen
USB NES-controller met een arduino!

USB NES-controller met een arduino!

UPDATE 22-12-2014Instructables gebruiker mattpbooth heeft bijgewerkt de code en het is hosting op github:https://github.com/mattpbooth/ArduinoNESController...Matt bedankt!UPDATE 03-12-2011Een println vervangen met print (derp).UPDATE 01-12-2011Alle c
Zet een N64-Controller in een USB-Gamepad met behulp van een Arduino Leonardo

Zet een N64-Controller in een USB-Gamepad met behulp van een Arduino Leonardo

De gemakkelijkste manier om te zetten een N64-Controller in een USB-Gamepad is om te kopen een N64-Controller-Adapter voor ongeveer £15. Maar het kan ook worden gedaan hebt u een Arduino Leonardo of elke andere Arduino board met ingebouwde USB-commun