SPE035 Serial MP3 - Répertoire ADVERT?

zorgloub

Member
Bonsoir à l'équipe,
J'essaie actuellement ce petit module décrit dans le fichier SPE035.pdf de Picaxe, non pas pour jouer de la musique , mais pour "faire parler" mes µC.
Le module MP3 livré est un modèle "DFPLAYER Mini".
Quelqu'un a t-il réussi à activer une piste placée dans le répertoire ADVERT?
(MP3 est le répertoire par défaut. Les fichiers placés dans ADVERT seraient "prioritaires" et arrêteraient, temporairement, à la manière d'une Interruption, les fichiers usuels joués dans MP3)
La commande 0x13 ... (précisée dans le pdf précité pour lancer un fichier du Rep. ADVERT) ne fonctionne pas pour mes tests !?
Avez-vous un exemple de code fonctionnel Picaxe ?
Pleins d'exemples en C/Arduino sur le web... ehhhhhhhh Oui :(((( [mais qui sont intraduisibles en Picaxe ou incompréhensibles pour cause d'usage de leurs fameuses bibliothèques!]
Merci à tous les Picaxeurs ici actifs ...
 

MGU

Senior Member
Bonjour,

Oui, mais quelques liens et le code qui ne fonctionne pas éviteraient des recherches et des suppositions...

MM
 

zorgloub

Member
Bonsoir MGU,

Je vais tracer le schéma et éditer le code dès que j'ai une minute.

Apparemment, personne ne semble donc avoir utilisé ce module :(
 

zorgloub

Member
Bonjour à tous,

Bon, en fait pour qu'un fichier du répertoire Advert fonctionne, il faut qu'un fichier du répertoire MP3 soit EN TRAIN d'être diffusé !
Celui-ci sera interrompu temporairement et reprendra son cours normal au terme de l'Advert.
Tenter de lancer un fichier Advert à la manière d'un fichier du répertoire MP3 ne fonctionne donc finalement pas.
Si ça intéresse quelqu'un, je consigne une étude (en cours actuellement) de ce module sur ma page http://www.alpmn.byethost32.com/serial_mp3.htm

Merci à tous.
 

chimere322

Senior Member
Bonjour,

Il semblerait que tu travail avec un 28X2 et donc la fonction timer n'est pas prévu pour celui ci mais pour des M2 Voici le pdf pour le kit complet. axe 171 ici
 

zorgloub

Member
Bonsoir Chimere,

En effet, je pilote le MP3 player avec un 20X2 et plutôt qu'utiliser le module Axe171 je préfère réaliser mon board que tu peux voir à l'adresse de mon site citée plus haut.

J'ai finalement opté pour la solution suivante:
(Le fichier blank est un court fichier muet de 2 ou 3 secondes, qui permet de lancer le message d'Advert dans le cas où aucun fichier n'est en cours de diffusion)

Code:
Advert_Msg = 0003     ' Advert to launch: ---> 0003 - MCU Heat Alarm.mp3
      if Busy_pin = 0 then   'A other "normal" track is being playing
       Cmd = $13 : Arg = Advert_Msg : Gosub Send  ' Launch ADVERT  ---> 0003 - MCU Heat Alarm.mp3
                                                                           ' And the normal track resumes here where he was arrested
      Else
       Cmd = $12 : Arg = 0001 : Gosub Send            ' Launch blank file  ---> 0001 - Advert Calling.mp3
       Cmd = $13 : Arg = Advert_Msg : Gosub Send  ' Launch ADVERT  ---> 0003 - MCU Heat Alarm.mp3
      Endif
Merci pour ton intervention.
 
Last edited:

PieM

Senior Member
Code:
Advert_Msg = 0003     ' Advert to launch: ---> 0003 - MCU Heat Alarm.mp3
      if Busy_pin <> 0 then 
        Cmd = $12 : Arg = 0001 : Gosub Send
      endif   
  Cmd = $13 : Arg = Advert_Msg : Gosub Send
 

zorgloub

Member
Hi PieM,,

En effet, pourquoi se compliquer la vie ???????
Aahh, les dédales neuroniques complexes !!! :cool:

Merci mille fois !
 

zorgloub

Member
Attention, il y a encore une finesse (Testé) !
Il est indispensable de placer une petite pause juste après le lancement du très court fichier vierge "d'appel".
Cela permet de lancer le fichier d'Advert avant que le fichier vierge ne soit arrivé à sa fin !
Car en effet, pour lancer l'Advert, il faut qu'un autre fichier (ici le blank) soit actif en arrière-plan.

Et le code fonctionnel devient:

Code:
Advert_Msg = 0003     ' Advert to launch: ---> 0003 - MCU Heat Alarm.mp3
      if Busy_pin <> 0 then ' Nothing playing
        Cmd = $12 : Arg = 0001 : Gosub Send : [B][COLOR="#FF0000"]Pause 10[/COLOR][/B]
      Endif   
  Cmd = $13 : Arg = Advert_Msg : Gosub Send
 
Top