Hallo miteinander,
ich habe jetzt über die Serielle Schnittstelle die Möglichkeit meinen Arduino Mega Daten mitzuteilen, ich möchte das die Daten in ein Array geschrieben bzw. ans ende angehängt werden.
hat mir jemand eine Idee?
ich habe hier mein Kleines Test Programm
wenn man hier 3 Zahlen durch was auch immer getränt ich mache immer ein Lesezeichen über die Serielle Schnittstelle Sendet dann sollen die Werte an das bestehende Array angehängt werden und das vollständige Array ausgegeben werden.
irgend wie verstehe ich davon nur nicht all zu viel
würde mich über etwas Unterstützung sehr freuen.
Gruß Mücke
hier ist der Code:
struct hardware_t{int pin;long vorlaufzeit; long dauer;};
// Arrey mit Ausführbaren Aktionen bestücken
hardware_t hardware[]=
{
{10, 20, 30},
{11, 21, 31},
};
void setup()
{
// initialize serial:
Serial.begin(9600);
}
void loop()
{
// wenn was vom Seriellerschnittstelle kommt dann soll es gelesen werden:
while (Serial.available() > 1)
{
// nach dem nächsten int suchen(mann kann werte mit space komma etc. trennen):
int PIN = Serial.parseInt();
int VORLAUFZEIT = Serial.parseInt();
int DAUER = Serial.parseInt();
// Arrey erweitern ?? Leider ohne ervolg :-(
hardware_t hardware[]=
{
{PIN, VORLAUFZEIT, DAUER},
};
// Hadware Arrey ausgeben volständig
Serial.println ("hardware[] - Ausgabe");
int schritte = sizeof(hardware) / sizeof(hardware[0]); // Anzahl an eintragungen auslesen
for (int i=0;i<schritte;i++)
{
Serial.print(hardware[i].pin);
Serial.print(", ");
Serial.print(hardware[i].vorlaufzeit);
Serial.print(", ");
Serial.println(hardware[i].dauer);
}
}
}
in der zeile
// Arrey erweitern ?? Leider ohne ervolg :-(
hardware_t hardware[]=
{
{PIN, VORLAUFZEIT, DAUER},
};
habe ich versucht den neuen erhaltenen Datensatz an das Array zu hängen geht nur so nicht wie ich das gemacht habe schade.
EDIT:
ich habe auch schon versucht in die Geschweifte Klammer eine For schleife einzubauen so das ich das bisherige Array aufgerufen hatte und die Werte neu rein geschrieben, doch bei der Fort schleife bekomm ich immer eine Fehlermeldung