in einem neuem Projekt seh ich mich mit der Aufgabe konfrontiert einen multifunktionellen IC anzusteuern. (AD5941)
Vom Hersteller gibt es freundlicherweise dazu schon eine Library und genügend Beispiele.
Die einzelnen Beispiele funktionieren soweit, jetzt möchte ich allerdings einen Schritt weitergehen und nicht nur einzelne Beispiele auf den Microcontroller laden, sondern alle, damit ich dann später zwischen diesen wählen kann.
Sprich:
Programm A (eigenes .c und eigene .h)
Programm B (eigenes .c und eigene .h)
Programm C (.... )
Programm D (etc. )
Zum Start will ich festlegen welches man ausführt. Zudem sollen die Programme nur eine begrenzte Zeit lang laufen, sodass ich später wieder zwischen den oben genannten wählen kann.
Die einzelne Programme sind relativ lang und komplex, daher meine Frage ob es eine Möglichkeit gibt/ jemand einen Tipp hat, diese übersichtlich in neues File zu integrieren?
du kannst mit einem Button das "Teilprogramm" auswählen, z.B. über eine Statusvariable die du bei Buttondruck hochzählst. Deine (Main)loop springt dann gem. Stand der Statusvariable in das jeweilige Teilprogramm.
Die Teilprogramme müssen nicht blockierend geschrieben sein, d.h. frei von delay und endlosen while Schleifen, ansonsten wird der button nur träge reagieren.
Zusätzlich wirst du wohl eine Art von Anzeige brauchen, damit du siehst, welches Teilprogramm aktiv ist. Außer du machst deine Auswahl mit Kippschalter, Stufenschalter oder dergleichen wo du die Einstellung von der Mechanik ablesen kannst.
Wenn du jetzt glaubst, dass deine bestehenden Programme "komplex" sind - geh davon aus, dass es noch komplexer wird.
Wenn wir von der Arduino-IDE ausgehen, kannst Du mehrere Dateien in das Projektverzeichnis legen und in der Hauptdatei (Dateiname == Verzeichnisname) einbinden. Zu sehen sind die Dateien in Tabs im IDE-Editor.
Die bestehenden Sachen muss man sich sehr genau ansehen. Ich kann mir gut vorstellen dass da in den setup() Teile drinnen sind, die wirklich nur einmal ausgeführt werden dürfen, aber es auch Teile geben wird, die einmal ausgeführt werden müssen, wenn man in dieses Teilprogramm wieder wechselt.
Aber der TO soll sich mal die erhaltenen Antworten lesen, danach arbeiten und dann gegebenenfalls weitere konkrete Fragen stellen.