Hallo! Habe für 4 Boards eine kleine Firmware in IAR Workbench geschrieben. Der Code ist Grundlegend gleich, bis auf die ID-Nr. 1, 2, 3 und 4 Leider habe ich keinen Möglichkeit über externe Pins eine Einstellung vorzunehmen, also muss es mit der Firmware gemacht werden. Aber ich habe auch nicht Lust jedes mal die define-Variable der Adresse zu ändern und neu zu kompilieren. Kann man sowas mit den Build-Optionen des Projekts machen?? Danke für eure Hilfe. Gruß Jochen
Jochen schrieb: > Hallo! > > Habe für 4 Boards eine kleine Firmware in IAR Workbench geschrieben. > Der Code ist Grundlegend gleich, bis auf die ID-Nr. 1, 2, 3 und 4 > Leider habe ich keinen Möglichkeit über externe Pins eine Einstellung > vorzunehmen, also muss es mit der Firmware gemacht werden. Aber ich habe > auch nicht Lust jedes mal die define-Variable der Adresse zu ändern und > neu zu kompilieren. Kann man sowas mit den Build-Optionen des Projekts > machen?? > Ich kenn jetzt nicht die IAR Workbench. Aber so ähnlich geht es fast überall: So ziemlich jeder Compiler hat eine Möglichkeit, wie man ihm #define von aussen vorgeben kann. Anstelle dass man im Code irgendwo ein #define CPU_NR 1 hat, kann man dem Compiler beim Aufruf über die Commandline (was anderes macht ja auch die IDE nicht, nur das man die Commandline nicht direkt sieht) eine entsprechende Option mitgeben cc test.c /D CPU_NR=1 (das ist jetzt nur ein konstruiertes Beispiel, die Details werden bei deinem Compiler anders sein, aber jetzt gehts es ums Prinzip) Das ist dann völlig gleichwertig, als wie wenn im Code ganz am Anfange das entsprechende #define stehen würde. Eine IDE wiederrum bietet normalerweise irgendwo an, welche derartige Optionen sie beim Compileraufruf mitgeben soll und wenn die IDE das Konzept verschiedener benutzererstellter Build-Konfigurationen unterstützt (und das tun sie alle), dann kannst du dir natürlich verschiedene Konfigurationen machen, die im Prinzip alle gleich sind und sich nur in den #define unterscheiden, die dem Compiler beim Aufruf mitgegeben werden. Soweit zum Allgemeinen. Wie das jetzt konkret in der IAR Workbench gemacht wird, weiß ich nicht. Aber irgendwo wird es sicherlich einen Einstelldialog geben, in dem man diese #define Sachen für eine bestimmte Build-Konfiguration festlegen kann.
Hallo! Danke für die Antwort. Dann muss ich mich wohl erstmal mit den ganzen Befehlen für den Compiler beschäftigen ... seufz Gru0 Jochen
Jochen schrieb: > Hallo! > > Danke für die Antwort. > > Dann muss ich mich wohl erstmal mit den ganzen Befehlen für den Compiler > beschäftigen ... *seufz* Würd ich nicht machen. Ich würde damit anfangen, alle Dialoge in der IAR Workbench abzuklappern, welcher davon in etwa so aussieht bzw die entsprechenden Dialogfelder hat, um obiges zu realisieren. Die Chancen stehen nämlich gut, dass die Workbench dem Compiler bereits Optionen in Form von defines mitgibt. Hint: Was denkst du wie die Workbench den Compiler veranlasst einmal ein Debug Exe zu erzeugen und einmal ein Release bzw. unterschiedliche Optimierungsstufen einstellt etc.? Besonderes Augenmerk würde ich auf alle Dialoge legen, die über einen Menüpunkt aufgerufen werden, wobei im Menüpunkt die Wörtchen "Project" oder "Configuration" oder dergleichen vorkommen. Dort irgendwo wirst du fündig werden. Wenn alle Stricke reissen, kann man immer noch anfangen Helpfiles und Doku zu durchforsten. Die Aufgabenstellung "defines an den Compiler weitergeben" ist nicht so ungewöhnlich. Die Doku könnte darüber Bescheid wissen.
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.