Arduino Tutorial Bundle.: Arduino experimenterande Kit:. (ARDX) (8 / 13 steg)

Steg 8:.: musik:. -(Pieze Element) - CIRC06




Vad vi gör:
Till denna punkt har vi kontrollerat ljus, rörelse och elektroner, kan tackla sund nästa. Men ljud är en analog fenomen, hur kommer våra digitala Arduino klara? Vi kommer återigen lita på dess otrolig fart som låter det efterlikna analoga beteende. Det gör fäster vi ett piezoelement vid en av Arduino's digital stift. Ett piezoelement gör ett klickande ljud varje gång det är pulsade med ström. Om vi puls det på rätt frekvens (till exempel 440 gånger en sekund att göra Obs mitten A) dessa klick kommer att köras tillsammans för att skapa anteckningar. Kan får experimentera med det och få din Arduino spelar "Twinkle Twinkle Little Star".

(du kan också hämta bladet bakbord layout från botten av detta steg)

Delarna:

  • CIRC-06 bakbord blad
  • 2 stift huvud (x4)
  • Piezoelement (x1)
  • Wire

Kretsen och ansluta allt:
En liten Video av allt att vara inkopplad

Koden: - Fil > Sketchbook > exempel > digitala > Melody

/ * Melodi * (läpp) 2005 D. Cuartielles för K3 ** detta exempel används en piezo speaker för att spela melodier. Den skickar * en fyrkantsvåg av lämplig frekvens till piezo, * generera motsvarande tonen. ** Vid beräkningen av tonerna är gjord efter den * matematisk operation: ** timeHigh = period / 2 = 1 / (2 * toneFrequency) ** där de olika tonerna beskrivs som i tabellen: ** Observera frekvensen antika timeHigh * c 261 Hz 3830 1915 * d 294 Hz 3400 1700 * e 329 Hz 3038 1519 * f 349 Hz 2864 1432 * g 392 Hz 2550 1275 * en 440 Hz 2272 1136 * b 493 Hz 2028 1014 * C 523 Hz 1912 956 ** http://www.arduino.cc/en/Tutorial/Melody * / int speakerPin = 9; int längd = 15. antalet noteschar noterar [] = "ccggaagffeeddc"; ett utrymme representerar en restint beats [] = {1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4}; int tempo = 300; makulera playTone (int tonen, int längd) {för (länge jag = 0; jag < varaktighet * 1000 L; i += tonen * 2) {digitalWrite (speakerPin, hög); delayMicroseconds(tone); digitalWrite (speakerPin, låg); delayMicroseconds(tone);}} void playNote (char note, int varaktighet) {char namn [] = {'c', 'd ","e","f","g","a","b","C"}; int toner [] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956}; / / spela tonen motsvarar tonens namn för (int jag = 0; jag < 8; i ++) {om (namn [i] == OBS) {playTone (toner [i], varaktighet);}}} void setup() {pinMode (speakerPin, produktionen);} void loop() {för (int jag = 0; jag < längd; i ++) {om (anteckningar [i] == "") {fördröjning (beats [i] * tempo); / / Vila} annat {playNote (anteckningar [i], beats [i] * tempo);} / / paus mellan anteckningar delay(tempo / 2);}}

Inte fungerar?

  • Inget ljud - med tanke på storleken och formen av Piezoelementet är det lätt att missa de rätt hål på en skärbräda. Prova att dubbel kontrollera dess placering.
  • Can't tror medan the Melody är Playing. -Bara dra upp Piezoelementet samtidigt som du tror, ladda upp dina program sedan koppla in den igen.
  • Trött på Twinkle Twinkle Little Star? -Koden är skriven så du kan enkelt lägga till dina egna låtar, kolla in koden nedan för att komma igång.

Att göra det bättre:
Leker med hastighet:
Tidpunkten för varje not beräknas utifrån variabler, som sådan vi kan justera ljudet av varje not eller tidpunkten. Om du vill ändra hastigheten på melodin måste du ändra endast en linje.

int tempo = 300; ---> int tempo = (nya #)

Ändra till ett större antal bromsa melodin, eller ett mindre antal att snabba upp.
Tuning noterna:
Om du är orolig för anteckningar som tune lite ur kan detta fastställas också. Anteckningar har beräknats baserat på en formel i blocket kommentar längst upp i programmet. Men för att ställa in enskilda noter justera bara deras värden i matrisen toner [] uppåt eller nedåt tills de låter rätt. (varje not motsvaras av sitt namn i den namn [] (array dvs. c = 1915)

char namn [] = {'c', 'd ","e","f","g","a","b","C"}; int toner [] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956};

Komponera din egen melodier:
Programmet är förinställd att spela "Twinkle Twinkle Little Star" men som den är programmerad gör ändra låten lätt. Varje låt är definierad i en int och två matriser, int längden definierar antalet anteckningar, den första matris anteckningar [] definierar varje not och den andra slår [] definierar hur länge varje not spelas. Några exempel:
Twinkle Twinkle Little Star

int längd = 15. char noterar [] = "ccggaagffeeddc"; int slår [] = {1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4};

Grattis på födelsedagen (första raden)

int längd = 13. char noterar [] = "ccdcfeccdcgf"; int slår [] = {1,1,1,1,1,2,1,1,1,1,1,2,4}.

Se Steg
Relaterade Ämnen

Hur du sätter samman "Sele för Arduino/Seeeduino kit" av utsäde Studio

detta instructables är om hur man montera "Sele för Arduino/Seeeduino kit" av utsäde Studio.Selen är en ram till för att hålla en Arduino och ett 9 V batteri.Vad du behöver:"Utnyttja för Arduino/Seeeduino kit" från www.SeeedStudio.comM...

Tryckknapp blinkande lampa

detta instructable förklarar hur man gör en LED enhetslampa att blinka på och av under tio sekunder genom att trycka på knappen. Ljuset kan också stängas av genom att trycka på en separat knapp från.Detta exempel är liknande till "knapp att trycka på...

Praktiker Guide för Arduino som utförs på OIT

resurserAdafruit ARDX - v1.3 experimenterande Kit för ArduinoPraktiker Guide för Arduino (PDF)Bröd styrelsen layouter (PDF)Arduino Tutorial Bundle (Instructable)Denna Arduino handledning kommer att vara mycket liknar Arduino Tutorial bunt Instructabl...

Arduino Chiptune låten

denna handledning är att lära dig om grundläggande Arduino funktionerna, flyback dioder och transistorer. Detta Instructable bygger bort av en krets från Arduino experimenterande Kit.Detta är en bra handledning för alla som börjar med Arduino. Dessa...

Leprechaun fälla!

Den 17 mars kommer runt en gång om året och fånga en leprechaun är alltid på min familjer att göra-lista. Vi utformar ett projekt som kommer att locka i en lömska lilla gröna guld grävare och fånga dem i deras outsläcklig lust för guld. Vi ser fram e...

Creeper Catcher

Någonsin undrar om någon står utanför ditt hem peering i genom fönstret i dörren? Tja, för min instructable, kommer jag att skapa en Creeper Catcher. Detta instructable kommer att meddela dig när någon står på din främre steget. Ingen mer smygande......

Komma igång för Arduino Kit (nybörjare)

Hej är killar, Arduino startpaket som tillhandahålls av ElecFreaks (fokus på öppen hårdvara 4 år) ett bra material att få användare i lärande steg för steg bekvämt. För detta kit, det finns ingen anledning för lödning, Anslut sedan användning, byggan...

Arduino bot Android fjärrkontroll

Hallå där,I detta instructable jag vill undersöka sambandet mellan Arduino och Android. Båda är öppna, lätt-till-program miljö (Ja, Android inte så lätt, men ganska), och samspelet mellan dem låter intressant mänskliga-till-anordning interaktion.Måle...

Cykel - drivna arduino vattenreningssystem (med UVC ljus)

Detta instructable visar hur att driva en UV-C vattenreningssystem med en cykel och arduino kontroll. En dynamo i den bakre delen av cykeln laddar ett batteri (som vi har från början ut redan för detta projekt) som kör arduino och ljuset.De flesta av...

Belysta penna låda med Arduino

Jag hittade en liten trälåda och tänkt på att göra det en trevlig vila för mina pennor. Jag tror det finns flera - kanske enklare och billigare metoder att ändra denna lilla låda - men jag ville bara använda saker jag redan hade hemma.Videolink• Träl...

Paperduino 2.0 med krets Scribe - papper Arduino

vad händer om att göra en Arduino, eller ledningar upp en Arduino var lika enkelt som att skriva en ut? I denna tutorial ut vi vårt eget Arduino Pro Mini styrelsen med en pennplotter och Electroninks krets Scribe (en rollerball penna med mycket ledan...

En Arduino-powered microplate spektrofotometer

Spektrofotometrar är gemensamma delar av utrustning i en bioscience labb. De utför en enkel funktion - för att mäta hur mycket ljus en vätskan absorberar vid en viss våglängd. Många kemikalier absorberar ljus vid inställda våglängden, och så detta ka...

BlueDuino Android kontrollerade Arduino Robot

Till att börja med detta är min första instructable, och min första tutorial övergripande. Med detta sagt påpeka i kommentarerna vad du inte förstår i detta inlägg.För några veckor sedan fick jag nyfiken på hur Bluetooth styra på arduino fungerar, ef...

Hur set av brödunderläggen Arduino kompatibel.

Det är ingen hemlighet att runt oomlout HQ vi är stora fans av open source Arduino mikro-controller. Färdiga Duemilanove styrelsen är en fantastisk prototyping plattform, men ibland det är kul att göra något själv. Vad som följer är en guide om hur a...

En guide för att styra saker med varierande input (via arduino)

hjärtat i detta projekt är en) koppla upp en sensor till arduino analog ingång och b) programmering med if... else-sats.Detta projekt visar en dator kylsystemet för att behålla viss temperatur inom ett dator torn.Jag använde följande produkter och sj...

Arduino Flash Controller för fotografering

är en pank amatörfotograf är inte lätt.Film, kemikalier och papper är inte billigt och en budget för vissa studioljus är obefintlig.Så, jag bestämde mig för att, med hjälp av min trogna arduino, skapa min egen sync controller att använda med engångsk...

USB-brons sätta en klocka på slående klocka (med Arduino)

irritera dina medarbetare: leda dem in i ber dig att stänga av din speciella PC-klocka!Denna lilla riggen infact gränssnitt via USB till din PC-klocka och genererar halv timmar dings på en riktig brons sätta en klocka på. Bra grejer i din office och...

Arduino projekt: Testa spänner LoRa modul RF1276 för GPS-spårning lösning

Anslutning: USB - seriellBehov: Chrome webbläsareBehov: 1 X Arduino MegaBehov: 1 X GPSBehov: 1 X SD-kortBehov: 2 X LoRa Modem RF1276Funktion: Arduino skicka GPS värde till huvudsakliga bas - Main bas lagra data i Dataino Server Lora Module: Ultra lån...

Spela Tetris-spel med Arduino

Utveckla Tetris spelet via Arduino och lär dig att utveckla ett simulerade spel snabbt för att återskapa klassiskt. Tetris spel hjälpa maker att studera användningen av LCD-skärmen och Arduino program.Demo från:Arduino avancerade kit som tillhandahål...