Arduino steuert verschiedene SPI devices an

Es geht hier immer noch darum Datensätze auf einer SD-Karte zu speichern, oder?

Du fügst eine Art Definitions-Zeichen/Parameter ein, der die Art des Devices anzeigst. Das kommt ins erste Feld eines Datensatzes. Dann weiß du was in den darauf folgenden Feldern steht.

z.B. sähe ein Datensatz dann so ähnlich aus:
Device Kennung , Wert (Byte 1) , Wert (Byte 2) , Parameter 1 , Parameter 2 , Parameter 3

Nicht verwendete Parameter werden nicht ausgewertet und z.B. auf '0' gesetzt. '0' ist wahrscheinlich besser, da du dann auch atoi() darauf ausführen kannst.
"Wert (Byte 2)" ist für die anderen 4 Bit von 12-Bit Werten

Du kannst auch über die Device Kennung wissen wie viele Felder folgen. Damit wäre wieder eine variable Länge der Datensätze möglich. Aber wie gesagt SD-Karten haben mehrere GB. Daher hier nicht unnötig optimieren! Das macht nur den Code komplizierter. Wenn die immer die gleiche Länge haben kann man einfach n-mal ReadBytesUntil(',') machen und gut ist.

Das kann man dann gut in einem struct darstellen:

typedef struct
{
	uint8_t deviceKennung;
	uint8_t wert1;
	uint8_t wert2;
	uint8_t parameter1;
	uint8_t parameter2;
        uint8_t parameter3;
} record;

deviceKennung sagt dir dann welche Variablen du auswerten musst. Da schreibst du dann die Werte von der SD-Karte rein und kannst sie wo anders im Programm verwenden.

z.B. so:

void loop()
{
record rec;
getDataFromSD(&rec);
}

void getDataFromSD(record *rec)
{
//hier von der SD Karte lesen und rec beschreiben
}

Falls die Methode das struct nicht schluckt, es statt dessen als "struct record{ };" definieren (ohne typedef) und bei der Methode "getDataFromSD(struct record *rec)" machen (ohne typedef muss man dann jedesmal "struct" vor "record" schreiben). Damit hatte ich schon Probleme.

Hi bei mir geht es um die gui, die dem arduno die Parameter sendet.
Das problem is die gestaltung, bzw wieviel felder ich als Parametereingaben hinzufüge, damit es allgemein für alle devices in SPi anwendbar ist.

Hat da jemand eine idee? Sorry falls ich mich vorhin unklar ausgedrückt habe.

Gleiche Sache im Prinzip. Du kannst z.B. als erstes eine Listbox machen um die Art des Devices auszuwählen (darüber hat man gleichzeitig die deviceKennung). Und je nachdem zeigt du andere Felder an. Felder kann man z.B. deaktivieren damit sie ausgegraut sind, oder eventuell mit Methoden wie show/hide auch gar nicht erst anzeigen. Das kommt auf die Programmiersprache an.

Danke dir, sowas habe ich gebraucht :D.
Ja dann kann ich die parseInt funktion doch beibehalten, wenn das mit dem EIn und ausblenden klappt :D.