Muziek-melodie die in het donker klinkt (5 / 5 stap)

Stap 5:


als laatste stap, laten we het uitproberen. Sluit de USB op de Arduino en uploaden van de code, nu als er genoeg licht geplukt door de LDR niets zal gebeuren. Als dat het geval is, leg je hand dichter naar de LDR en de LED zal oplichten en de melodie wordt afgespeeld, in dit geval stille nacht voor consistentie met de afwezigheid van licht ;)

zodat er u gaan, een leuke en gemakkelijke manier te gebruiken Arduino gewoon voor de lol, hier is de volledige code

// TONES  ==========================================
Beginnen met het definiëren van de relatie tussen
Opmerking, periode, & frequentie.
#define 3830 / / 261 Hz
#define RE 3400 / / 294 Hz
#define MI 3038 / / 329 Hz
#define FA 2864 / / 349 Hz
#define SOL 2550 / / 392 Hz
#define LA 2272 / / 440 Hz
#define SI 2028 / / 493 Hz
#define DOM 1912 / / 523 Hz
Een speciale opmerking, 'R', te vertegenwoordigen een rust definiëren
#define rest 0

// SETUP ============================================
Spreker op een PWM-pin (digitale 9, 10 of 11) instellen
int speakerOut = 9;
Willen wij debuggen op seriële out? 1 voor Ja, 0 voor Nee
int DEBUG = 1;
int sensorPin = A0;            Selecteer de invoer pin voor de ldr
unsigned int sensorValue = 0;  variabele de waarde afkomstig van de ldr op te slaan

VOID Setup {}
pinMode (speakerOut, OUTPUT);
pinMode (2, OUTPUT);
pinMode (3, OUTPUT);
pinMode (4, OUTPUT);
Als (DEBUG) {}
Serial.begin(9600); Seriële uit als we willen dat foutopsporing instellen
}
}

MELODIE en TIMING ===
[Melody] is een array van nota's, vergezeld van beats [],
waarin elke nota's relatieve lengte (hogere # en langere opmerking)
int melodie [] = {RE, MI, SI, Rest, RE, RE, MI, RE, SI, Rest, LA, LA, FA, Rest, SOL, SOL, RE, Rest};
int verslaat [] = {8, 8, 8, 16, 64, 8, 8, 8, 16, 64,8,8,16,32,8,8,16,128};
int MAX_COUNT = sizeof(melody) / 2; Melodie de lengte, voor een lus.

Set algehele tempo
lange tempo = 80000;
Lengte van de pauze tussen notities instellen
int pauze = 1000;
Lus variabele meer Rest lengte
int rest_count = 100; <-BLETCHEROUS HACK; Zie ' opmerkingen '

Kern variabelen initialiseren
int tone_ = 0;
int verslaan = 0;
lange duur = 0;

// PLAY TONE  ==============================================
Pulse de spreker om af te spelen van een Toon voor een bepaalde duur
ongeldig playTone() {}
lange elapsed_time = 0;
Als (tone_ > 0) {als (tone_ == 3400 || tone_ == 3038) {}
digitalWrite (2, HIGH);
digitalWrite (3, laag);
digitalWrite (4, laag);
}
else if (tone_ == 2028 || tone_ == 2272) {}
digitalWrite (2, laag);
digitalWrite (3, hoge);
digitalWrite (4, laag);  }
else if (tone_ == 2864 || tone_ == 2550) {digitalWrite (2, laag);
digitalWrite (3, laag);
digitalWrite (4, HIGH);  } / / Als dit niet een Rest beat, terwijl de Toon heeft
minder lang dan 'duur', pulse spreker hoge en lage gespeeld
terwijl (elapsed_time < duur) {}

digitalWrite(speakerOut,HIGH);
delayMicroseconds(tone_ / 2);

DOWN
digitalWrite (speakerOut, laag);
delayMicroseconds(tone_ / 2);

Bijhouden van hoe lang we gepulseerde
elapsed_time += (tone_);
}
}
else {/ / Rest verslaan; lus keer uitstellen
for (int j = 0; j < rest_count; j ++) {/ / zienoot op rest_count
delayMicroseconds(duration);
}
}
}

LAAT DE WILDE RUMPUS BEGINNEN ===
void loop {}
Instellen van een teller te trekken uit de melodie [] en beats]
de waarde van de ldr leest:
sensorValue = analogRead(sensorPin);
if(sensorValue<500) {}
//
//
for (int i = 0; ik < MAX_COUNT; i ++) {}
tone_ = melodie [i];
Beat = slagen [i];

duur = beat * tempo; Timing instellen

playTone();

Een pauze tussen notities...
delayMicroseconds(pause);

Als (DEBUG) {/ / als foutopsporing, verslag lus, Toon, beat, en duur
Serial.Print(i);
Serial.Print(":");
Serial.Print(Beat);
Serial.Print("");
Serial.Print(tone_);
Serial.Print("");
Serial.println(duration);
}
}} / / set van de LED op
else {}
digitalWrite (2, laag);
digitalWrite (3, laag);
digitalWrite (4, laag); } / / set van de LED op

}

het foutopsporingsprogramma deel kunnen nuttig zijn voor educatieve doeleinden, aangezien u zien kunt de waarden worden opgenomen en welke tinten worden gespeeld door het apparaat

Gerelateerde Artikelen

De Anywhere Cup houder die oplicht In het donker

De Anywhere Cup houder die oplicht In het donker

De gloed in de donkere bekerhouder zal veranderen de manier waarop u iets drinken in het donker. Alles wat het is, is een unieke uitvinding van 3 stuk die zal automatisch aangepast aan eventuele tegenbovenkant tafelblad, waardoor het gemakkelijk te v
De zak van de kaars, of: hoe ik leerde ophouden en ongerust hou van het donker.

De zak van de kaars, of: hoe ik leerde ophouden en ongerust hou van het donker.

Heb je ooit een film been watching en zien waar de tekens zijn plotseling stortte in het donker. Een ondernemend persoon trekt altijd een aansteker of sommige wedstrijden. Yay! Helaas tenzij je in een film het licht verdwijnt snel van een wedstrijd o
Hoe maak je gloeien in het donker glas

Hoe maak je gloeien in het donker glas

GEWOON KIJKEN NAAR EEN VIDEO...OF ZIE DE VOLLEDIGE INSTRUCTIES HIERONDER...Hallo kerels,In deze tutorial u zal leren hoe te maken van de gloed in de donkere glazen / glasses mijn manier! Ze zijn geweldig en mooi gloeien in het donker! Ik eigenlijk kw
Eng ogen in het donker (schakelaar gecontroleerd)

Eng ogen in het donker (schakelaar gecontroleerd)

In dit instructable gaan we om dit eng uitziende led ogen die kunnen worden gecontroleerd met behulp van een switch triggerStap 1: De sjabloon knippenNeem een karton van gewenste lengte en verdeel het in drie delen. Knip de gewenste vorm van ogen op
Prullenbak naar schat 3, het donker terug te duwen

Prullenbak naar schat 3, het donker terug te duwen

ik vind een heleboel geweldige dingen als ik uit de stoeprand mijnbouw gewoon omdat ik vind dat een bruikbaar item maar betekent niet dat ik ga om het te gebruiken zoals het was bedoeldStap 1: materialen en gereedschappen ik vond verscheidene zonne-e
Stop wordt bang voor het donker

Stop wordt bang voor het donker

dit is een eenvoudige truc om te helpen van een kind (of iemand) who's afraid of duisternis voor het slapengaan.  Gebruik makend van een heel oude techniek van de piraat, kunt u uzelf voorbereiden voor duisternis en/of een plotselinge ninja aanval on
Het maken van een papier huis dat oplicht als het donker wordt!

Het maken van een papier huis dat oplicht als het donker wordt!

In deze tutorial zullen we u tonen hoe een papier huis dat oplicht als het donker te maken.  Om dit te doen zullen we gebruiken sommige naakte verf, een batterij, sommige standaard LEDs, een LDR (light afhankelijke resistor), een transistor en een we
Zonne-aangedreven licht dat in het donker werkt.

Zonne-aangedreven licht dat in het donker werkt.

Dit project is een lamp die op in het donker draait. De batterij dat de bevoegdheden van het licht is oplaadbaar en is aangesloten op een zonnepaneel. Dit project is goed als je hebben een lamp die kosten wilt omhoog tijdens de dag en wordt ingeschak
Hoe te verbeteren uw zicht in het donker (zelfstudie)

Hoe te verbeteren uw zicht in het donker (zelfstudie)

Awesome, eenvoudig en gratis oude piraat techniek over hoe te verbeteren uw zicht in het donker :) hoop dat het helpt.Link naar video hier incase de ingesloten niet werken of incase je op de ' ible app.     http://www.YouTube.com/watch?v=-OTfkL88wEQ
Gloeien in het donker vis bot

Gloeien in het donker vis bot

telkens ik kamperen gaan, er is één probleem dat ik kan nooit de oplossing te vinden. Dit probleem kan ik bijna ieder mens van de openlucht garanderen moest gezicht ten minste eenmaal in er woont, en dat probleem is struikelen over tent lijnen. Mijn
IJshockey puck met LED verlichting voor het spelen in het donker

IJshockey puck met LED verlichting voor het spelen in het donker

In de winter is het een geweldig leuk om te spelen IJshockey op de bevroren meren. De dagen zijn kort en het vroeg donker.Meestal zijn er geen verlichting voor het meer, zodat op sommige moment krijgt het moeilijk om te zien de puck.IJshockey puck me
Small Is Beautiful: Micro-Carving en Micro-schilderij een Robot die op het hoofd van een Pin staat.

Small Is Beautiful: Micro-Carving en Micro-schilderij een Robot die op het hoofd van een Pin staat.

Wat zijn de grenzen van de beweeglijkheid van de mens? Hoe klein kan een snijwerk worden gemaakt met behulp van alleen gehouden handgereedschap? Ik was benieuwd. Als een robot bouwer, zie: wie is geïnteresseerd in het leren hoe te maken micro-machine
Paardebloemen in het donker

Paardebloemen in het donker

Heres een foto nam ik in het donker (met flits) van een van de velden in de buurt van het huis.Foto: Eigenschap van mij, Ben Hylak
LED-nachtlampje die op in het donker draait

LED-nachtlampje die op in het donker draait

mijn eerste instructable! Dit is iets wat die ik oorspronkelijk gemaakt voor een vriend die er nog steeds gebruik van maakt. Het werkt heel mooi bij een mooi omgevingslicht toe te voegen aan een donkere kamer. Ik heb dit instructable omdat heb ik bes