Go Down

Topic: DFPlayer mini auf Arduino Pro Mini (Read 2495 times) previous topic - next topic

Jinroo

Hallo,

vorab, das ist mein erstes Arduino Projekt, daher bin ich mir noch sehr unsicher. Daher sollte es für den Anfang erstmal eine Nachbauprojekt sein.

Wie es der Titel bereits verrät, ersuche ich gerade den DFPlayer in Betrieb zu nehmen.

Ich habe gem. dieser kurzen Anleitung den Arduino mini Pro 3.3V mit dem DFPlayer verbunden.

https://www.dfrobot.com/blog-277.html

Habe bereits ein paar Musikstücke auf der SD-Karte.

Mit einem manuellen test am DFPlayer habe ich GND und IO_1 kurzu überbrückt. Die Musik fängt an zu laufen.

Nun wollte ich gem. der Anleitung die Software auf den Arduino spielen und damit etwas experimentieren.

Einen testcode habe ich hier gefunden.
https://github.com/DFRobot/DFPlayer-Mini-mp3


Ich möchte zum Anfang erstmal nur einen kleinen Code haben, der komplett ohne Knöpfe auskommt.

Also sobald Strom da ist, soll die Musik automatisch Random abgespielt werden. Solange, bis der Strom wieder abgeschalten wird.

Gem. den Beispielcodes habe ich folgendes versucht, aber bin erstmal völlig gescheitert.

Basiscode von der Homepage:
Code: [Select]
#include <softwareserial.h>
#include <dfplayer_mini_mp3.h>

void setup () {
 Serial.begin (9600);
 mp3_set_serial (Serial); //set Serial for DFPlayer-mini mp3 module
 mp3_set_volume (10);
}

void loop () {        

 mp3_play (1); //play 0001.mp3
 delay (10000); //10 sec, time delay to allow 0001.mp3 to finish playing

 mp3_play (2);
 delay (5000);

 mp3_play (5);
 delay (5000);

 mp3_play (20); //play 0020.mp3
 delay (9000);

 mp3_play (81);
 delay (6000);

 mp3_play (74); //play 0074 mp3
 delay (6000);

}


Und den, den ich versucht habe
Code: [Select]
#include "SoftwareSerial.h"
#include "DFPlayer_Mini_Mp3.h"

void setup () {
 Serial.begin (9600);
 mp3_set_serial (Serial); //set Serial for DFPlayer-mini mp3 module
 mp3_set_volume (10);
}

void mp3_random_play ();





Als Fehlermeldung bekomme ich folgendes:
Quote
Arduino: 1.8.2 (Windows 10), Board: "Arduino Pro or Pro Mini, ATmega328 (3.3V, 8 MHz)"

C:\Users\SEBAST~1\AppData\Local\Temp\ccR7dr5Y.ltrans0.ltrans.o: In function `main':

C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/main.cpp:46: undefined reference to `loop'

collect2.exe: error: ld returned 1 exit status

exit status 1
Fehler beim Kompilieren für das Board Arduino Pro or Pro Mini.

Dieser Bericht wäre detaillierter, wenn die Option
"Ausführliche Ausgabe während der Kompilierung"
in Datei -> Voreinstellungen aktiviert wäre.
.

postmaster-ino

Hi

Da Deine Code-Beispiele maximal 30 Zeilen haben, die Fehlermeldung aber von Zeile 46 spricht - passt hier irgend etwas nicht ganz zusammen.

Wie meinen?

MfG

Jinroo

#2
Nov 25, 2017, 06:59 pm Last Edit: Nov 25, 2017, 07:04 pm by Jinroo
Der Fehler entsteht in arduino main.cpp wenn ich void mp3_random_play (); reinnehme und nicht direkt in meiner Datei.

postmaster-ino

Hi

Ich gehe stark davon aus, daß die main.cpp ganz gerne eine Funktion Namens loop() in Deinem Sketch sehen würde.
Die mp3_random_play(); steht auch niergens drin, müsste man Mal probieren, ob Das überhaupt funktioniert, wenn man diesen Aufruf z.B. vor setup(){ einbringt.

Denke, packe Deinen mp3-Aufruf in die Funktion loop(), und Alles wird gut.

MfG

HotSystems

Wurde ja schon geschrieben, es fehlt in deinem Sketch die Loop().

Und "void mp3_random_play();" ist kein Aufruf sondern eine leere Funktion
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Jinroo

Wenn ich das aber so versuche, dann passiert garnichts. Es wird nichts abgespielt

Code: [Select]
void loop () { 
  mp3_random_play ();
}

HotSystems

Da ich die Anweisungen der Lib nicht im Kopf habe, kann ich nicht sagen ob das ok ist.

Evtl muss da noch eine Liste aufgebaut werden.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

uxomm

Always decouple electronic circuitry.

Jinroo

Hm, jetzt wollte ich das sketch von hier hochladen ttps://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299

Jetzt blinkt die rote LED schnell und nichts geht mehr...

HotSystems

Hm, jetzt wollte ich das sketch von hier hochladen ttps://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299

Jetzt blinkt die rote LED schnell und nichts geht mehr...
Heißt das du wolltest hochladen, aber du konntest nicht hochladen ?
Dann gab es doch sicher eine Fehlermeldung.

Oder du hast hochgeladen und der Sketch funktioniert nicht ?
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

postmaster-ino

Hi

Hat diese rote LED eine besondere Bedeutung?
Vll. ist dort, wo der Sketch her kommt, was dazu ersichtlich?

MfG

Jinroo

Ich wollte hochladen und das ist die Fehlermeldung dazu

Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload.

HotSystems

Ich wollte hochladen und das ist die Fehlermeldung dazu

Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload.

Das ist mit Sicherheit nicht die komplette Fehlermeldung.

Warum postest du nicht die komplette Meldung ?

Und du kannst noch über "Datei-Voreinstellungen-Ausführlicher Ausgabe..." anklicken.
Dann siehst du mehr.
Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. 8)

Jinroo

So wie es aussieht, ist der FTDI programmer defekt. Habe gerade eine anderen unbenutzten ProMini angeschlossen. Der lässt sich ebenfalls nicht programmieren.

Muss mir jetzt erstmal einen neuen FTDI Programmer besorgen.

Jinroo

Das ist mit Sicherheit nicht die komplette Fehlermeldung.

Warum postest du nicht die komplette Meldung ?

Und du kannst noch über "Datei-Voreinstellungen-Ausführlicher Ausgabe..." anklicken.
Dann siehst du mehr.

Wenn ich Versuche die komplette Meldung zu posten, dann sagt mir das Forum das ich die Maximale Zeichenzahl überschritten habe. Daher hatte ich nur die einfache gepostet

Go Up