Handschoen van de Hyper-Reality Augmented (5 / 8 stap)

Stap 5: Arduino Arduino,, ontmoet Wave Shield.


"Hello Wave Shield. Mijn mijn heb je een mooi volumeknop "..." Oh! Oh, dank u heer Italiaan glad praten..."

Sorry, ik dwaal af.

Hier is wat we niet bent gaat om u te tonen: drie uur van solderen! Wat is groot over Lady Ada en haar roemrijke producten is dat ze goedkoop zijn en ze met echt goede instructies komen! Plus, de dame, houdt de kosten omlaag door niet het monteren van de planken en op zijn beurt, je leert om te solderen als een robot! Wat zuigt is, het pad naar het solderen als een robot verwant is de wandeling Dante nam met Virgil.

Wees niet skerd! Solderen is een grote vaardigheid!

De volgende ding om te doen is het volgen van de tutorial "Gebruiken het" op de WAVE SHIELD om te leren hoe... uh... gebruiken. Dit gaat met behulp van uw SD CARD FORMATTER en CARD, krijgen de bestanden op de kaart en krijgt de CODE! Onze code is gepost hieronder. DIT VRAAGT VEEL VAN EEN NIEUWE GEBRUIKER VAN DE ARDUINO!!! Niet worden ontmoedigd als het niet soepel gaat. Het niet voor ons beide.

CODE: Hieronder hier, kopieer en plak in de Arduino IDE.

#include "FatReader.h"
#include "SdReader.h"
#include
#include "WaveUtil.h"
#include "WaveHC.h"

Kaart van de SdReader; Dit object bevat de gegevens voor de kaart
FatVolume vol; Dit houdt de informatie voor de partitie op de kaart
FatReader wortel; Dit bevat de gegevens voor het bestandssysteem op de kaart
F FatReader; Dit bevat de gegevens voor het bestand we spelen
WaveHC Golf; Dit is de enige Golf (audio) object, omdat we zullen slechts één filter tegelijk spelen
uint8_t dirLevel; inspringing van niveau voor bestand/map namen (voor prettyprinting)
dir_t dirBuf; buffer voor de map leest

ongeldig setUsUpTheCard(void) {}
pinMode (2, OUTPUT);
pinMode (3, OUTPUT);
pinMode (4, OUTPUT);
pinMode (5, OUTPUT);

Als (! card.init(true)) {//play met 4 MHz spi als 8MHz niet voor u werkt
Als (! card.init()) {//play met 8 MHz spi (standaard sneller!)
putstring_nl ("Card init. mislukt!"); Er ging iets mis, laat uitprinten waarom
sdErrorCheck();
while(1); vervolgens 'stoppen' - niets doen!
}
Nu gaan we voor een FAT-partitie!
uint8_t deel;
voor (deel = 0; deel < 5; deel ++) {/ / Wij hebben maximaal 5 "slots" om in te kijken
Als (vol.init (kaart, deel))
breken; We vonden een, laat borgtocht
}
Als (deel == 5) {/ / als we uiteindelijk niet het vinden van een :(
putstring_nl ("geen geldige FAT-partitie!");
sdErrorCheck(); Er ging iets mis, laat uitprinten waarom
while(1); vervolgens 'stoppen' - niets doen!
}
Probeert te openen van de root directory
Als (! root.openRoot(vol)) {}
putstring_nl ("kan niet openen root dir!"); Er ging iets mis,
while(1); vervolgens 'stoppen' - niets doen!
}
Oef! Daar kregen we voorbij de harde delen.
putstring_nl ("bestanden gevonden:");
dirLevel = 0;
Afdrukken van alle bestanden in alle mappen.
lsR(root);
}

/*
* lijst recursief - mogelijk stackoverloop als submappen ook genest
*/
VOID lsR (FatReader & d)
{
int8_t r; geeft het niveau van recursie

terwijl ((r = d.readDir(dirBuf)) > 0) {/ / Lees het volgende bestand in de directory
overslaan van submappen. en...
Als (dirBuf.name[0] == '.')
blijven;

voor (uint8_t ik = 0; ik < dirLevel; i ++)
Serial.Print(' '); Dit is voor prettyprinting, spaties vooraan zetten
printName(dirBuf); de naam van het bestand dat we net ontdekt afdrukken
Serial.println(); en een nieuwe lijn

Als (DIR_IS_SUBDIR(dirBuf)) {/ / wij zal recursief op elke direcory
FatReader s; Maak een nieuwe directory-object om informatie
dirLevel += 2; streepje 2 ruimten voor toekomstige afdrukken
Als (s.open (vol, dirBuf))
lsR(s); lijst van alle bestanden in deze map nu!
dirLevel-=2; de extra inspringing verwijderen
}
}
sdErrorCheck(); doen we OK?
}

/*
* afdrukken dir_t naamveld. De output is 8.3 opmaken, zo als geluid. WAV- of bestandsnaam. DAT
*/
VOID printName (dir_t & dir)
{
voor (uint8_t ik = 0; ik < 11; i ++) {/ / 8.3-indeling heeft 8 + 3 = 11 brieven in het
Als (dir.name[i] == ' ')
blijven; geen spaties in de naam worden niet afgedrukt
Als (ik == 8)
Serial.Print('.'); na de 8e brief, plaats een stip
Serial.Print(dir.name[i]); het zoveelste cijfer afdrukken
}
Als (DIR_IS_SUBDIR(dir))
Serial.Print('/'); mappen krijgen een / eind
}

Speelt een volledige bestand van begin tot eind met geen pauze.
ongeldig playcomplete(char *name) {}
Bel onze helper vinden en spelen deze naam
playfile(name);
terwijl (wave.isplaying) {}
niets te doen tijdens het spelen van haar
}
nu zijn gedaan afspelen
}

ongeldig playfile(char *name) {}
Zie als de Golf-object is momenteel bezig met iets
Als (wave.isplaying) {/ / al het spelen van iets, dus stoppen met het!
Wave.stop(); Stop ermee
}
kijken in de root directory en open het bestand
Als (! f.open (root, naam)) {}
putstring kon niet ("open bestand"); Serial.Print(name); terugkeer;
}
OK lees het bestand en zet hem in een golf-object
Als (! wave.create(f)) {}
putstring_nl ("niet een geldig WAV"); terugkeer;
}

OK tijd om te spelen! Start het afspelen
Wave.Play();
}

VOID sdErrorCheck(void)
{
Als (! card.errorCode()) keren;
putstring ("SD i/o-fout:");
Serial.Print(Card.ErrorCode(), HEX);
putstring (",");
Serial.println(Card.errorData(), HEX);
while(1);
}

/*************************************
* DIT IS HET GOEDE SPUL ***
*************************************/

int tilt_port = 13; digitale poort de neigingsensor is op
int tilt_original; houdt de beginpositie van de Kantelsensor
voor faux versnellingsmeter actie

VOID Setup {}
Serial.begin(9600);

pinMode (tilt_port, INPUT);
int tilt_original = digitalRead(tilt_port);

setUsUpTheCard(); initialiseren van de Wave Shield
}

int duim = 0;
int aanwijzer = 0;
int midden = 0;
int ring = 0;
int pinky = 0;
int tilt_waiting = 0;
int tilt_inmotion = 0;

int gekruld = 0;
int curled_previous = 0;

void loop {}
int duim = analogRead(A4);
int aanwijzer = analogRead(A3);
int midden = analogRead(A2);
int ring = analogRead(A1);
int pinky = analogRead(A0);

gekruld = 0;

/*
* de duim lijkt te zijn b0rked
* willekeurig (?) stokken op 0
* Dus laten we negeren
*/
Als (duim > 120) {}
gekrulde += 1;
}
Als (aanwijzer > 150) {}
gekrulde += 10;
}
/*
* de middelvinger is schijnbaar altijd op
* Dus laten we negeren
*/
Als (middelste > 130) {}
gekrulde += 100;
}
Als (ring > 170) {}
gekrulde += 1000;
}
Als (pinky > 120) {}
gekrulde += 10000;
}

Als (gekruld > = 11100) {}
tilt_check ("PUNCH", "PUNCH. WAV");
} else {}
tilt_check ("GUN", "GUN. WAV");
}
/*
Als (gekruld == 0) {}
Karate CHOP!
tilt_check ("Hak", "CHOP. WAV");
} else if (gekruld == 1000 + 10000) {}
PISTOOL
tilt_check ("GUN", "GUN. WAV");
} else if (gekruld == 9999) {}
SPIIIIIDEY-MAN
tilt_check ("SPIDEY", "SPIDEY. WAV");
} else if (gekruld == 10 + 1000 + 10000) {}
VUIST
tilt_check ("PUNCH", "PUNCH. WAV");
}
*/
Serial.Print ("duim:"); Serial.println(Thumb);
Serial.Print ("aanwijzer:"); Serial.println(pointer);
Serial.Print ("Midden:"); Serial.println(Middle);
Serial.Print ("ring:"); Serial.println(ring);
Serial.Print ("pinky:"); Serial.println(Pinky);
Serial.Print ("gekruld:"); Serial.println(curled);
Serial.println("");
delay(15);
}

VOID reset_check (int reset = 0) {}
Als (reset || gekruld! = curled_previous) {}
tilt_waiting = 0;
tilt_inmotion = 0;
curled_previous = gekruld;
}
}

VOID tilt_check (String message, char * filename) {}
reset_check();
int tilt = digitalRead(tilt_port);
Serial.println(Tilt);
Als (! tilt_waiting) {}
tilt_waiting = 1;
tilt_original = tilt;
} else {}
Als (kantelen! = tilt_original) {}
tilt_inmotion = 1;
}
Als (tilt_inmotion & & kantelen == tilt_original) {}
Serial.println(Message);
Serial.println(filename);
playcomplete(filename);
reset_check(1);
}
}
}

Gerelateerde Artikelen

Handschoen van de emancipatie van de Haptika

Handschoen van de emancipatie van de Haptika

Haptika is een verzameling van DIY wearable technologie kits ter afzwakking van de gevolgen van seksueel en lichamelijk misbruik. Overlevenden van misbruik kunnen eventueel de fysiologische en psychologische gevolgen van geweld door zelfstandigen hap
Handschoen van licht

Handschoen van licht

ik weet er een paar mensen die dit maar ik heb geen dat gaf een volledige instructable (van wat ik gevonden) over hoe om ze te bouwen dus ik een zelf maakte gezien. Ik kreeg deze ible van lftndbt de handschoen of Power en wilde ingaan op hetIk maakte
DE SPARKLER handschoen van alle AWSOMENESS

DE SPARKLER handschoen van alle AWSOMENESS

technologie is geworden... VUURWERK!!!wat je nodig hebt-spion versnelling nacht bril (of elke andere led bril)een schoen laceeen held van de gitaar op tour ds mini gitaarDit is mijn eerste instructable leuke reacties gelieveStap 1: de ds-gitaar de gi
Augmented Reality Tutorials (8 Tutorial Pack)

Augmented Reality Tutorials (8 Tutorial Pack)

In deze tutorials zal niet ik geen achtergrond in theorie het is gericht op het resultaat hoe het te bereiken! Na de uitvoering van alle 8 tutorials getoond beneden (Bekijk alle stappen) en experimenteren met het, u zal zitten kundig voor zoiets als
Bouwen van Freddy's handschoen

Bouwen van Freddy's handschoen

ooit wilde Freddy Krueger?Geweldig, nu u kunt!Dit is een vrij eenvoudig te bouwen dat worden voor zeer goedkoop en in sommige gevallen gratis gemaakt kan. Er is een heleboel verschillende manieren om te gaan op het, dit is gewoon een manier.Het creër
Veiligheidshelm Virtual Reality

Veiligheidshelm Virtual Reality

Het dragen van een Virtual Reality headset kunnen zeer gevaarlijk zijn, vooral zo als u door middel van virtuele werelden zijn wandelen (of hardlopen). Hardlopen in muren of andere objecten kan worden voorkomen als deze veiligheidshelm wordt gedragen
Dragon handschoen geschaald

Dragon handschoen geschaald

Ik wilde een interessante prop maken zonder te veel geld uit te geven. Ik zag dragon schaal kits die je in echt cool uitziende handschoenen breien kunt, maar niets had vingers of claws. Dit gaf me een idee om de handschoen van een draak. Het is een e
Bouwen van een Raspberry Pi SUPER weerstation

Bouwen van een Raspberry Pi SUPER weerstation

Laten we eerlijk zijn, wij mensen praten over het weer een veel ⛅️. De gemiddelde persoon praat over het weer vier keer per dag, voor een gemiddelde van 8 minuten en 21 seconden. Doe de wiskunde en die bedraagt 10 maanden van je leven dat je zal door
DIY u Virtual Reality Headset - Google karton

DIY u Virtual Reality Headset - Google karton

Van Google i/o vermeld het Google karton , wil ik altijd om een te krijgen, hierdoor is een lage prijs apparaat gevoel virtuele realiteit. Helaas, niet kopen van een google-karton dreef me gek. Zo besliste ik DIY een google karton door mijzelf. Het v
De Maitlands van Beetlejuice

De Maitlands van Beetlejuice

Als iemand die houdt van onconventionele kostuums maken, sprong ik in verrukking toen mijn man me vroeg om te laten deze Beetlejuice kostuums! Ik had een paar tutorials over dit eerder gezien maar te weten wat het is om te dragen grote hoofddeksels v
IJzeren Man Mark 1 Repulsor handschoen

IJzeren Man Mark 1 Repulsor handschoen

mijn te nemen over een Iron Man repulsor handschoen. Vervangen van de typische gloed stijl handschoen met LEDs deze maakt gebruik van een wegwerp cameraflits toe te voegen een beetje flare. Handschoen is gemaakt met behulp van eenvoudige papercraft.L
Hoe te ontdoen van yer fiets voor een ruwe afwerking.

Hoe te ontdoen van yer fiets voor een ruwe afwerking.

Het eerste ding yer gonna hoeft te doen is een fiets die u wilt proberen dit project met hebben.  Zorg ervoor dat een ruwe afwerking is wat je na, want het is een stuk makkelijker om te verwijderen van de verf dan het toe te passen!Ik ben begonnen me
Arduino "Knipperen praten" met behulp van Charlieplexing

Arduino "Knipperen praten" met behulp van Charlieplexing

Dit project kan worden geclassificeerd als een apparaat van AAC (alternatief en Augmentative communicatie), die worden gebruikt als een communicatiemiddel voor mensen die lijden aan slopende ziekten zoals ALS en dergelijke, die leiden tot volledige v
Hoe te - Arc reactor van Iron Man (makkelijk te bouwen, studio afwerking) + 3D afgedrukt versie

Hoe te - Arc reactor van Iron Man (makkelijk te bouwen, studio afwerking) + 3D afgedrukt versie

Als een onderdeel van mijn prop maken initiatief, waarin een helm, de handschoen van iron man en dit-de arc reactor.Lees ook mijn ijzeren handschoen/handschoen hierLees ook mijn Diy Iron man telefoon geval hierAangezien ik had onlangs een 3D-printer