Untouchable PAD (11 / 12 steg)

Steg 11: Arduino koden



Detta steg är ganska rakt fram, ansluta din Leonardo styrelse och ladda upp en av exemplet skissar för USB Leonardo. Jag har redigerat för stiften jag behöver. Jag ville använda DFRobot nova, men jag kunde inte hitta den utan kit. Skulle har trevligt att använda accelerometern som mus och bara lägga ett par knappar. Anyway, här är det om du vill kontrollera. Kommentarer förklarar det hela.

< p > / * < br > JoystickMouseControl

Styr musen från en joystick på en Arduino Leonardo.
Använder en tryckknapp för att aktivera och inaktivera muskontroll, och
en andra tryckknapp att klicka med vänster musknapp

Hårdvara:
2-axlig joystick ansluten till stift A0 och A1
* tryckknappar för att fästa D2 och D3

Musen rörelsen är alltid relativ. Denna skiss läser
två analoga ingångar som sträcker sig från 0 till 1023 (eller mindre på någon sida)
och översätter dem till spänner av -6-6.
Skissen förutsätts det att joystick vila värdena runt den
mitten av intervallet, men att de varierar inom ett tröskelvärde.

Varning: När du använder kommandot Mouse.move(), Arduino tar
över din mus! Kontrollera att du har kontroll innan du använder kommandot.
Denna skiss innehåller en tryckknapp för att växla mus kontroll staten, så
Du kan sätta på och stänga muskontroll.

skapad 15 Sept 2011
uppdaterad 28 Mar 2012
av Tom Igoe

denna kod är offentlig

* < /p >< p > / set pin-koder för switch, joystick yxor, och ledde:
CONST int switchPin = 4; att slå på och av muskontroll
CONST int musknapp = 3; ingångsstift för musen tryckknappen
CONST int xAxis = A0; joystick X-axeln
CONST int yAxis = A1; joystick Y axel
CONST int ledPin = 13. Mus kontroll LED < /p >< p > / / parametrar för att läsa joysticken:
int utbud = 12. utgående sortiment av X eller Y rörelse
int netbootAnswerRequests = 5; svar fördröjning av musen, i ms
int tröskel = utbud/4; vilande tröskel
int center = range/2; vilande position värdet < /p >< p > boolean mouseIsActive = false; även att styra musen
int lastSwitchState = låg; tidigare switch status < /p >< p > void setup() {
pinMode (switchPin, ingång); switch pin
pinMode (ledPin, produktionen); den LED stiftet
ta kontroll över musen:
Mouse.BEGIN();
} < /p >< p > void loop() {
Läs växeln:
int switchState = digitalRead(switchPin);
om den ändras och det är hög, växla staten mus:
om (switchState! = lastSwitchState) {
om (switchState == hög) {
mouseIsActive =! mouseIsActive;
Aktivera LED att ange mus stat:
digitalWrite (ledPin, mouseIsActive);
}
}
rädda switch staten för nästa jämförelse:
lastSwitchState = switchState; < /p >< p > / / läsa och skala de två axlarna:
int xReading = readAxis(A0);
int yReading = readAxis(A1); < /p >< p > / / om mus kontroll staten är aktiv, flytta musen:
om (mouseIsActive) {
Mouse.Move (xReading, yReading, 0);
} < /p >< p > / / Läs musknappen och klicka på eller inte, klicka på:
om musknappen trycks:
om (digitalRead(mouseButton) == hög) {
om musen inte är intryckt, tryck på det:
IF (!. Mouse.isPressed(MOUSE_LEFT)) {
Mouse.Press(MOUSE_LEFT);
}
}
Annars trycker inte på musknappen:
annat {
om musen trycks, släpp det:
om (Mouse.isPressed(MOUSE_LEFT)) {
Mouse.release(MOUSE_LEFT);
}
} < /p >< p > delay(responseDelay);
} < /p >< p > / *
läser en axel (0 eller 1 för x eller y) och skalar den
analoga indataområdet till ett intervall från 0 till < utbud >
* / < / range >< /p >< p > int readAxis (int thisAxis) {
Läs den analog ingången:
int läsa = analogRead(thisAxis); < /p >< p > / / karta behandlingen från analoga indataområdet till utdataområdet:
läsning = karta (läsning, 0, 1023, 0, spänna); < /p >< p > / / om utgång läsning är utanför från den
Vila position tröskel, användas:
int avstånd = läsning - center; < /p >< p > om (abs(distance) < tröskel) {
distans = 0;
} < /p >< p > / / tillbaka avståndet för denna axel:
returnera avstånd;
} < /p >

Bara koppla på USB och är klar att användas.

Se Steg
Relaterade Ämnen

Anpassade Drone landning Pad

Min son älskar drönare, allt om dem. Han har en liten en, men han vill verkligen en stor en. Så en dag ber han om han kan få en landning pad för sin liten drönare. Tog lite och jag kom upp med en snabb design, skickade den att få tryckt och sytt.Han...

Bekväma näsa Pads för glasögon

med hjälp av luddiga sidan av självhäftande kardborrband, kan du bekvämt ersättning näsa kuddar för dina glasögon.Steg 1: Komma igång... Behöver du:självhäftande kardborrband, bara fuzzy sidaalkohol för att rengöra näsan pad basersax för att klippa k...

Lätt hantverk med stickad rullar: blomma Hot Pad

denna video visar hur man gör en blomma Hot Pad (eller pot innehavaren) med en stickad rulle (vad är en stickad rulle).Kompetens är mycket lätt att lära och detta projekt kan vanligen genomföras på en dag. Det är ett bra hantverk för nybörjare och ba...

Alesis trumma pad mesh huvudet konvertering med extra dubbla zon

Ändra om maskstorlek huvuden och lägga dubbla zon till en Alesis trumma 8 in Realhead pad. Modding pad för bättre utlösa svar och känsla. Detta kommer att fungera på både 8 in och 10 i Alesis Realdrum kuddar....

DIY generell version för upp praktiken Drum Pad

Tja, jag är en percussionist och jag tillbringat de senaste 3 och ett halvt år sedan jag började utan en practice pad (förvånansvärt). Ja, praktiken pads är ganska billigt (du kan få en för $15 från Remo), men jag föredrar att göra min egen. Jag hade...

Elektronisk Drum Pad

det finns knappast någon instructables om detta ämne, och ingen med denna design. Det är en originell idé av min pappa och jag. Vi skulle lika billig som vi kunde gå, medan du fortfarande göra en produkt som vi inte skulle vara pinsamt att använda of...

Skapa en Cloud Nine som Crash Pad med flyttbara täcka

vår son har autism och är en sensorisk sökare så skapar vi en sensorisk rum för honom. En av de saker vi ville för honom var en crash pad. En anständig storlek crash pad är i flera hundratals dollar sortiment så jag bestämde mig att skapa mina egna....

Bygga en elektronisk slumpmässiga karaktär Generator för en tid Pad kryptografi

folie NSA! Med den här enheten kan du göra En tid kuddar och skapa kryptogram som är okrossbar om de används korrekt. Konceptet är enkelt. Skapa en slumpmässig teckensträng (det är där enheten kommer in). Dela den här strängen av slumpmässiga tecken...

Bygga en elektronisk slumpmässiga karaktär Generator för en tid Pad kryptografi i bambu fall

folie NSA! Med den här enheten kan du göra En tid kuddar och skapa kryptogram som är okrossbar om de används korrekt. Konceptet är enkelt. Skapa en slumpmässig teckensträng (det är där enheten kommer in). Dela den här strängen av slumpmässiga tecken...

Dator kylning pad

super coll dator kylning pad med lägger och......

Hög effekt Laptop kylning pad med dammfilter

Tja, alla vi som har en bärbar dator och använda den för tung användning och spel, vi vet hur varm en riktig laptop faktiskt kan få. Om du har provat marknaden tillgänglig kyla kuddar då vet du också hur mycket värdelös de faktiskt är. Om du verklige...

Hur man gör en kylning Pad för Laptop hemma, lätt DIY

Hej alla! Välkommen till hur man gör - Mrboom.Idag ska jag visa dig hur man gör en kylning pad för Laptop i varma sommardagar.Det är en bra DIY idé. Jag hoppas du gillar dettaNu!Prenumerera på min kanal: http://goo.gl/aNz9dUTack!!!...

Laptop Cooler Pad

detta är en mycket enkel att göra laptop kylning pad tillverkad i ett enda stycke av akryl. Detta görs också att ställa in din bärbara dator i en bekväm ställning för att skriva.Material:-3 ft x 2 ft x1/4 "bit av akryl eller en tillräckligt stor enda...

Laptop kylning Pad

Detta är bara ett skyltfönster Instructable visar laptop kylning pad som jag gjorde. Jag använde en bandsåg för att skära hål i områdena vent. Det är helt passiv, men det fungerar bra och var gjord främst av skrot trä....

Laptop kylning Pad med 4-portars USB-hubb

jag har använt min laptop med en kylning pad och en 4-portars USB-hub men problemet är jag inte gillar det. att vara liggande blockerar CD-enhet eller andra portar eller ventiler för övrigt tyckte jag inte bära värmeskyddet och navet separat alla var...

Asiatiska snabbnudlar rör Fry (Fake Pad Thai)

denna nudelrätt påminner mig om några av de nudel rätterna på PF Changs. Dess nästan som pad thai också men inte riktigt. Jag kommer att varna dig att det är lite kryddig. Om du är matlagning för kiddos kan du minska chili vitlökssås. Det är super lä...

Braille tryck Pad "rör inte" The Paradox

Observera:Detta gjordes i namn av ironi, inte avsedda att förolämpa på något sätt!i·ro·ny/Ë Ä «rÉ nÄ /Noun:Ett är menande med hjälp av språket som normalt innebär motsatsen, typiskt för humoristiska eller empatiska effekt.I mitt arbete jag stött på n...

En position känsliga midi drum pad

SynPad är en position känsliga midi drum pad att du kan bygga själv med hjälp av enkla material och verktyg för runt 50 brittiska pund (beroende på vilka material du redan har, och hur många kuddar du vill göra.) Pad kan upptäcka där du har drabbat d...

Hur du ändrar din DDR pad att spela med din Gameboy Advance

modifierade enheten var en del av ett projekt för min konst klass. Vi skulle behöva plocka en enhet och ändra den med en ny funktion. Jag valde en Gameboy Advance och modifierad med en Dance Dance Revolution pad. Jag valde den Spela Pacman eftersom d...