„kolorofon” na Arduino

„kolorofon” na Arduino

INFORMACJA: Poniższy post nie wydostał się z Poczekalni :(

Witajcie Majsterkowicze! Chciałbym Wam zaprezentować projekt bardzo prosty w swojej budowie, możliwy w wykonaniu nawet przez osoby, które z Arduino(ch340, oryginał, kopie) mają styczność kilka godzin.

 

 

 

 

Co będzie nam potrzebne?

-kabel typu jack-jack 3.5mm;
-głośniczek o małej mocy (np. z laptopa);
-3 diody;
-kilka kabli (przewody połączeniowe);
-płytka stykowa (nie koniecznie, można lutować ;) );
-oczywiście Arduino oraz źródło dźwięku;

 

Podłączenie wszystkiego jest banalnie proste, poniżej schemat:

arduino_w_rytmmuzyki

Przejdźmy zatem do kodu:

int soundPin1 = A0; //deklaracja wejścia analogowego

void setup() {
Serial.begin(9600); //monitor portu szeregowego
  pinMode(3,OUTPUT);
pinMode(6,OUTPUT);
  pinMode(5,OUTPUT); //nasze wyjścia
}
void loop() 
{
 int soundPin1Reading; //zmienna z wartością naszego wejścia

 if (analogRead(soundPin1)<8) //eliminowanie zakłóceń, poniżej tej wartości
//diody nie zapalają się
 {
soundPin1Reading=0;        //przypisanie wartości 0
 }
else
 {
soundPin1Reading=analogRead(soundPin1); //jeśli wartość jest wyższa
 }                                         //przypisujemy ją do zmiennej

 
Serial.println(soundPin1Reading);  //wyświetlamy naszą wartość w monitorze
                                    //portu szeregowego

 int a=soundPin1Reading*10;// zmienna mocy świecenia dla pinu 3
int b=soundPin1Reading*12;// zmienna mocy świecenia dla pinu 5
 int c=soundPin1Reading*16;// zmienna mocy świecenia dla pinu 6
int f=(soundPin1Reading/255)*20; //zmienna opóźnienia

//przykład: mp4 na analogu daje sygnał 10, mnożymy przez 10 i dioda zapala się
//napęciem (100/255)*5V czyli około 1.96V

 analogWrite(3,a);
analogWrite(5,b);
 analogWrite(6,c);//zapalanie diód

  delay(f);//opóźnienie do wygaszenia

 analogWrite(3,0);
analogWrite(5,0);
 analogWrite(6,0);//wygaszanie ich

 delay(f);//opóźnienie między cyklami
}

Kod został chyba jasno objaśniony wraz z przykładem.

Na końcu efekt jaki udało mi się osiągnąć metodą prób i błędów:

 

Moja przygoda z Arduino trwa trzeci dzień także wyrozumiałości :D

INFORMACJA: Poniższy post nie wydostał się z Poczekalni :(

Ocena: 3/5 (głosów: 2)

Podobne posty

5 komentarzy do “„kolorofon” na Arduino

    • Generalnie nie ma takiej potrzeby gdyż odczyty na porcie szeregowym po obliczeniach (patrz przykład w kodzie) nie dawały więcej niż 2.36V więc uznałem je za zbędne. Jak widać w zmiennych każda dioda ma zadeklarowaną własną moc świecenia która nie przekracza jej granicy wytrzymałości.

      Odpowiedz
      • Ale tu nie chodzi o napięcie. Dioda LED nie stanowi prawie żadnego oporu w obwodzie. Jeśli nie zabezpieczysz jej rezystorem, uszkodzi się (najczęściej nie od razu)

        Odpowiedz
    • Arduino to płytka prototypowa, nie widzę przeszkód żeby przenieść gotowy kod na mikrokontroler np. ATtiny 13, idealnie by się nadawał. Uczę się więc tak jest o wiele wygodniej ;)

      Odpowiedz

Odpowiedz

anuluj

"kolorofon" na Arduino

Nie przegap nowych projektów!

Zapisując się na nasz Newsletter będziesz miał pewność, że nie przegapisz żadnego nowego projektu opublikowanego w Majsterkowie!

Od teraz nie przegapisz żadnego projektu!

Masz uwagi?