Nochmal von der Seite.
Die 32GB Karte habe ich in FAT32 formatiert
habe die mp3 Datei auch mal in ein Verzeichnis namesn mp3 gelegt. Brachte auch keinen Erfolg
Ok, hab mich grad an den PC gesetzt.
Kabel sind auch ok. War dann auch im ersten Bild zu sehen.
Und nimm mal FAT als Format, der Ordner kann schon mp3 sein, das funktioniert auch.
kann die nur als exFAT formatieren. Auch kein Erfolg.
Wenn du den Pin IO1 drückst, leuchtet da die Led ?
Nö, da leuchtet keine LED
Dann ist da wie schon geschrieben, ein Fehler in der Hardware (Player) oder die mp3-Datei wird nicht erkannt.
Das kann am Format liegen. Es gibt allerdings auch Karten, die der Player nicht mag.
Aber da bin ich überfragt.
Okay,
ich probiere es morgen mal mit einer anderen SD Karte und einem anderen Soundfile.
Wenn das nichts bringt, bestelle ich einen neuen df player... ist da einer zu empfehlen? ich hatte den von az delivery.
Kurze Frage noch: In den ganzen Tutorials wird nur Pin 2 über einen 1kOhm Widerstand gesichert. Sollte man auch PIN 3 sichern?
AZ-dingsbums vermeide ich generell.
Nimm Reichelt, Eckstein oder Roboter Bausatz.
Und nein, den Pin 2 brauchst du nicht über 1k schalten.
Okay, besten Dank bis dahin!
Alles klar.
Genau.
Folgendes dazu.
Fat 32 Formatierung
max. 32 GB
Dateiname muss 4-Stellig nummerisch sein (witzigerweise bei mir 5 Stellig) einfach testen. Das Blabla dahinter interessiert ihn nicht.
Und mache nur 128 er mp3. Bei höheres Bitrate hat das Teil eh ein Problem.
Frage an den TO.
Wieso init du Softserial an Pin 4 und 5 wenn du von 16 + 17 oben Sprichst`?
Verstehe ich nicht.
Gruß
Pucki
So wie ich das versteh, ist das eh nicht für den Mega 2560 relevant. Hätte ich rausnehmen können, wir aber eh nicht gezogen. Ist ja nur der Beispiel Sketch. Das bezieht sich auf Software serial. Ich nutze ja den serial 2 auf dem Mega Board.
Meine Sound Dateien beginnen mit 0001.
Das mit 128 bit probiere ich Mal aus.
Ich habe das (auf einen Nano) so gemacht.
#include "Arduino.h"
#include "SoftwareSerial.h"
#include "DFRobotDFPlayerMini.h"
SoftwareSerial mySoftwareSerial(3,4); // RX, TX
DFRobotDFPlayerMini myDFPlayer;
void setup() {
Serial.begin(9600);
mySoftwareSerial.begin(9600);
lcd.init(); // initialize the lcd
lcd.backlight();
if (!myDFPlayer.begin(mySoftwareSerial)) { //Use softwareSerial to communicate with mp3.
// hier geht es weiter
}
Ich denke der Unterschied zum Mega ist maginal.
Schnittstelle setzen (mit Angabe der Pins) und den Namen der Schnittstelle an den Aufruf übergeben.
Das Problem was ich sehe ist das dein FPSerial im Code nicht deklariert ist (Vergleiche mein Code mySoftwareSerial)
Gruß
Pucki
Genauer schauen.
@Mephistoph
Bitte nicht, dein Sketch ist absolut richtig.
Auch die, die versuchen zu helfen, sollten alles richtig lesen.
OK. Ich habe es gefunden.
ABER ich habe den Code GUT gelesen jetzt da oben. Und ich habe ein Verdacht.
Nimm man das KOMMA weg in der Zeile hinter FPSerial.
if (!myDFPlayer.begin(FPSerial, /*isACK = */true, /*doReset = */true)) { //Use serial to communicate with mp3.
Ich hatte schon (aber anderes Entwicklungsystem) dasProblem das der einen 0 Parameter übergibt.
IST NUR EIN VERSUCH !!!
Gruß
Pucki
Auch das Komma steht da völlig richtig.
Du solltest einfach mal Grundlagen von C++ lernen, bevor du hier wieder mal falsche Infos raushaust.
Oder min. die vorhandene Beispiele im Web dir anschauen, wenn es nicht zu viel verlangt ist.
OK. Aber ich habe kein Komma und eine Schnittstelle sauber deklariert und mein Teil läuft.
Seins ja nicht.
Also wo ist der Fehler. ??
Gruß
Pucki