Forums LR PRESSE

Où il est question de trains, petits et grands

  • Advertisement

Test de lecteur rMP3 Rogue

Toutes les discussions sur l'Arduino !

Modérateur: MOD

Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 15:18 
Bonjour,

Sur le site du fabricant j'ai trouvé un petit bout de code permettant de tester ledit lecteur.

Ce code ne se compile pas, "erreur status 1" apparemment à l'entrée de la boucle "void" (que était vide dans l'exemple).

J'ai ajouté 3 petites instructions dans cette boucle --> même résultat.

Quelqu'un peut-il m'éclairer ? Voici le code en question :

#include <RogueMP3.h>

// change this file name and make sure this file exists in the root folder on the SD card
#define SONG "/mysong.mp3"

RogueMP3 rmp3(Serial1);

void setup()
{
Serial.begin(9600);
Serial1.begin(9600);

rmp3.sync();
rmp3.playfile(SONG);
}

void loop()
{
rmp3.playfile(SONG);
delay(5000);
rmp3.stop();
}



Nota j'ai bien sûr intégré la librairie qui va bien.
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 15:53 
erreur status 1 ? c'est sybillin.

Il n'y a pas de boucle void, void étant un type de donnée

Copie colle plutôt ce qui dit le compilateur
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 16:21 
La suite n'est pas plus explicite

Image
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 18:15 
Y a-t-il quelque chose avant « exit status 1 » ?
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 18:43 
jlb a écrit:Y a-t-il quelque chose avant « exit status 1 » ?


Arduino : 1.6.7 (Windows XP), Carte : "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

In file included from J:\arduino-1.6.7-windows\arduino-1.6.7\Test_lecture_MP3\Test_lecture_MP3.ino:1:0:

C:\Program Files\Arduino\libraries\RogueMP3/RogueMP3.h:157:24: error: 'prog_char' does not name a type

void print_P(const prog_char *str);


C:\Program Files\Arduino\libraries\RogueMP3/RogueMP3.h:157:35: error: ISO C++ forbids declaration of 'str' with no type [-fpermissive]

void print_P(const prog_char *str);

C:\Program Files\Arduino\libraries\RogueMP3/RogueMP3.h:155:10: error: conflicting return type specified for 'virtual void RogueMP3::write(uint8_t)'

void write(uint8_t); // needed for Print

In file included from C:\Program Files\Arduino\hardware\arduino\avr\cores\arduino/Stream.h:26:0,

from C:\Program Files\Arduino\hardware\arduino\avr\cores\arduino/HardwareSerial.h:29,

from C:\Program Files\Arduino\hardware\arduino\avr\cores\arduino/Arduino.h:224,

from sketch\Test_lecture_MP3.ino.cpp:1:

C:\Program Files\Arduino\hardware\arduino\avr\cores\arduino/Print.h:48:20: error: overriding 'virtual size_t Print::write(uint8_t)'

virtual size_t write(uint8_t) = 0;
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 18:47 
Ah tient, en scrollant ça va mieux :-)

La bibliothèque est ancienne (2010) et ne compile pas avec le logiciel livré avec l'IDE 1.6.7, une version plus récente se trouve ici (2013) : https://github.com/RogueRobotics/RogueMP3
Elle compile j'ai vérifié

Par contre c'est votre exemple qui ne compilera pas, prenez l'un des exemples livré avec la bibliothèque
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: Test de lecteur rMP3 Rogue

Publié: Jeu 07 Jan 2016, 20:02 
jlb a écrit:Ah tient, en scrollant ça va mieux :-)


L'apprentissage des outils :oops:
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Ven 08 Jan 2016, 14:55 
J'ai aussi dû importer la librairie SD et j'ai fini par réussir la compilation d'un exemple.

Reste maintenant à simplifier cette source car ce dont j'ai besoin est ultra simple : lire (ou pas ) un seul et unique fichier.

Je pense que j'ai opté pour un produit bien trop sophistiqué pour le besoin de ce projet.

Merci pour ton aide.
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 12:17 
En attendant quelques livraisons qui se font désirer. J’ai transféré mes outils bureautiques et assimilés sur un nouveau PC en Windows 7.

J’ai donc téléchargé la dernière version en date d’Arduino 1.6.7.

Et là patatras ça recommence.

J’ai un peu exploré les forums (tous en anglais) qui parle de ce fameux Rogue rMP3, et il semble que nous soyons nombreux sur la planète à rencontrer des problèmes de versions.

J’ai bien glané quelques informations sur des correctifs pour les sources .cpp et .h mais ces correctifs semblent générer d’autres erreurs de compilation.

Si quelqu’un arrive à trouver un exemple (très simple : lire UN ficher) avec les bonnes librairies pour ce lecteur rMP3 de Rogue, je suis preneur.

J’ai au moins tiré une conclusion de cette mauvaise expérience : avant toute commande de produit qui se prétend compatible "Arduino" je vérifie que les exemples donnés se compilent correctement (y compris avec les librairies associées).

Comme au poker, il faut payer pour voir.
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 12:35 
C'est pourtant pas compliqué, les infos sont dans mon message 4 crans plus haut.

J'ai donné l'URL où télécharger la lib ok pour le 1.6.7 et j'ai compilé l'exemple HelloRogueMP3.
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 13:03 
jlb a écrit:C'est pourtant pas compliqué, les infos sont dans mon message 4 crans plus haut.

J'ai donné l'URL où télécharger la lib ok pour le 1.6.7 et j'ai compilé l'exemple HelloRogueMP3.



J'ai téléchargé, et ça a marché sur mon XP.
Sur mon nouveau poste Win7 ça ne marche plus.
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 13:04 
Et quel sont les messages d'erreur à la compilation ?
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 14:56 
Je fais le ménage dans le répertoire des librairies et je remets les compteurs à zéro :
- Je (re)télécharge
- Je (re)compile

Empirique mais ça a fait ses preuves.

Pour les manips je suis beaucoup moins à l'aise sur ce poste :
Win7 + mini portable avec un pad (j'attends la doc station) qui va bien.
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 15:33 
Après les manips décrites ci-dessus le premier exemple "Hello..." se complile sans erreur.

D'après ce que j'en comprends cela pourrait être suffisant pour mon besoin : lire un seul et unique fichier... et arrêter la lecture, puis recommencer... en séquence, bien sûr; avec les instructions de détection d'évènements.

L'instruction "mp3player.stop()" est reconnue, je suppose qu'elle stoppe la lecture :wink:

Sinon ça se complique avec les autres exemples comme la lecture d'un "folder".

En fait il semble que ce soit la librairie de manip des cartes SD (RogueSD.h) qui ne soit plus en adéquation :

Ci-dessous les erreurs avec l'exemple "RogueMP3PlayFolder" :

Arduino : 1.6.7 (Windows 7), Carte : "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)"

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:11:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:93:25: error: redeclaration of 'uMMC'

enum moduletype {uMMC = 1, uMP3, rMP3};

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:10:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master/RogueMP3.h:98:19: note: previous declaration 'moduleType uMMC'

uMMC = 1,

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:11:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:93:28: error: redeclaration of 'uMP3'

enum moduletype {uMMC = 1, uMP3, rMP3};

^

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:10:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master/RogueMP3.h:99:19: note: previous declaration 'moduleType uMP3'

uMP3,

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:11:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:93:34: error: redeclaration of 'rMP3'

enum moduletype {uMMC = 1, uMP3, rMP3};

^

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:10:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master/RogueMP3.h:100:19: note: previous declaration 'moduleType rMP3'

rMP3

In file included from C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde:11:0:

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:124:25: error: 'prog_char' does not name a type

int8_t open_P(const prog_char *filename);

^

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:124:36: error: ISO C++ forbids declaration of 'filename' with no type [-fpermissive]

int8_t open_P(const prog_char *filename);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:125:25: error: 'prog_char' does not name a type

int8_t open_P(const prog_char *filename, open_mode mode);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:125:36: error: ISO C++ forbids declaration of 'filename' with no type [-fpermissive]

int8_t open_P(const prog_char *filename, open_mode mode);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:126:40: error: 'prog_char' does not name a type

int8_t open_P(int8_t handle, const prog_char *filename);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:126:51: error: ISO C++ forbids declaration of 'filename' with no type [-fpermissive]

int8_t open_P(int8_t handle, const prog_char *filename);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:127:40: error: 'prog_char' does not name a type

int8_t open_P(int8_t handle, const prog_char *filename, open_mode mode);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:127:51: error: ISO C++ forbids declaration of 'filename' with no type [-fpermissive]

int8_t open_P(int8_t handle, const prog_char *filename, open_mode mode);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:186:24: error: 'prog_char' does not name a type

void print_P(const prog_char *str);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:186:35: error: ISO C++ forbids declaration of 'str' with no type [-fpermissive]

void print_P(const prog_char *str);

C:\Users\Andre\Documents\Arduino\libraries\RogueSD/RogueSD.h:184:10: error: conflicting return type specified for 'virtual void RogueSD::write(uint8_t)'

void write(uint8_t); // needed for Print

In file included from C:\Program Files\arduino-1.6.7-windows\arduino-1.6.7\hardware\arduino\avr\cores\arduino/Stream.h:26:0,

from C:\Program Files\arduino-1.6.7-windows\arduino-1.6.7\hardware\arduino\avr\cores\arduino/HardwareSerial.h:29,

from C:\Program Files\arduino-1.6.7-windows\arduino-1.6.7\hardware\arduino\avr\cores\arduino/Arduino.h:224,

from sketch\RogueMP3PlayFolder.pde.cpp:1:

C:\Program Files\arduino-1.6.7-windows\arduino-1.6.7\hardware\arduino\avr\cores\arduino/Print.h:48:20: error: overriding 'virtual size_t Print::write(uint8_t)'

virtual size_t write(uint8_t) = 0;

C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde: In function 'void setup()':

RogueMP3PlayFolder:34: error: 'class RogueSD' has no member named 'begin'

fileControl.begin();

RogueMP3PlayFolder:51: error: 'class RogueSD' has no member named 'lastErrorCode'

if (!fileControl.status() && fileControl.lastErrorCode == ERROR_CARD_NOT_INSERTED)

RogueMP3PlayFolder:60: error: 'class RogueSD' has no member named 'fileCount'

MP3Count = fileControl.fileCount(folder, "*.mp3");

RogueMP3PlayFolder:76: error: 'class RogueSD' has no member named 'lastErrorCode'

if (fileControl.lastErrorCode == ERROR_OPEN_PATH_INVALID)

C:\Users\Andre\Documents\Arduino\libraries\RogueMP3-master\examples\RogueMP3PlayFolder\RogueMP3PlayFolder.pde: In function 'void loop()':

RogueMP3PlayFolder:102: error: 'class RogueSD' has no member named 'entryToFilename'

fileControl.entryToFilename(filename, 200, currentMP3, folder, "*.mp3");

RogueMP3PlayFolder:118: error: 'class RogueSD' has no member named 'lastErrorCode'

if (fileControl.lastErrorCode == ERROR_CARD_NOT_INSERTED)

RogueMP3PlayFolder:125: error: 'class RogueSD' has no member named 'lastErrorCode'

Serial.println(fileControl.lastErrorCode, HEX);

exit status 1
'class RogueSD' has no member named 'begin'

Ce rapport contiendrait plus d'informations si l'option
"Montrer les informations de sortie pendant la compilation"
était activée dans Fichier > Préférences.
R8G for ever
Avatar de l’utilisateur
Stratus
Démonstratif
 
Messages: 1408
Inscrit le: Ven 28 Nov 2008, 14:20
Localisation: Yonne
Âge: 69
Echelle pratiquée: O Epoque III
Club: CDZ

Re: Test de lecteur rMP3 Rogue

Publié: Mar 12 Jan 2016, 16:54 
Inclus to RogueSD avant RogueMP3 ou bien après ?

Une RogueSD plus récente ici : https://github.com/RogueRobotics/RogueSD
Avatar de l’utilisateur
jlb
Fécond
 
Messages: 667
Inscrit le: Jeu 04 Oct 2012, 16:38
Echelle pratiquée: N
Prénom: Jean-Luc

Suivant

Retour vers Arduino

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 2 invité(s)