definiert. Das funktioniert.
Nun möchte ich "numberOfBeams" aber aus dem EEProm auslesen und mit dem Wert das Array definieren. Das führt aber zu einem Fehler.
Der EEProm Wert kann zur Laufzeit geändert werden, danach erfolgt aber grundsätzlich ein Neustart des Programms, d.h. das Array wird NIE zur Laufzeit umdefiniert, etc.
Das wird verworfen und das Gerät wird dann neu gestartet (bisher).
Es handelt sich um ein elektr. Musikinstrument, und "numberOfBeams" legt lie Größe der "Klaviatur" fest, die je nach Anwendungsfall zwischen 6 und 13 liegen kann.
Wenn man das Array auch zur Laufzeit umdefinieren kann, wäre das natürlich noch eleganter, muss aber nicht sein. Diese Länge kann man in den Settings des Gerätes einstellen und der Wert wird im EEProm hinterlegt und beim Start dann wieder ausgelesen und da hängt es eben (noch).
Arrarys sind nicht so meine Stärke
Ich bin aber auch kein blutiger Anfänger mehr, was Arduinos angeht.
Wenn du eh Platz für bis zu 13 brauchst, dann nimm die doch und hol dir die aktuell verwendete Länge aus dem im EEPROM gespeicherten Wert statt über sizeof.
Oder ist es hilfreich, bei einer kleineren numberOfBeams den RAM für etwas anderes zu verwenden, das bei einem größeren numberOfBeams dann eben nicht geht?
(Kann mir nicht vorstellen, was du durch ein kleineres Array erreichen kannst... )
Stimmt auch kopfklatsch
Der RAM spielt überhaupt keine Rolle.
Ich definiere einfach das Array mit 13 (dem Maximalwert) und benutzte eine neue Variable, um mit dem tatsächlichen Wert zu arbeiten.
Manchmal braucht es eben den berühmten "Klaps vorn Hinterkopf"