Baserade Arduino visuell musik display (3 / 4 steg)

Steg 3: Kod:



Dags att programmera Arduino! Lyckligtvis, programmet är en enkel som ledningarna. Känn dig fri att fippla runt med koden!

Det finns två olika program, med lite olika kod, som uppnår olika utseende. Den första ser mindre spänstiga och flimrar/bleknar lysdioderna mer. Andra är bouncier och blekna inte lamporna så mycket. Du kan antingen hämta dem via den zip arkivera, eller kopia/tidigare från här.

Här är koden för den första versionen, AudioVisualDisplay:

/*
* AudioVisualDisplay, ett program av Jacob Field, skriven för arduino
* UNO. Programmet använder 6 lysdioder ansluten till stift 8, 9, 10, 11, 12,
* och 13 som en visuell volym visar för ljud. Ljudet ska visas
* matas in Arduino via den analoga pin A0. Jag rekommenderar att använda en
* andra audio domkraft så att du kan höra ljud som spelas. ;) Känn dig fri
* att använda denna kod, eller någon del av den, i din egen personliga projekt,
* eller distribuera det fritt som du tycker passar, bara ge kredit om kreditinstitut
* är due.
*/

byte ledValue;
int signalIn;

void setup() {

Ange alla LED stift som utgångar
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
pinMode (10, OUTPUT);
pinMode (11, OUTPUT);
pinMode (12, OUTPUT);
pinMode (13, OUTPUT);
}

void loop() {

signalIn = analogRead(A0); Läs det analoga värdet och lagra den

ledValue = karta (signalIn, 0, 100, 0, 6); Konvertera 10 bit värdet ner till bara 7 olika värden

Switch(ledValue) {

fall 0:
Om värdet är 0 ange alla lampor låg
digitalWrite 8, låg.
digitalWrite (9, låg).
digitalWrite (10, låg).
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 1:
Om värdet är 1, ange den första lysdioden hög
digitalWrite 8, hög.
digitalWrite (9, låg).
digitalWrite (10, låg).
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 2:
Om värdet är 2, ange de första 2 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite (10, låg).
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 3:
Om värdet är 3, ange de första 3 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 4:
Om värdet är 4, ange de första 4 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, hög).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 5:
Om värdet är 5, ange de första 5 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, hög).
digitalWrite 12, hög.
digitalWrite 13, låg.
bryta;

fall 6:
Om värdet är 6, ange alla höga lampor
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, hög).
digitalWrite 12, hög.
digitalWrite 13, hög.
bryta;

}

}

Här är koden för den andra versionen, AudioVisualDisplayRev2:

/*
* AudioVisualDisplay, revidering 2, ett program av Jacob Field, skriven för den
* arduino UNO. Denna version använder en annorlunda algoritm för att analysera den
* signal, att skapa ett annorlunda utseende detta program använder 6 lysdioder anslutna till stiften
* 8, 9, 10, 11, 12 och 13 som en visuell volym uppvisning för ljud. Den
-ljud visas matas in Arduino via den analoga pin A0.
* Jag rekommenderar att du använder en andra audio jack så att du kan höra ljud som
* spelat. ;) Känn dig fri att använda denna kod, eller någon del av den, i din egen
* personliga projekt, eller distribuera det fritt som du tycker passar, bara ge
* kredit som äras bör.
*/

byte ledValue;
int valueHigh;
int signalIn;

void setup() {

Ange alla LED stift som utgångar
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
pinMode (10, OUTPUT);
pinMode (11, OUTPUT);
pinMode (12, OUTPUT);
pinMode (13, OUTPUT);
}

void loop() {

signalIn = analogRead(A0); Läs det analoga värdet och lagra den

valueHigh = valueHigh - 5. Subtrahera 5 från valueHigh så att den går över tid

om (signalIn > = valueHigh) {//If värdet kommer från audio domkraft är högre än det tidigare värdet av valueHigh:
valueHigh = signalIn; Ange värde kommer från audio jack för valueHigh
}

ledValue = karta (valueHigh, 0, 100, 0, 6); Konvertera 10 bit värdet ner till bara 7 olika värden

Switch(ledValue) {

fall 0:
Om värdet är 0 ange alla lampor låg
digitalWrite 8, låg.
digitalWrite (9, låg).
digitalWrite (10, låg).
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 1:
Om värdet är 1, ange den första lysdioden hög
digitalWrite 8, hög.
digitalWrite (9, låg).
digitalWrite (10, låg).
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 2:
Om värdet är 2, ange de första 2 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite (10, låg).
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 3:
Om värdet är 3, ange de första 3 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, låg).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 4:
Om värdet är 4, ange de första 4 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, hög).
digitalWrite 12, låg.
digitalWrite 13, låg.
bryta;

fall 5:
Om värdet är 5, ange de första 5 lysdioderna hög
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, hög).
digitalWrite 12, hög.
digitalWrite 13, låg.
bryta;

fall 6:
Om värdet är 6, ange alla höga lampor
digitalWrite 8, hög.
digitalWrite (9, hög).
digitalWrite 10, hög.
digitalWrite (11, hög).
digitalWrite 12, hög.
digitalWrite 13, hög.
bryta;

}

}

Se Steg
Relaterade Ämnen

Arduino + TFT = visuell musik

Sammanfattning:Ljud: I detta projekt Arduino läser en sträng av anteckningar som skrivs i formatet musik notation vi har kallat lätt musik språk. Det väljer varje musikalisk kommentar (eller resten), avgör dess frekvens och spelar alltså. Grafik: The...

Baserade Arduino Bi-color LED Matrix Tetris spelet

En av elektronik DIY kit jolliFactory kom upp med är den Bi-color LED Matrix Driver modul Kit. Denna modul är utformad för att kunna kedja-så att du kan seriekoppla moduler tillsammans med antalet moduler du behöver för att passa ditt projekt.Följand...

BASERADE ARDUINO MPPT sol LADDNINGSREGULATORN

BASERADE ARDUINO MPPT SOL LADDNINGSREGULATORNBesök min hemsida för Schematisk och kod Baserade ARDUINO MPPT sol LADDNINGSREGULATORNVad är Mppt (Maximum power point spårning)?"vi använder MPPT algoritm för att få maximal tillgänglig effekt från solcel...

Baserade Arduino - Power Control System för RPi bil PC

Hej alla! Jag är Michalis Vasilakis från www.ardumotive.com och i handboken jag kommer att visa dig hur man gör en enkel - baserade Arduino - Power Control System för RPi Car PC.Detta system är utformat för att undvika abrupta stängningen av PRi bile...

AbHhGD - baserade Arduino handhållna spelenheten

Detta är en skriva upp på min Arduino baserat handhållna spelenheten. Jag inser att det är ett ganska trevliga uttalande men hey, det är baserade Arduino, det är handhållen och det är en enhet som spelar spel!Steg 1: En handhållen gaming anordning......

Tempduino - Arduino baserade Temp och luftfuktighet Display

temperaturen på mitt kontor på jobbet varierar ganska mycket beroende på vilken tid på dagen, säsong och nycker andra människor jag delar golvet med. När jag sitter vid mitt skrivbord skakar okontrollerat eller svettas ymnigt det skulle vara trevligt...

Arduino + WiFi, musik lyhörd LED ljus fixtur

detta instructable ger anvisningar för att bygga en Saiko5 WiFi aktiverat LED armatur baserad på Arduino hobby plattform. Den innehåller stegvisa instruktioner från styrelsen design till lödning till fall integration, samt instruktioner förklarar hur...

Hemmabyggd (DIY) CNC router - baserade Arduino (GRBL)

Redan för några var månader eller år, jag planerar att bygga mitt eget CNC fräsmaskin. Nu bestämde jag mig för det var tid att göra det! Jag läser mycket om andra DIY projekt och till slut jag gillade designen från Arduino CNC intstructable som jag h...

Arduino 7 Segment Display Clock (+ ljud aktiveringen)

I detta instructable jag kommer att visa dig hur man gör ditt eget Arduino baserade 7 segment display (4 siffror) klocka med ljud aktiveringen funktion!Kretsen som använder den ATmega328p micro controller (samma som Arduino uno styrelsen) och den DS1...

Baserade Arduino Bi-color LED Matrix Audio Spectrum Visualizer

Efter att vi kom med Bi-color LED Matrix drivrutinsmodulen kit, har vi letat efter intressanta projekt att arbeta med den.Du kan vara intresserad av några av de projekt som vi har lagt upp på instructables använder detta ledde matrisen kit.Instructab...

Baserade Arduino Solar PV energimätare med Xively anslutning (kan övervakas på android eller iPhone)

Det har varit ungefär två dagar sedan jag gjorde den Arduino PV generationen mätare, men det var ett misstag att inte att ta de steg för steg bilderna innan du fortsätter för provningen. Och det var en hemsk idé att Visa raw du för så kallade elmätar...

Arduino + Android POV Display

POV Visa är ett roligt och intressant sätt att visa text i rymden. Detta är min första Instructables handledning så om du har några frågor inte tveka att skriva dem i en kommentar nedan.Steg 1: Vad du behöverAtt göra POV displayen jag använde:-En Ard...

Arduino LCD Twitter display

aka den omotiverat komplicerade bidirectionally kommunicera Arduino-baserad rullning Twitter display och anmälaren.----Detta projekt skedde främst som en ursäkt för att lära sig att använda tecken LCD-skärmar med min Arduino, och räkna ut hur man gör...

Arduino 7-Seg Display Clock

Detta är en Auduino klocka gjorde med Sunfounder kit. Detta är en riktigt cool projekt och lätt att göra!Steg 1: material Endast 9 material krävs för montering av arduino powered klockanSkärbrädaSladdarUSB-kabelTråd-kontakterCardstock boxSju segment...

Baserade Arduino House värmare Controler med SMS användargränssnitt

projektet innehåller instruktioner och koden för att bygga en uppvärmning controller för ditt hem eller avlägsna land hus, som kan kontrolleras och övervakas av GSM via SMS-kommandon. Jag började att utforma det så vi behövde en pålitlig och Register...

Baserade Arduino 4WD Bluetooth Microbot

Denna microbot är inspirerad av Arduino-Nano-baserade-Microbot. Istället för att använda 2 servon, är denna robot drivs av 4, vilket eliminerar behovet av spår.Micro controller jag använder är Bluno skalbaggen, som är en liten Arduino baserade contro...

Baserade Arduino RC med två växlar (mustasch som) för att undvika hinder

Min RCs funktion är baserad på två permanent öppen kretsar, en på vänster sida och en på höger sida av RC, som stängs när sidan knölar på något. En mustasch som kabeln trycks sedan på en skruv och växeln stängt ger signalen till arduino att vända sig...

Baserade Arduino remote översättare

Det finns 3 fjärrkontrollen är bara att titta på min TV, för TV, sätta topp låda och sound bar. Förfarande för att titta på TV är byta på TV att sätta sin källa till A / V, inkoppling ljudsystem och sätta dess källa för aux och inkoppling sätta topp...

Snow klockan (baserade Arduino)

dag jag ska visa dig hur man gör snö klockan. Det är en väckarklocka som bara går på när skolan är öppen. Men om skolan är stängd det går inte.Detta sker genom Arduino och vissa python kodning.Steg 1: Få delar För detta projekt behöver du:-En Arduino...