Mehrere Dateien

Hallo,

ich habe noch nicht die Möglichkeit gefunden meinen Quelltext auf mehrere Dateien aufzuteilen. Kann mir da vielleicht jemand einen Tipp geben?

lg Torsten

Was genau willst Du denn aufteilen, nach welchen Kriterien?

Vielleicht per "include"...?

Ich möchte einfach meinen Quelltext ein bisschen auseinander ziehen. Von dem Befehl '#include' habe ich schon mal was gehört :wink: Nee, Spaß bei Seite.

z.B. ich habe "main.pde", eine weitere Datei könnte "help" sein. Frage ist, welche Endung bekommt help? ".h" hatte ich schon mal probiert, wollte er aber irgendwie nicht.

lg Torsten

Hallo,

"auseinanderziehen" ist ein wennig schwammig formuliert.

Wenn es darum geht den Quelltext auf mehrere Dateien aufzuteilen,
um das ganze ein wenig übersichtlicher zu gestalten...

Versuche mal einen Teil des Quelltextes als neue Datei in den selben Ordner zu legen....

Die Endung wäre also wieder .pde .

Bin mir nicht sicher, aber glaube das mal gesehen zu haben... daß dann alle pde's in der IDE aufgerufen werden.... und GLAUBE das es auch ordentlich kompiliert wird.

Wie gesagt... keine Garantie.... mag auch vollkommen falsch sein...
Versuch macht kluch :wink:

Lieber Gruß
ChrisS

Hallo,

es gibt doch in der Tableiste einen Pfeil nach rechts, in einem Quadrat.
Wenn ihr da mal drauf klickt, sollte es das gesuchte sein.
Selbst hab ich noch keinen Code so auseinander gezogen. Aber andere Codes hab ich in der Art schon gesehen.

Gruß,
Roland

Ich denke er mein das "gesamte Programm" ein bisschen übersichtlicher zu gestalten. Ich habe bei mir die Main Loop als einen tab gemacht die Input Funktionen als einen anderen und die Ausgabe-Funktionen als einen weiteren Tab und das Displaymenü auch als Funktion auf einen anderen Tab und natürlich einen Tab für die #define´s so habe ich alles ein bisschen differenzierter da der Code mittlerweile 10k umfasst. Das Resultat sind dann auch mehrer Dateien mit der Endung .pde in dem Ordner des Projektes

... kriege das einfach nicht gekacken. Ich möchte gerne die Constanten

const byte xBee_Tx = 0x03;
const byte xBee_Rx = 0x02;

in einer Datei "defintions" abspeichern. Ich habe das über einen neuen Tab gemacht und die möglichen Endungen (*.h, *.c, *.pde) versucht. Ich bekomme aber die Fehlermeldung "error: 'xBee_Tx' was not declared in this scope".

Was mache ich denn nun falsch? Vielen Dank im voraus.

lg Torsten

in's blaue geraten, aber:
möglicherweise musst du in deiner haupt-datei die konstanten mit extern deklarieren (im globalen scope, also ausserhalb aller funktionen).

dann weiß der compiler, dass er eine globale konstante zu behandeln hat, die in einer anderen quelldatei definiert ist.

geht das so? wenn nicht: einfach ignorieren :wink:

Du kannst nur Funktionen in sepertate Tabs schreiben die Definitionen müssen vor dem void setup() gemacht werden
zB.
1 Tab (Definitionen und setup)
2 tab (Funktionen Eingänge)
3 Tab (Funktionen Ausgänge)
4 Tab (Main Loop)

so ist das bei mir. in der beschreibung steht das die einzelen Tabs dann so gesehen werden als eine große Datei hintetreinader weg

Könnte die mein Programm mal schicken
hier die beschreibung
http://arduino.cc/en/Hacking/BuildProcess

Oder Plan B: sobald Projekte größer sind tritt man die Arduino IDE in die Tonne und wechselt auf die Kommandozeile. Sobald man das einmal kapiert hat wird alles plötzlich viel leichter. Die IDE benutze ich eigentlich nur noch für Sachen <20 Zeilen die man schnell rein sollen.

Alles was >1 Bildschirmseite ist mache ich mit Kate und der Kommandozeile.

Dauert aber schon etwas bis man die make Files so hat wie man will. Besser geht es wenn man gleich scons nimmt :slight_smile:

Gruß, Udo

Ich raff das einfach nicht. Ich habe jetzt eine neues Projekt gemacht, es gibt die Dateien "apiRegler.pde", "globaldefs.pde" und "apidefs.pde". Alle Dateien sind in einem Sketch und er kennt trotzdem meine Konstanten nicht?

edit : Hm... kann es sein, dass die "Reihenfolge" der Dateien im Sketch eine Rolle spielt?

lg Torsten