Arduino Audio Input (8 / 8 steg)

Steg 8: Klippning indikator




En klippning indikator LED är användbart så att du vet om du behöver att sänka känsligheten på förstärkaren. Om din signal klippning som det kommer till Arduino, förlorar du information om signalen. Figurerna 2 och 3 visar den inkommande signalen (gul) och data som lagras i Arduino (blå) för både 8kHz och 38,5 kHz provtagning priser. Märke hur Arduino helt missar uppförandet av toppar och dalar på grund av klippning.

För att ställa in räknaren klippning skapat jag några nya variabler. "klippning" har ett tillstånd av 1 när Arduino upptäcker klippning (den inkommande signalen mäts för att vara 0 eller 5V) och ett tillstånd av 0 när Arduino inte identifierar klippning. I koden nedan (för 8kHz samplingsfrekvens) ställa jag också in en variabel som kallas clippingCounter. Syftet med denna variabel är att hålla indikatorn LED på en stund efter urklippet upptäcktes så att den är synlig för det mänskliga ögat. I 38,5 kHz koden (längst ned i detta steg) använde jag en delay(100) för att uppnå samma effekt.

Enkla ljud i med klippning indikator
av Amanda Ghassaei

Sept 2012

/*
* Detta program är fri programvara; Du kan vidaredistribuera det och/eller ändra
* det enligt villkoren i GNU General Public License som offentliggjorts av
* den Free Software Foundation; antingen version 3 av licensen, eller
* (på ditt alternativ) någon senare version.
*
*/

int incomingAudio;
booleska klippning = 0; //zero = inte klippning, en = för närvarande klippning
int clippingCounter = 5000;

void setup() {
}

void loop() {
incomingAudio = analogRead (A0); //read input från A0
göra saker med variabeln "incomingAudio"
om (incomingAudio == 0 || incomingAudio == 1023) {//if klippning
digitalWrite (13, hög), //set stift 13 hög
klippningen = 1; //currently klippning
clippingCounter = 5000; //reset clippingCounter
}
om (klippning) {
om (clippingCounter > 0) {
clippingCounter--, //decrement klippning counter
}
annat {//if clippingCounter har räknat ända ner
klippningen = 0; //no längre klippning
digitalWrite (13, låg), //turn av klippning indikator
}
}
}

och nedan är koden för 38,5 kHz med avbryter:

Ljud med 38,5 kHz samplingsfrekvens, avbryter och klippning indikator
av Amanda Ghassaei

Sept 2012

/*
* Detta program är fri programvara; Du kan vidaredistribuera det och/eller ändra
* det enligt villkoren i GNU General Public License som offentliggjorts av
* den Free Software Foundation; antingen version 3 av licensen, eller
* (på ditt alternativ) någon senare version.
*
*/

variabel för att lagra inkommande ljud prov
byte incomingAudio;

Clipping indicator variabler
booleska klippning = 0;

void setup() {

pinMode (13, OUTPUT); //led indikator pin

(CLI); //disable avbrott

Ställ in kontinuerlig provtagning av analoga pin 0

Rensa ADCSRA och ADCSRB register
ADCSRA = 0;
ADCSRB = 0;

ADMUX | = (1 << REFS0); ange referens spänning
ADMUX | = (1 << ADLAR); Vänsterjustera ADC värde - så vi kan läsa högst 8 bitar från ADCH register endast

ADCSRA | = (1 << ADPS2) | (1 << ADPS0); ställa in ADC klockan med 32 prescaler - 16mHz/32 = 500 kHz
ADCSRA | = (1 << ADATE); enabble automatisk utlösare
ADCSRA | = (1 << Ebba Grön); Aktivera avbrott när mätningen är klar
ADCSRA | = (1 << ADEN); Aktivera ADC
ADCSRA | = (1 << ADSC); Starta ADC mätningar

SEI (); //enable avbrott

Om du vill lägga till andra saker i setup(), göra det här

}

ISR(ADC_vect) {//when nya ADC värdet redo
incomingAudio = ADCH; //store 8 bitars värde från analoga stift 0
om (incomingAudio == 0 || incomingAudio == 255) {//if klippning
digitalWrite (13, hög), //set stift 13 hög
klippningen = 1; //currently klippning
}
}

void loop() {
om (klippning) {//if för närvarande klippning
klippningen = 0; / /
digitalWrite (13, låg), //turn av klippning led indikator (stift 13)
}

Delay(100);
}

Se Steg
Relaterade Ämnen

Hur du ansluter en Sensor med Audio Input och Output

en sensor är en av en grundläggande komponent för att fånga fysiska miljön. Du kan få förändringen av ljus med en CDS fotocell, kan du mäta utrymmet med en distansera sensor och du kan fånga din rörelse med en accelerometer.Det finns redan flera sätt...

Arduino audio switch

Inuti min skydd har jag en 5.1 Bose surround system och ett par högtalare Yamaha NS - 10M Studio. Jag behövde för att driva dem med bara en förstärkare, så jag behövde en anpassade ljud växla mellan högtalare och LFE alltför. Jag har hittat en enkel...

Hur du ansluter en tryckknapp med Audio Input och Output

en tryckknapp är en av en grundläggande komponent för att fånga din åtgärd. Dynamiskt kan du trycka en knapp för att göra något.Det finns redan flera sätt att använda tryckknappar i dina projekt (t.ex. hacka mus och tangentbord eller Arduino, gainer,...

Hur du ansluter en Fader med Audio Input och Output

en fader är en av en grundläggande komponent för mixerbord. Dynamiskt kan du styra din källa med rörelsen av en fader.Det finns redan flera sätt att använda tryckknappar i dina projekt (t.ex. hacka mus och tangentbord eller Arduino, gainer, MCK). Det...

Arduino Audio DSP sköld

Arduino Audio DSP sköld har ring modulering, echo, reverb, en oscope, oscillator, godtycklig vågform generator, etc. Det är ett program- och maskinvara system, en god man, i en burk!Steg 1: Skaffa en arduino ljud sköldSköldarna finns på kickstarter h...

6-kanals AUDIO INPUT

6-kanals AUDIO INPUT (audioin selector)Du kan gjorde det med, TIC106D tyristor och med några kondensatorer och LEDväljaren av den audio ina enkeltgenom att ansluta den här enheten, många musikinstrument, som enCableknock ut honom... Om vi vill göra a...

Hur du sätter din bil askfat till en Audio Input

detta är ett roligt projekt så länge som du inte en rökare. Räkna ut vad gränssnitt du behöver kommer att vara prioritet nummer ett. Detta är en bra ändring om du går på långa resor och Don 't för att få alla dina CD-skivor med dig.Du behöver...01. S...

Arduino frekvens identifiering

Som en uppföljning till den Arduino-Audio-ingång tutorial som jag postat förra veckan, skrev jag en skiss som analyserar en signal som kommer in den Arduino analog ingång och bestämmer hur ofta. Koden använder en samplingsfrekvens på 38,5 kHz och har...

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...

Överföra data från Android till Arduino genom audio domkraft

Med detta projekt kan du skicka byte från android till arduino använder endast en audio jack-kontakt.Hur fungerar det?I princip, signal android en "morse" audio till arduino. Arduino i andra hand avkoda Morsealfabetet till en byte. Så enkelt.Del...

3D Stereo Audio Spectrum Visualizer

I en av våra tidigare instructables, byggde vi en Arduino baserade Audio Spectrum Visualizer med våra bi-color LED Matrix moduler för visning. Du kan kolla upp det påFör några månader sedan, designat vi jolliCube, en 8 x 8 x 8 LED cube. Vi är mycket...

Intellekten Edison driftigt bluetooth audio.

Introduktion.Jag ville ha en ny bilstereo och en Ogg Vorbis-spelare som spelade låtar i den ordning jag ville. Jag beslutade att använda de bästa funktionerna på en Intel Edison åstadkomma detta.Edison har Bluetooth HW och SW.Edison har Perl programm...

Arduino Dubstep Piano Keyboard

som musiker, jag ständigt skriver musik. En del av min kreativa process innebär spelar melodier eller ackord mönster på min gitarr eller piano så att jag kan vidareutveckla dem och (förhoppningsvis) förvandla dem till låtar. Jag har redan en ryggsäck...

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...

Arduino ljud sköld

I den här videon visar vi de enkla steg för montering av din Arduino ljud sköld fall. För att köpa en av dessa fall, bara tillbaka min kicken project på: Arduino ljud sköldSteg 1: Hur göra montera din Arduino Audio DSP sköld fallDet första steget är...

Uppgradera tube radio med nya mössor och IPOD/AUX input

Efter fastställande av upp skåpet till denna radio och njuta stirrade på det ett tag, är det äntligen dags för att ta en smäll på chassit. Det fungerade ganska bra som det var men det hade ett brummande som alltid i bakgrunden som blir ganska irriter...

ANT + och Arduino Integration med Cateye Ergociser utöva cykel

Detta instructable förklarar hur du integrerar ANT + transceivern med Arduino controller i en vintage 1987 motionscykel så att PC-baserade eller Garmin sport klocka/cykel dator inspelning av träningsdata som 1) kadens, 2) makt och 3) puls.Stegen inbl...

3.5 mm Audio adapter

3,5 mm till RCA och RCA till 3,5 mm Stereo/adapteranslutningDetta är en enkel adapter som jag gjorde för att ansluta min HDTV ljud till min 4.1 surround ljudsystem, den är liten, bara runt 1,5 inchesAnvändningsområden• Stereo Connectivity (vänster oc...

LED Strip styrenhet med LED Amp + Arduino

Glöm DIY LED drivers med mosfet transistorer! Det är extremt enkelt att köra hög driv LED-strips med Arduino till låg kostnad utan att gå in för mycket kretsar. Hemligheten är billigt mini LED förstärkare.Detta instructable är bara om körning LED str...