BAĞLAN

Arduino ile SD Karttan mp3 Ses Dosyası Çalma

  • Görüntülenme 8411
  • PAYLAŞ
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  

    Merhaba arkadaşlar bu uygulamamızda mp3 modül kullanmadan sd karttan wav uzantılı ses dosyalarını okutup çalacağız. Önceki projemizde wtv020 mp3 modül kullanarak bu işlemi yapmıştık. Bu uygulamada ise bu modülü kullanmadan aynı tarz ses dosyalarını çaldıracağız.

    Malzemeler:

    1. Arduino
    2. Sd kart Modül
    3. Hoparlör
    4. sd kart ve adaptörü

    Elektronik Kısım:

    Devrenin fritzing çizimini buradan indirebilirsiniz.Şekildeki gibi devre bağlantılarımızı yapalım. Sd kart modül SPI protokolüne göre haberleştiği için arduino modellerinde SPI pinleri değişiklik gösterir. Farklı model kullanırsanız pinlerini o modelin SPI pinlerine göre takmalısınız.

    Mp3 dosyasını wav formatına dönüştürmelisiniz. Online wav conventer sitesinde dönüştürme işlemini yapabilirsiniz. Mp3 dosyasını aşağıdaki gibi 8 bit 32000 Hz Stereo olarak ayarlayıp convert file butonuna tıklayın. İndirdiğiniz dosyaları direk sd kartınıza yükleyin.

    Yazılım Kısmı:

    Mp3 modül kullanmadan sd karttan audio wav ses dosyası olarak çalmak için kütüphane kullanıyoruz. Aşağıdaki bağlantıdan kütüphaneyi indirebilirsiniz.

    Kütüphane : SimpleSDAudio

    Örnek kod:

    #include <SimpleSDAudio.h>
     
    void setup()
    { 
     
     SdPlay.setSDCSPin(4); // sd kart cs pini
     
     if (!SdPlay.init(SSDA_MODE_FULLRATE | SSDA_MODE_MONO | SSDA_MODE_AUTOWORKER))
     {
     while(1); 
     } 
     
     if(!SdPlay.setFile("music.wav")) // müzik dosya adı
     {
     while(1); //dosya bulunamassa durdur
     } 
    }
     
    void loop(void) {
     
     SdPlay.play(); // seçilen dosyayı çal
     
     while(!SdPlay.isStopped()) { // müzik bittiğinde tekrar çal
     ; 
     }
    }

     

    Hoparlörün artı pini arduino mega hariç diğer modellerde dijial 9. pine, arduino megada ise dijital 44. pine takınız. Kodda hoparlör pinini belirtmiyoruz. Kütüphane otomatik olarak bu pinlerden çıkış vermiş.

    Uygulamamız bu kadar. Önceki projelerimizden sesli renk okuyucu yapmıştık. Fakat onda wtv020 mp3 modül kullanmıştım. Bu uygulamaya göre uyarladım. Aşağıda kodunu alabilirsiniz.

    // Sesli Renk Okuyan Robot Projesi
    //Coder Sezgin Gül
    // www.robimek.com
    #include <SimpleSDAudio.h>
    #include "Wire.h"
    #include "Adafruit_TCS34725.h"
     
    Adafruit_TCS34725 tcs = Adafruit_TCS34725(TCS34725_INTEGRATIONTIME_50MS, TCS34725_GAIN_1X);
    void setup() {
    Serial.begin(9600);
     
    if (!SdPlay.init(SSDA_MODE_FULLRATE | SSDA_MODE_MONO | SSDA_MODE_AUTOWORKER)) {
     while(1); 
     }
     SdPlay.setSDCSPin(4);
    if (tcs.begin()) {+-
    Serial.println("Sensör bulundu");
    } else {
    Serial.println("TCS34725 Sensör bulunamadı !");
    while (1); // Dur!
    }
    delay(1000);
     
    }
    void loop() {
     
    uint16_t clearcol, red, green, blue;
    float average, r, g, b;
    tcs.getRawData(&red, &green, &blue, &clearcol);
     
    average = (red+green+blue)/3;
    r = red/average;
    g = green/average;
    b = blue/average;
    Serial.print("\tTEMIZ:"); Serial.print(clearcol);
    Serial.print("\tKIRMIZI:"); Serial.print(r);
    Serial.print("\tYESIL:"); Serial.print(g);
    Serial.print("\tMAVI:"); Serial.print(b);
     
    if ((r > 1.4) && (g < 0.9) && (b < 0.9)) {
    Serial.print("\tKIRMIZI");
     SdPlay.setFile("krmz.wav"); 
     SdPlay.play();
    }
    else if ((r < 0.95) && (g > 1.4) && (b < 0.9)) { 
    Serial.print("\tYESIL"); 
     SdPlay.setFile("ysl.wav"); 
     SdPlay.play();
    }
    else if ((r < 0.8) && (g < 1.2) && (b > 1.2)) { 
    Serial.print("\tMAVI"); 
     SdPlay.setFile("mavi.wav"); 
     SdPlay.play();
    }
    else if ((r > 1.15) && (g > 1.15) && (b < 0.7)) { 
     Serial.print("\tSARI"); 
     SdPlay.setFile("sari.wav"); 
     SdPlay.play();
     } 
     else if ((r > 1.4) && (g < 1.0) && (b < 0.7)) { 
    Serial.print("\tTURUNCU");
     SdPlay.setFile("trnc.wav"); 
     SdPlay.play();
    }
    else {
    Serial.print("\tRENK ALGILANMADI");
     
    }
    Serial.println("");
     
     
    }

    PAYLAŞ
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    Sezgin GÜL

    Sezgin GÜL

    Makine Mühendisi, Girişimci, Maker

    Kimler Neler Demiş?

    42 Yorum - "Arduino ile SD Karttan mp3 Ses Dosyası Çalma"

    avatar
    Sıralama:   En Yeniler | Eskiler | Beğenilenler
    Resul
    Ziyaretçi

    Merhaba hoparlörün özellikleri hakkında bilgi verebilirmisiniz.

    çağla
    Ziyaretçi

    Ben bu sistemi rfid kart modülüyle birlikte yapmaya çalışıyorum. Aynı pin üzerinden birden fazla spı bağlantı yapabileceğimi söylemiştiniz. Bunun üzerine sd kart modülünün de rfid kart modülününde bildiğiniz gibi mosi miso ve sck pinleri aynı.Board üzerinden ikisini de aynı pinlere yönlendirdim ama sadace rifid kart modülü çalıştı acaba farklı bir şekilde mi bağlantı yapmam gerkiyor. Yardımcı olursanız çok sevinirim.

    ÇAĞRI ESEN
    Ziyaretçi

    microsd card adapter ile yapılabilir mi acaba böyle bir şey

    eren
    Ziyaretçi

    Mp3 mü çalmış oldu şimdi bu proje?

    Sena
    Ziyaretçi

    Merhaba ben sd kart modülünün bağlantılarını yaptığımda karta kodu atarken hata veriyor. Karta yüklenirken sorun oluştu diyor ama sd modülü çıkarınca hatasız kod yükleniyor. Çalıştıramadım yardım ederseniz çok sevinirim.

    ömer
    Ziyaretçi

    .merhaba
    Başlıkta her nekadar mp3 yazsa da sizinki wav player. Neden mp3 ibaresini kullandınız merak ettim

    heosıs
    Ziyaretçi

    arkadaşlar bitirme ödevim biri bana yardımcı olabilir mi rica etsem birkaç sorum olacaktı.

    yakup
    Ziyaretçi

    aruıno yu amfii yeri ne kullanabilirmiyiz

    ses yükseltme telefon

    Mehmet
    Ziyaretçi

    Merhaba. Sd kart modülündeki sesi sorunsuz çaldırabiliyoruz. Ancak projemizde
    Servo motor oldugu icin Sd card kütüphanesi ve servo kütüphanesi çakışıyor. Bir öneriniz varmı ? Teşekkürler

    heosıs
    Ziyaretçi

    kardeş benimle bir iletişime geçebilir misin birkaç sorum olacaktıda.

    robotist
    Ziyaretçi

    merhaba bu sd kartlı modül gibi başka hangi markalar var tercih edeceğiniz

    wpDiscuz

    Yeni Projeler More

    • 16 Şubat 2017
      1 hafta ÖNCE 2 Yorum

      Öğrenme Fonksiyonuna Sahip Hareket Kopyalayan Robot Kol Yapımı

      Bu projede öğrenme yoluyla hareket kopyalayan robot kol yapımından bahsedeceğim. Endüstride kullanılan robot kollar, her zaman aynı hareketleri yapmaya odaklıdır. Örneğin ürün bandından bir nesneyi alıp başka bir banda aktarımını yapan robot kollar sürekli aynı hareketi yapmaktadır. Bu hareketler önceden öğretilerek robot kola aktarılır. Burada da aynı mantıkla robot ...

    • 11 Şubat 2017
      2 hafta ÖNCE 10 Yorum

      Arduino İle Labirent Çözen Robot Yapımı

      Kendi robotunu yap projelerimizin bu bölümünde arduino ile labirent çözen robot yapacağız. Labirent çözen robot özellikle robot yarışmalarında yer almaktadır. Bir labirentin çözüm yolunu bulmak aslında tek bir etkene bağlıdır. Bu etken sağ veya sol taraftaki herhangi bir duvarı takip ettirmektir. Bu etkenden yola çıkarak robot sol veya sağ ...

    • 07 Şubat 2017
      3 hafta ÖNCE Yorum Yok

      Arduino ile MLX90614 Kızılötesi Sıcaklık Sensörü Kullanımı

      Cisme temas etmeden, cismin sıcaklığını ölçen MLX90614 kızılötesi sıcaklık sensöründen bahsedeceğim. Dahili bir 17-bit ADC ve güçlü bir DSP, MLX90614'ün ölçümlerinde yüksek doğruluk ve çözünürlük verir. Vücut sıcaklığı ölçmek için uygundur. Ayrıca hareket algılamada da kullanabilirsiniz. MLX90614 Özellikler: Ortam sıcaklığı ölçme aralığı -40 ile + 125 ° C Nesne ...

    • 05 Şubat 2017
      3 hafta ÖNCE Yorum Yok

      Arduino ile Yazıyı Sese Dönüştüren Emic 2 Modülü Kullanımı

      Robotunuzu konuşturmak ve neler olup bittiğini söyletmek ister misiniz ? Emic 2 yazıyı sese çeviren modülle kolaylıkla projeleriniz konuşabilir. Emic-2, Parallax tarafından, ses sentezini tamamen zahmetsiz kılmak için Grand Idea Studio ile birlikte tasarlanmıştır.

    • 31 Ocak 2017
      4 hafta ÖNCE 7 Yorum

      Arduino ile DHT22 Sıcaklık Nem Sensörü Kullanımı

      DHT sensörleri, kapasitif nem sensörü ve bir termistör olmak üzere iki parçadan oluşur. DHT11 ve DHT22 olan iki DHT modelini ele alalım. Görünüm ve pin yapısı olarak benzer görünmelerine rağmen farklı ölçüm hassasiyetlerine sahiptirler. Aşağıda iki modelin karşılaştırmasına bakalım.

    Bizi Takip Et

    Son Yorumlar

    Sezgin GÜL
    Sezgin GÜL 2017-02-25 23:01:46
    merhaba batuhan, hatanın sebebi AFMotor.h kütüphanesini yüklemediğinden kaynaklanmış. Kütüphaneyi buradan indirebilirsin http://www.robimek.com/wp-content/uploads/AFMOTOR-master.rar
    batuhan 2017-02-25 21:52:21
    sezgin bey öncelikle çok teşekkür ediyorum proje için ; Arduino ya kodu derlediğimde şöyle bir sorun ile karşılaşıyorum Arduino:1.8.1 (Windows.....
    Emin ERKMEN 2017-02-25 19:55:34
    Bu robotun üstüne ekleme yapabilir misiniz? 1 hafta içinde? Bu bizim için çok önemli.
    Sezgin GÜL
    Sezgin GÜL 2017-02-25 19:48:46
    Çizgili olan labirenti çözen robotlarda o özellik mevcut. İlerleyen günlerde o tarz proje paylaşacağım.
    Emin ERKMEN 2017-02-25 19:34:28
    Peki bu robot. En kısa yolu nasıl bulabilir. İkinci kez aynı labirentten geçtiği zaman en kısa yoldan gitmesi için ne.....
    Sezgin GÜL
    Sezgin GÜL 2017-02-25 18:10:10
    Kodlarda sorun yok videodaki robotta kullanılan kodlardır. Motor yönlerini doğru taktınız mı. Yön komutlarında doğru yönde dönüyorlar mı bunları da.....
    Emin ERKMEN 2017-02-25 18:03:27
    kodlarda sıkıntı yok yani?
    Sezgin GÜL
    Sezgin GÜL 2017-02-25 17:17:46
    Bağlantılarınız doğru ve sensörlerin konumları uygun ise enerji yetersizliğinden kaynaklanabilir