Pages: [1]   Go Down
Author Topic: Seriale e lettore mp3  (Read 1181 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 1
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ho da poco acquistato un modulo riproduttore mp3 indirizzabile da futura elettronica FT862M e vorrei gestirlo con arduino....
premesso che l'ho provato stand alone utilizzando la seriale di programmazione di arduino, in quanto i segnali accettati dal modulo sono a livello TTL
usando il monitor seriale a mo di hyperterminal inviando i comandi il lettore suona.....

ora vorrei che fosse arduino a fare questo ma non mi riesce proprio...

il codice che ho usato è il seguente

Quote
#include <SoftwareSerial.h>

SoftwareSerial mySerial(2,3); // RX, TX

void setup()  
{
 // Open serial communications and wait for port to open:
 
  mySerial.begin(9600);
  delay(1000);
  mySerial.println("p");
  }

void loop() // run over and over
{
   mySerial.println("p");
  delay(10);
   mySerial.println("15");
  delay(10);
   mySerial.println("P");
  delay(10000);
}


ho già spulciato internet e il forum trovando alcuni esempi ma in nessun modo funziona
qualche idea?

ciao
Logged

Selvazzano Dentro - Padova
Offline Offline
Edison Member
*
Karma: 37
Posts: 1281
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Sei fortunato: ho appena terminato un progetto per FUTURA che riguarda proprio uno shield per TiDiGino con il modulo FT862M ed il relativo articolo che dovrebbe vedere la luce a breve.

Ti consiglio di settare il config.txt in modo che i due echi siano disattivati:
Code:
ECHO COMANDO = 0 (eco comando inviato – 0=No, 1=Sì)
ECHO COM ESTESO = 0 (eco esteso – 0=No, 1=Sì)
Il comando che fornisci è sbagliato: devi prima indicare la traccia da eseguire e solo poi attivare il play. lnoltre non devi aggiungere <CR> e <LF>, quindi non devi usare il println():
Code:
 SerialAux.write('#');                        // delimitatore inizio nome traccia
  SerialAux.print(Track, DEC);                  // 0-65539
  SerialAux.write('*');                        // delimitatore fine nome traccia
  SerialAux.write('P');                        // play track MP3

Se hai altri problemi, chiedi pure.

Ettore Massimo Albani
« Last Edit: October 06, 2012, 07:36:38 pm by cyberhs » Logged

Offline Offline
Newbie
*
Karma: 1
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Sei un grande!!!!

Avevo già provveduto a togliere gli echo anche se non ho collegato la linea di ricezione....

lo sketch che ho postato effettivamente non era quello corretto, la sequenza di comandi era errata dopo10000 prove stavo impazzendo
anche il "fine linea" lo avevo messo perche pensavo li concatenasse sulla stessa riga...

potresti spiegarmi la differenza tra serial.write e serial.print ???

Grazie per la tempestiva risposta!!!

Stefano
Logged

Selvazzano Dentro - Padova
Offline Offline
Edison Member
*
Karma: 37
Posts: 1281
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie!  smiley-wink

Il write serve a scrivere uno o più byte, mentre il print stampa una stringa nella sua rappresentazione ASCII.

In realtà i progettisti hanno ingenerato un po' di confusione: di regola io uso il write per scrivere un singolo byte o carattere.

Nota infatti che ho usato il print per scrivere il numero della traccia.
Logged

Selvazzano Dentro - Padova
Offline Offline
Edison Member
*
Karma: 37
Posts: 1281
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho appena ricevuto dal progettista del modulo il nuovofirmware per la gestione del modulo.

Contiene importanti aggiornamenti.

Non appena finisco di collaudarlo te lo segnalo.
Logged

Selvazzano Dentro - Padova
Offline Offline
Edison Member
*
Karma: 37
Posts: 1281
"Chi sa fa, chi non sa insegna"
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Ho preparato una libreria per usare FT862M e tra poco la inserirò nel sito comune.
Logged

Pages: [1]   Go Up
Jump to: