hallo zusammen, ich arbeite das erste mal mit IAR Workbench. Ich habe nun ein Projekt erstellt usw. ich habe eine *.c datei, in der die main ist. weiter habe ich aus übersichtsgründen einige andere funktionen in andere *.c ausgelagert und dem projekt hinzugefügt. nun wollte ich das ganze compilen, doch ich bekomme einen haufen fehlermeldungen. die ganzen schen, die in den anderen *.c dateien sind, werden nicht erkannt. wenn ich die dateien in *.h umbenenne und dann mit include einbinde funktioniert es. kann mir vielleicht jemand sagen, ob und was ich da falsch mache? Grüße Ralf
hast Du den auch alle *.c-Dateien in das Projekt eingefügt, d.h. sie müssen alle auf der linken Seite im Fenster zu finden sein!?
Da musst du noch eine Header-Datei schreiben, in der die Funktionsdeklarationen drin stehn, und diese in die Haupt-C-Datei includieren.
ich habe alle dateien dem projekt zugefügt. wenn ich nun noch eine headerdatei erstelle, in der die funktionsdeklarationen drin stehen und in die haupt *c. datei include, bekomme ich z.B. die fehlermeldungen, dass die PxOUT nicht definiert sind. das verschwindet erst, wenn #include <msp430x14x.h in jeder datei include. das gleiche gilt für variablen, die ich in einer exra headerdatei stehen habe. diese habe ich auch in der haupt *.c datei included. die variablen werden dann aber immer als nicht definiert bemeckert.
Ja, was auch vollkommen berechtigt ist, wenn der Compiler das anmeckert. Glbale Variablen kannst du dir mit "extern" aus anderen C-Files holen. Und in jedem C-File muss natürlich die Prozessor-Definitions-Datei eingebunden werden. Ich mach immer eine projekt.h in der die msp430x...h drin ist, und alle anderen h-dateien includiert werden, die im Projekt sind. Dann muss ich in alle C-dateien nur die projekt.h einbinden.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.