Web MP3 shield

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Web MP3 shield

Mensagem  Admin em Ter 4 Dez - 11:53

Venho demonstrar para vcs o projeto que tenho de montar um som ambiente em casa onde será possivel controlar diversos canais de som a partir do celular, ou seja será possivel apenas ouvir musica no quarto ou apenas na sala ou em todos os comodos tudo apartir de uma fonte de som apenas.

A vantagem que vejo nesse sistema é que é possivel concetrar todas as suas musicas em um lugar só e acessa-las sempre de qualquer lugar, aparelhos portateis nem sempre estão a mão e o som é geralmente ruim, então para vc escutar musica com um som de qualidade geralmente deve se estar perto do aparelho de som e nem sempre isso é possivel ou as vezes é necessario aumentar demais o volume oq pode incomodar os outrso moradores da casa ou mesmo os vizinhos

Aqui temos o video


Aqui a livraria e o manual
Livraria

Manual

Aqui o source code para Android
mp3server

Aqui os source utilizado no arduino.

Código:

#include <MP3.h>
#include <SPI.h>
#include <Ethernet.h>
 
#include <Servo.h>
Servo myservo;  // create servo object to control a servo
MP3 mp3;
byte mac[] = { 0xAD, 0xAD, 0xBE, 0xEF, 0xFE, 0xED }; //physical mac address
byte ip[] = { 192, 168, 1, 178 }; // ip in lan
byte gateway[] = { 192, 168, 1, 1 }; // internet access via router
byte subnet[] = { 255, 255, 255, 0 }; //subnet mask
EthernetServer server(80); //server port
 
String readString;
int vol=0x1f;
 
//////////////////////
 
void setup(){
  /** begin function */
  mp3.begin();
  /** set volum to the MAX */
  mp3.volume(0x1F);
  /** set MP3 Shield CYCLE mode */
  mp3.set_mode(MP3::CYCLE);
  /** play music in sd */
  http://mp3.play_sd(0x0001);
 
  /** play music in USB-disk */
  http://mp3.play_usb_disk(0x0001);
 
  /** play music in SPI FLASH */
  http://mp3.play_spi_flash(0x0001);
 
  pinMode(6, OUTPUT); //pin selected to control
  //start Ethernet
  Ethernet.begin(mac, ip, gateway, subnet);
  server.begin();
  //the pin for the servo co
  //enable serial data print
  http://Serial.begin(9600);
  Serial.println("server LED test 1.0"); // so I can keep track of what is loaded
}
 
void loop(){
  // Create a client connection
  EthernetClient client = server.available();
  if (client) {
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
 
        //read char by char HTTP request
        if (readString.length() < 100) {
 
          //store characters to string
          readString += c;
          http://Serial.print(c);
        }
 
        //if HTTP request has ended
        if (c == '\n') {
 
          ///////////////
          Serial.println(readString); //print to serial monitor for debuging
 
          client.println("HTTP/1.1 200 OK"); //send new page
          client.println("Content-Type: text/html");
          client.println();
 
          client.println("<HTML>");
          client.println("<HEAD>");
          client.println("<meta name='apple-mobile-web-app-capable' content='yes' />");
          client.println("<meta name='apple-mobile-web-app-status-bar-style' content='black-translucent' />");
          client.println("<link rel='stylesheet' type='text/css' href='http://homeautocss.net84.net/a.css' />");
          client.println("<TITLE>WEB MP3 Player</TITLE>");
          client.println("</HEAD>");
          client.println("<BODY>");
          client.println("<H1>WEB MP3 Player</H1>");
          client.println("<hr />");
          client.println("<br />");
       
          client.println("<a href=\"/?next\"\">Proxima</a>");
          client.println("<a href=\"/?pause\"\"> Pause </a>");       
          client.println("<a href=\"/?play\"\"> Play  </a>");
          client.println("<a href=\"/?previous\"\">Anterior</a><br /");
          client.println("<br />");
          client.println("<br />");
          client.println("<a href=\"/?volume-\"\">Volume-</a>");
          client.println("<a href=\"/?volume+\"\">Volume+</a><br />");       
 
          client.println("</BODY>");
          client.println("</HTML>");
 
          delay(1);
          //stopping client
          client.stop();
 
          ///////////////////// control arduino pin
          if(readString.indexOf("?play") >0)//checks for on
          {
            digitalWrite(6, HIGH);    // set pin 4 high
            http://Serial.println("Led On");
            mp3.play_usb_disk(0x0001);
          }
          if(readString.indexOf("?pause") >0)//checks for on
          {           
            mp3.pause();
          }
          //else{
          if(readString.indexOf("?next") >0)//checks for off
          {
            digitalWrite(6, LOW);    // set pin 4 low
            http://Serial.println("Led Off");
            mp3.next();
          }
          if(readString.indexOf("?previous") >0)//checks for off
          {
            digitalWrite(6, LOW);    // set pin 4 low
            http://Serial.println("Led Off");
            mp3.previous();
          }
          if(readString.indexOf("?volume+") >0)//checks for off
          {
            digitalWrite(6, LOW);    // set pin 4 low
            http://Serial.println("Led Off");
            vol++;
            if (vol >= 0x1f){
            vol = 0x1f;
            }
            mp3.volume(vol);
          }
          if(readString.indexOf("?volume-") >0)//checks for off
          {
            digitalWrite(6, LOW);    // set pin 4 low
            http://Serial.println("Led Off");
            vol--;
            if (vol <= 0x00){
            vol = 0x00;
            }
            mp3.volume(vol);
          }
       
          //}
          //clearing string for next read
          readString="";
 
        }
      }
    }
  }
}
avatar
Admin
Admin

Mensagens : 560
Data de inscrição : 07/04/2009
Idade : 36
Localização : Franca

Ver perfil do usuário http://projetoarduino.forum-livre.com

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum