Light Up effecten toevoegen aan achtertuin spellen zoals Cornhole (7 / 16 stap)

Stap 7: De Code van de Arduino


Hier is een kopie van de code die ik voor dit project gebruikte. U kunt kopiëren en plakken in een nieuwe schets of download het codebestand.

#include
#include #include #include "WaveUtil.h" #include "WaveHC.h"

Kaart van de SdReader; Dit object bevat de gegevens voor de kaart FatVolume vol; Dit bevat de informatie voor de partitie op de kaart FatReader wortel; Dit bevat de gegevens voor het bestandssysteem op de kaart FatReader f; Dit bevat de gegevens voor het bestand we aan het spelen bent

WaveHC Golf; Dit is de enige Golf (audio) object, omdat we zullen slechts één filter tegelijk spelen

#define DEBOUNCE 100 / / button debouncer

int ledPin = 6;

deze handige functie geeft het aantal bytes in het RAM, momenteel gratis groot voor debugging! int freeRam(void) {extern int __bss_end; extern int * __brkval; int free_memory; als (__brkval (int) == 0) {free_memory = ((int) & free_memory)-((int) & __bss_end);} anders {free_memory = ((int) & free_memory)-(__brkval (int));} return free_memory;}

VOID sdErrorCheck(void) {als (! card.errorCode()) terugkeer; putstring ("\n\rSD I/O fout:"); Serial.Print(Card.ErrorCode(), HEX); putstring (","); Serial.println(Card.errorData(), HEX); while(1); }

<---void Setup void setup {/ / instellen van seriële poort Serial.begin(9600) putstring_nl ("WaveHC met 6 knoppen"); putstring ("vrije RAM:"); Dit kan helpen met het opsporen van fouten, lopen uit RAM is slechte Serial.println(freeRam()); Als dit onder 150 bytes kan het problemen magie! De pennen voor de DAC-besturingselement instellen Deze pennen worden gedefinieerd in de bibliotheek pinMode (13, 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! } / / inschakelen optimaliseren lees - sommige kaarten kunnen timeout. Uitschakelen als u problemen card.partialBlockRead(true) ondervindt; Nu gaan we voor een FAT-partitie! uint8_t deel; voor (deel = 0; deel < 5; deel ++) {/ / Wij hebben maximaal 5 "slots" om te zoeken in als (vol.init (kaart, deel)) onderbreking; / / wij één gevonden, laat borgtocht} als (deel == 5) {/ / als we uiteindelijk niet het vinden van een :(putstring_nl ("geen geldige FAT-partitie!"); sdErrorCheck(); / / iets misgegaan, laat uitprinten waarom while(1); / / vervolgens 'stoppen' - niets doen!} / / laat de gebruiker te vertellen over wat we gevonden putstring ("Using partitie"); Serial.Print (deel, DEC); putstring (", type is vet"); Serial.println(vol.fatType(),DEC); FAT16 of FAT32? 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("Ready!");

pinMode (ledPin, OUTPUT); }

//<------------------------------------------------------------------------------------- Void Loop

void loop {/ / putstring("."); / / uncomment dit om te zien als de lus niet actief

int sensorValue = 0; int sensorPin = 5; int sensorThreshold = 200;

sensorValue = analogRead(sensorPin); Lees de invoer pin

Serial.println(sensorValue); debug waarde

if(sensorValue > sensorThreshold) {Serial.println ("geluiden afspelen en lichten"); digitalWrite (ledPin, hoge); / / sets van de LED op playcomplete("1.WAV"), digitalWrite (ledPin, laag); / / Hiermee stelt u de LED uit delay(500);

} }

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

ongeldig playfile(char *name) {/ / zien als de Golf-object is momenteel bezig met iets als (wave.isplaying) {/ / al het spelen van iets, dus stoppen! wave.stop(); / / stoppen} / / kijken in de root directory en open het bestand als (! f.open (root, naam)) {putstring ("kon niet open bestand"); Serial.Print(name); terugkeer; } / / OK lezen van 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 afspelen wave.play(); }

Gerelateerde Artikelen

Hoe verhoogde Stencil effecten toevoegen aan meubilair

Hoe verhoogde Stencil effecten toevoegen aan meubilair

Met het land chique van klei-op basis reliëf gips kunt u een mooie textuur op uw stuk als een geheel, of vorm verhoogd reliëfs die eruit zien alsof ze deel van het oorspronkelijke stuk uitmaakten. Met een verscheidenheid van kleuren om uit te kiezen,
Hoe u Chromakey (green screen-effecten) toevoegt aan een film gratis!

Hoe u Chromakey (green screen-effecten) toevoegt aan een film gratis!

UPDATE Opmerking: een nieuwe intructable die laat hoe zien met een gratis, groter en beter programma Green Screen effecten toevoegen aan uw film is geboektwilt u een film als de profs? Met behulp van groen scherm bewerken? Het is allemaal gratis (naa
Hoe u Chromakey (green screen-effecten) toevoegt aan een film voor gratis 2

Hoe u Chromakey (green screen-effecten) toevoegt aan een film voor gratis 2

Hoe te voegen Chroma Key (groene scherm-effecten) aan A Movie For FREE - de beste home video's zijn hier nota: de video hierboven is bij lage kwaliteit, dus adviseer ik u de hoge kwaliteit video downloaden hier. En als de koppeling gebroken is, rappo
Een snuit flash toevoegen aan een Nyko perfecte Shot Wii grip

Een snuit flash toevoegen aan een Nyko perfecte Shot Wii grip

dit instructable is gonna be alle over het toevoegen van een flitser aan het einde van de Nyko perfecte Shot pistool grip voor Wii-afstandsbedieningen.Ik de grip te zootje voor schieten spellen zoals Resident Evil, maar voor mij ontbrak het de visuel
Knoppen toevoegen aan uw muis

Knoppen toevoegen aan uw muis

Ik heb spelen FPS games op mijn PC voor een tijdje nu, en ik vond mezelf vaak behoefte aan meer knoppen op mijn muis. Dat is waarom ik kocht in één keer een Logitech G9, maar in sommige spellen zelfs die de knoppen op het extra 4 die leek te zijn paa
WiFi toevoegen aan uw 3D-Printer

WiFi toevoegen aan uw 3D-Printer

3D Printers hebben een lange weg afgelegd in de afgelopen 2 jaar. Hiermee worden de norm om te worden vastgebonden aan uw printer en wijden een hele computer voor het uitvoeren van uw afdruktaken of erger nog uw printers gebruiken SD-kaarten aan snea
Draadloos opladen toevoegen aan uw Smartphone

Draadloos opladen toevoegen aan uw Smartphone

meer en meer smartphones ondersteunen tegenwoordig draadloze opladen, of het nu gaat om out-of-the-box of via een beschikbare hardware-upgrade (speciale achtercover). maar er is geen reden waarom alle andere USB apparaten mag niet genieten van de lux
Lades toevoegen aan uw werkbank

Lades toevoegen aan uw werkbank

Dit Instructable toont hoe ik aan een werkbank met 2 x 4 lades toegevoegd om te beter gebruik maken van de ruimte onder de workbench.De beginselen die in dit Instructable besproken dient te gelden tot bijna een werkbank of andere afgesloten ruimte.Vo
Arduino en Visuino: gebruik PCF8574/PCF8574A I2C GPIO meer digitale kanalen toevoegen aan Arduino

Arduino en Visuino: gebruik PCF8574/PCF8574A I2C GPIO meer digitale kanalen toevoegen aan Arduino

Het maakt niet uit hoeveel een Arduino poorten board heeft, ze lijken nooit genoeg voor de cool nieuw project dat u in gedachten hebt ;-). Gelukkig is er een oplossing. De Arduino heeft zowel SPI als I2C pinnen, en er zijn een aantal I2C en SPI GPIO
Een LinkedIn profiel Badge toevoegen aan uw WordPress Blog

Een LinkedIn profiel Badge toevoegen aan uw WordPress Blog

oordeelkundig gebruik van de verschillende sociale media websites kan verbeteren uw online professionele aanwezigheid en verwante netwerkmogelijkheden. Nochtans, als u wilt dat dit werk zo goed mogelijk, is het belangrijk deze toepassingen worden geï
Tekst toevoegen aan afbeeldingen met opdracht Linux 'convert'

Tekst toevoegen aan afbeeldingen met opdracht Linux 'convert'

dit instructable zal u tonen hoe kunt u tekst toevoegen aan een afbeelding met behulp van de opdracht convert in Linux. Een waardevolle gebruik van dit is het plaatsen van een bijschrift op een plaatje voor documentatie. Een ander gebruik zou het bre
Een afbeelding toevoegen aan een statusupdate Facebook

Een afbeelding toevoegen aan een statusupdate Facebook

mijn zus onlangs haar haar knippen. Ik wil foto's, maar ze weet niet hoe ze toevoegen aan een statusupdate van Facebook.  Dus, dit instructable is voor haar, en demonstreer hoe een enkele afbeelding toevoegen aan een statusupdate Facebook zo snel en
Een halogeenkoplamp toevoegen aan uw Game Boy Color

Een halogeenkoplamp toevoegen aan uw Game Boy Color

als je bent opgegroeid met het afspelen van Gameboy zoals ik deed, ben ik zeker u talloze uren van pokemon veldslagen, waarvan vele alleen mogelijk door de reddende genade van uw wormlight waren. Ik weet dat ik veel lange nachten van Gameboy te danke
Glam toevoegen aan uw saaie haaraccessoires met behulp van eenvoudige DIYS

Glam toevoegen aan uw saaie haaraccessoires met behulp van eenvoudige DIYS

Bent u verveeld van duidelijke zwart-wit haaraccessoires? Vandaag ben ik het delen van sommige gemakkelijk DIYs te sparren de saaie haaraccessoires met glamoureuze ones. Strass haaraccessoires kan kosten u veel maar wanneer u DIY hen is slechts een f