Ich arbeite grad an einem Projekt (Wecker). Jedoch ich hab mich da bisher an den codes von der rtc und vom mp3 shield orientiert (funduinoshop). Ich hab jedoch als ich diese kopiert habe probleme mit den Libarys. ich kann die Vom mp 3 shield nicht in meinen arduino ?client? einfügen, wodurch das programm (welches ich noch erweitern muss ) nicht funktionieren kann.
Hilfe wäre echt super
Falls mir da jemand via discord helfen könnte wäre ich sehr dankbar (hxfzocker#7057)
muss jedoch nicht via discord sein sondern einfach unter diesem post
Also ich habe schon gewisse libarys installiert bloß bei dieser einen funktioniert das nicht
Der code bisher sieht so aus
#include <Time.h>
#include <Wire.h>
#include <DS1307RTC.h>
#include <LiquidCrystal_I2C.h> //Bibliotheken laden
LiquidCrystal_I2C lcd(0x3D, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); //Das I²C Display bennen und die HEX Adresse //eingeben (bei uns 0x3D)
#include <SPI.h> // libraries
#include <SdFat.h>
#include <SdFatUtil.h>
#include <SFEMP3Shield.h>
SdFat sd; //SD Karte benennen
SFEMP3Shield MP3player; //MP3 Shield als „MP3Player benennen
void setup() {
lcd.begin(16, 2); //Das Display starten, festlegen dass es sich um ein Display mit 16 Zeichen in 2 Zeilen //handelt
lcd.backlight(); //Beleuchtung des Displays einschalten
Serial.begin(9600); //Seriellen Verbindung mit Baudrate 9600 starten
setSyncProvider(RTC.get); //Daten von der RTC abrufen
Serial.begin(9600); //Serielle Verbindung starten
if(!sd.begin(9, SPI_HALF_SPEED)) sd.initErrorHalt(); //SD Karte mit MP3 Dateien auslesen
if (!sd.chdir("/")) sd.errorHalt("sd.chdir");
MP3player.begin(); //MP3 Shield starten
MP3player.setVolume(10,10); //Die Lautstärke einstellen
}
void loop() {
MP3player.available();
Serial.print(hour()); //Serial.print ist der Befehl etwas im seriellen Monitor anzuzeigen (Stunde, Minute, //Sekunde,Leerzeichen, Tag, Leerzeichen, usw.)
printDigits(minute()); //bei den Minuten und Sekunden wird der Befehl
printDigits(second()); //printDigits verwendet, welcher am Ende des Codes noch festgelegt wird
Serial.print(“ „);
Serial.print(day());
Serial.print(“ „);
Serial.print(month());
Serial.print(“ „);
Serial.print(year());
Serial.println();
delay(1000); //eine Sekunde warten
lcd.setCursor(2, 0); // setCursor gibt an wo der Text beginnen soll. In diesem Fall beim dritten Zeichen in //der ersten Reihe.
lcd.print(hour()); //Die Uhrzeit soll angezeigt werden im Format:
lcd.print(„:“); //Stunden:minuten:sekunden
lcd.print (minute());
lcd.print(„:“);
lcd.print(second());
lcd.print(“ „);
lcd.print(„Uhr“); //Dahinter soll das Wort „Uhr“ angezeigt werden
lcd.print(“ „);
lcd.print(“ „);
lcd.print(“ „);
lcd.setCursor(1, 1); //In der zweiten Zeile soll das Datum angezeigt //werden
lcd.print(day());
lcd.print(„.“);
lcd.print(month());
lcd.print(„.“);
lcd.print(year());
}
void printDigits(int digits){ //Der printDigits Befehl für den seriellen Monitor
Serial.print(„:“);
if(digits < 10)
Serial.print(‚0‘);
Serial.print(digits);
}
{
int day;
day = weekday(); // Die Wochentage sollen abhängig vom Datum angezeigt werden.
if(day == 1){lcd.print("So, ");} // Wenn es sich um Tag 1 handelt soll „So“ usw. angezeigt werden.
if(day == 2){lcd.print("Mo, ");}
if(day == 3){lcd.print("Di, ");}
if(day == 4){lcd.print("Mi, ");}
if(day == 5){lcd.print("Do, ");}
if(day == 6){lcd.print("Fr, ");}
if(day == 7){lcd.print("Sa, ");}
}
}
Da von hier aus keiner auf Deinen Rechner schauen kann, wird es sehr schwer werden, Dir mit den geringen Informationen deinerseits zu helfen.
Die Fehlermeldung bleibt die Gleiche?