INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Werte aus der SD - Karte zuordnen
11.09.2015, 13:41 (Dieser Beitrag wurde zuletzt bearbeitet: 11.09.2015 13:41 von HaWe.)
Beitrag #17
RE: Werte aus der SD - Karte zuordnen
zum Schreiben: lies mal mit deinem PC, was in den Dateien drinsteht.
du verwendest aber auch nicht meine Funktionen, die ich dir empfohlen habe, daher kann ich mich dazu auch nicht weiter äußern.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.09.2015, 14:08
Beitrag #18
RE: Werte aus der SD - Karte zuordnen
Hallo HaWe,

wie ich schon geschrieben habe da steht das drinne was er auch reinschreiben soll ... nur beim lesen kommt nicht das raus was rauskommen soll.

bin im grunde froh das ich bis hier her gekommen bin aber bei klein macht sich frust breit das ich den sch... am liebsten in die ecke feuern möchte [Bild: sd.PNG]

die werte sind alle da

gruss
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.09.2015, 16:23
Beitrag #19
RE: Werte aus der SD - Karte zuordnen
Hallo,

ich hab hier mal nen Beispielcode gefunden.

Geht sogar. Vielleicht hilft er.

Code:
#include <SPI.h>
#include <SD.h>

#define FILENAME "dlca.txt"
File myFile;

float tempSoll_One, tempAbweichung, tempWarnung, tempSoll_Two;

void initSD()
{
  Serial.print("Initializing SD card...");
   pinMode(10, OUTPUT);  
  if (!SD.begin(4)) {
    Serial.println("initialization failed!");
    return;
  }
  Serial.println("initialization done.");
}

void writeSD()
{
  // Die Datei auf die SD-Karte schreiben
  myFile = SD.open(FILENAME, FILE_WRITE);
  // if the file opened okay, write to it:
  if (myFile) {
    Serial.println("Datei bereit zum Schreiben");
    myFile.println("24 // Soll-Temp1");
    myFile.println("0.5 // Abweichung");
    myFile.println("1.5    // Warnung");
    myFile.println("22 // Soll-Temp2");
    myFile.close(); // close the file:
    Serial.println("Datei wurde auf SD-Karte erstellt.");
  } else {
    // if the file didn't open, print an error:
    Serial.println("error opening file for writing");
  }
}

void readOneLine()
// Hinweis: Datei muss bereits zum Lesen geöffnet sein,
// wenn diese Funktion aufgerufen wird.
{
  char linebuf[40]; // 40 reicht für Zeilen bis 37 Zeichen Länge + CR+LF+\0
  int counter=0;
  memset(linebuf,0,sizeof(linebuf)); // ausnullen des Zeilenspeichers
  while (myFile.available()) {
    linebuf[counter]=myFile.read();
    if (linebuf[counter]=='\n') break; // Zeilenende, Schleife verlassen
    if (counter<sizeof(linebuf)-1) counter++;
  }
  // Jetzt wurde bis zum Zeilenende oder bis zum Dateiende gelesen
  // und nun nachschauen, was gelesen wurde und in Variablen packen
  // Achtung, es kommt auf exakte Gross- und Kleinschreibung an!
  if (strstr(linebuf,"Soll-Temp1")) tempSoll_One=atof(linebuf);
  else if (strstr(linebuf,"Soll-Temp2")) tempSoll_Two=atof(linebuf);
  else if (strstr(linebuf,"Soll-Temp2")) tempSoll_Two=atof(linebuf);
  else if (strstr(linebuf,"Abweichung")) tempAbweichung=atof(linebuf);
  else if (strstr(linebuf,"Warnung")) tempWarnung=atof(linebuf);
  else
  {
    Serial.print("Zeile ohne Variablen: ");
    Serial.println(linebuf);
  }
}


void readSD()
{
  // re-open the file for reading:
  myFile = SD.open(FILENAME);
  if (myFile) {
    Serial.println("Datei bereit zum Lesen:");
    // Bis zum Dateiende zeilenweise auslesen
    while (myFile.available()) {
      readOneLine();
    }
    // close the file:
    myFile.close();
    Serial.println("Datei wurde gelesen");
  } else {
      // if the file didn't open, print an error:
    Serial.println("error opening test.txt");
  }
}




void setup()
{
// Open serial communications and wait for port to open:
  Serial.begin(9600);
   while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }
  initSD();
  writeSD(); // Diese Zeile muss nur einmal laufen und kann dann auskommentiert werden
  readSD();
  // Mal nachschauen ob etwas gelesen wurde:
  Serial.print("Soll-1: ");Serial.println(tempSoll_One);
  Serial.print("Soll-2: ");Serial.println(tempSoll_Two);
  Serial.print("Abweichung: ");Serial.println(tempAbweichung);
  Serial.print("Warnung: ");Serial.println(tempWarnung);
}

void loop()
{
    // nothing happens after setup
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
12.09.2015, 12:48
Beitrag #20
[GELÖST] Werte aus der SD - Karte zuordnen
hier noch mal eine kurze rückmeldung

Fehler erfolgreich gefunden

Code:
pl5 = SD.open("last5.txt", FILE_READ);
  if (pl5) {
    Serial.println("last5.txt:");
    while (pl5.available()) {
      int pe = pl5.parseInt();  // <------ Fehler
    }
    pl5.close();
  } else {
    Serial.println("error opening last5.txt");
  }
  Serial.println(pe, 5);

im gegensatz zum O-Text " Serial.write(myFile.read()); " was verwirrend war..
egal bis hier her aber es geht, das ist wichtig .. von daher als Gelöst

aber wie heist das so schön der fehler steckt im detail ... Guck mal hier

gruss und happy weekend
Gandi
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Statusänderung auf SD-Karte schreiben querkopf71 12 592 27.11.2017 12:23
Letzter Beitrag: Tommy56
  SD-Karte und CSV-Datei... alpenpower 17 1.531 25.07.2017 10:37
Letzter Beitrag: alpenpower
  Countdown - Werte ändern am Touchscreen ElAleMaNo 2 439 04.07.2017 18:43
Letzter Beitrag: Tommy56
  Motor Steuerung durch Sensoren Werte Zerebrator 14 1.038 12.06.2017 14:36
Letzter Beitrag: Franz54
Question Grafik von SD Karte auf OLED 128x64 darstellen MRuoss 2 492 08.06.2017 19:58
Letzter Beitrag: MRuoss
  Arduino Sensor zeigt falsche Werte an Sandro2504 4 565 04.06.2017 09:03
Letzter Beitrag: hotsystems
  Se(h)karte II manfredo 14 1.031 27.04.2017 15:10
Letzter Beitrag: manfredo
  Char Werte ausgeben Scotch 5 785 31.03.2017 15:37
Letzter Beitrag: Scotch
  SD Karte wird nicht erkannt Maxi290997 6 513 31.03.2017 06:05
Letzter Beitrag: Bitklopfer
  Se(h)Karte mit LED beleuchten manfredo 29 2.155 19.11.2016 16:29
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste