Ja.
Du machst ein neues Modul: modul.h und modul.c
In modul.h stehen die Deklarationen von Dingen, die ausserhalb des Moduls bekannt sein sollen und benutzt werden
In modul.c stehen die Definitionen dazu:Code:#ifndef _MODUL_H_ #define _MODUL_H_ #define BLAH1 ... #define BLAH2(x) ... extern char data1; extern long data2; extern char foo1 (long a); extern long foo2 (char a); #endif
Alle Module werden mitCode:#include "modul.h" static void foo_local(); char data1 = 12; long data2; char foo1 (long a) { ... } long foo2 (char a) { BLAH2 (123); ... } static void foo_local() { ... }
avr-gcc -c modul.c -o modul.o [more-options]
übersetzt und dann zu einem elf zusammen gebunden.
Verwendung wie gewohnt
Code:#include "modul.h" main () { if (data1 == 'x') c = foo1(12345); ... }







Zitieren

Lesezeichen