Hallo,
ich bin dabei in meinen Megasketch, wo kaum ein anderer durchsehen wird, noch die Funktion von jurs zum RTC Uhr stellen einzubauen. Wenn ich das für mich anpasse, funktioniert der Code in seinem kleinen Testsketch. Übernehme ich das 1:1 in mein großes Projekt, bekomme ich einen Compilerfehler. Obwohl der Code nur erstmal im Sketch steht, wird noch nirgendswo aufgerufen. Alle Variablen sind lokal.
RTC.ino: In function 'int getIntFromString(char*, byte)':
RTC:363: error: redefinition of 'int getIntFromString(char*, byte)'
RTC:100: error: 'int getIntFromString(char*, byte)' previously defined here
Testsketch:
void setup() {
Serial.begin(38400);
Befehl_abarbeiten();
}
void loop() {
// empty
}
// -------------------------------------------------------------------
void Befehl_abarbeiten ()
{
char setRTCstring[26] = "setRTC 19.06.15 17:12:54";
byte tag, monat, jahr, stunden, minuten, sekunden = 0;
// Alle übermittelten Zahlen im String auslesen
tag =getIntFromString (setRTCstring,1);
monat =getIntFromString (setRTCstring,2);
jahr =getIntFromString (setRTCstring,3);
stunden =getIntFromString (setRTCstring,4);
minuten =getIntFromString (setRTCstring,5);
sekunden=getIntFromString (setRTCstring,6);
Serial.println(tag); Serial.println(monat); Serial.println(jahr); Serial.println(stunden);
Serial.println(minuten); Serial.println(sekunden);
}
// Funktion von jurs
int getIntFromString (char *stringWithInt, byte num)
// input: pointer to a char array
// returns an integer number from the string (positive numbers only!)
// num=1, returns 1st number from the string
// num=2, returns 2nd number from the string, and so on
{
char *tail;
while (num>0)
{
num--;
// skip non-digits
while ((!isdigit (*stringWithInt))&&(*stringWithInt!=0)) stringWithInt++;
tail=stringWithInt;
// find digits
while ((isdigit(*tail))&&(*tail!=0)) tail++;
if (num>0) stringWithInt=tail; // new search string is the string after that number
}
return(strtol(stringWithInt, &tail, 10));
}
Im Projekt im Tab RTC ganz unten zu finden.
Wo liegt mein Fehler?
Projekt_Doc_076.zip (22.2 KB)