Indholdsfortegnelse:

Arduino støjmaskine: 4 trin
Arduino støjmaskine: 4 trin

Video: Arduino støjmaskine: 4 trin

Video: Arduino støjmaskine: 4 trin
Video: Уроки Ардуино #0 - что такое Arduino, куда подключаются датчики и как питать Ардуино 2024, Juli
Anonim
Arduino støjmaskine
Arduino støjmaskine
Arduino støjmaskine
Arduino støjmaskine
Arduino støjmaskine
Arduino støjmaskine

Jeg fandt en lille højttaler, mens jeg rev en gammel P. C. til genbrug og tænkte, at jeg ville se, hvordan det lød ved at bruge Arduino Tone () -funktionen. Jeg begyndte med et 10Ω potentiometer til at styre tonehøjden og begyndte at lave lidt støj. Tone () -funktionen anvender et simpelt pulsmønster. Det tænder og slukker lyden ved forskellige frekvenser i et firkantet bølgemønster. Jeg havde to andre potentiometre liggende, så jeg tilføjede dem og brugte dem til at styre tonens varighed. En til at styre tonens længde og en til at styre det stille rum mellem tonerne. Det bruger dybest set et andet firkantet bølgemønster, men med en meget lavere frekvens. Du kan opnå et stort udvalg af støj med dette kredsløb. Det fungerer også godt med en piezo -summer, men mangler basresponsen fra en højttaler.

Trin 1: Dele, du får brug for

Arduino Uno

Brødbræt og jumpertråde

1 lille højttaler eller piezo -summer

1 Trykknapkontakt

3 10Ω Potentiometre

1 22Ω modstand

1 10kΩ modstand

Trin 2: Byg kredsløbet

Byg kredsløbet
Byg kredsløbet

Tilslut brødbrættet til din Arduino 5V pin og GND. Placer trykknapkontakten yderst til højre eller venstre for brødbrættet, og tilslut den til 5V og jord ved hjælp af 10kΩ modstanden. Tilslut en ledning fra switch -kredsløbet til pin 2 på din Arduino.

På den anden side af brødbrættet skal højttaleren/piezo -kredsløbet sættes til 5v og jordes ved hjælp af 220Ω modstanden. Denne modstand styrer strømmen og styrer dermed volumen; Du kan prøve forskellige modstande her for højere eller lavere volumen.

Arranger dine potentiometre i midten af brødbrættet, så der er nok plads til at rode med knapperne. Hver gryde skal tilsluttes 5V og jord og centerstifterne på hver tilsluttes analoge ben A0, A1 og A2

Trin 3: Koden

Et potentiometer eller pot er en variabel modstand, som når den er forbundet til en Arduino, returnerer en værdi mellem 0 og 1023. Vi vil bruge funktionen map () til at ændre disse værdier, så de passer til vores egne behov. Kort () -funktionen tager fem argumenter, og i vores tilfælde er vi nødt til at kortlægge området til mellem 220 og 2200 igen for at producere en rimelig hørbar lyd.

Funktionen ser sådan ud:

kort (pot, 0, 1023, 220, 2200);

Du kan lege med de to sidste værdier for toner med højere og lavere frekvens, bare pas på, at du ikke forstyrrer din hund.

Noise_Machine.ino

/* Støjmaskine ved hjælp af tre potentiometre tilsluttet analoge indgange
og en piezo eller lille højttaler. En trykknap tænder for støjen, potentiometrene
styre tonehøjden ved hjælp af Arduino tone () -funktionen og to forsinkelser
værdier, der styrer længden af hver tone og længden mellem
hver tone. Potentiometrene giver analoge værdier, som ændres
ved hjælp af funktionen map () i større eller mindre områder, der passer til din
musikalske smag.
Denne kode er i det offentlige domæne.
Matt Thomas 2019-04-05
*/
constint buttonPin = 2; // Trykknapstift 2
konstant højttaler = 9; // Højttaler eller piezo i pin 9
int buttonState = 0; // Variabler for knappen
int potZero; // og potentiometre
int potOne;
int potTwo;
voidsetup () {
pinMode (9, OUTPUT); // Højttaler/piezo output pin
}
voidloop () {
buttonState = digitalRead (buttonPin); // Læs trykknaptilstanden
potZero = analogRead (A0); // Variabler til aflæsning af de analoge værdier
potOne = analogRead (A1);
potTwo = analogRead (A2);
int htz = map (potZero, 0, 1023, 0, 8800); // Kortlæg de analoge aflæsninger til
int high = map (potOne, 0, 1023, 0, 100); // nye talområder og opret
int low = map (potTwo, 0, 1023, 0, 100); // nye variabler
hvis (buttonState == HIGH) {// Hvis der trykkes på knappen …
tone (højttaler, htz); // Lyd på
forsinkelse (høj); // Længde af tone
noTone (højttaler); // Lyden af
forsinkelse (lav); // Tid til næste tone
} andet {
noTone (højttaler); // Ingen tone, hvis knappen slippes
}
}

se rawNoise_Machine.ino hostet af ❤ af GitHub

Trin 4: Slutningen

Så det er alt, hvad der skal til. Leg med værdierne i koden, tilføj flere gryder /knapper og se, hvad du ellers kan styre. Lad mig vide, hvis jeg har begået fejl, og jeg håber, at du nyder musikken.

Anbefalede: