www.mikrocontroller.net

Forum: Compiler & IDEs Korrekter Aufbau eines C-Programms


Autor: mr.chip (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Wie baut man eigentlich ein C-Programm mit Header-Files und 
Assembler-Dateien korrekt auf.

Für mein aktuelles Projekt hatte ich bisher einfach ein C-File, wo alles 
drin stand und ein Assembler-File, das ein paar externe Funktionen 
implementiert und auch auf ein paar externe Variabeln aus dem C-File 
zugriff. AVRStudio bzw. WinAVR hat dann dazu das passende Makefile 
geschustert und ich kann es in AVRStudio problemlos compilieren.

Nun möchte ich aber die Struktur des Programms ein bisschen ändern: In 
cpu.c sollen in Zukunft die von mir bereitgestellten Funktionen stehen, 
und in program.c soll der Benutzer der Bibliothek dann seine eigene 
Software implementieren können.

Wie teile ich nun den Code auf? Wie sieht das Makefile aus? Ich bin da 
ehrlich gesagt ziemlich ratlos, und man findet auch kaum Infos im Netz.

Gruss

Michael

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Codeaufteilung wird normalerweise 'themenbezogen' gemacht.
Also: Alle LCD Funktionen in ein C-File zusammen, alle
ADC Funktionen in ein File zusammen. Wenn du generische
Menüfunktionen hast, lohnt es sich die in ein File
zusammenzulegen.
Kurz: Alles was für sich zusammengenommen einen wiederverwendbaren
Baustein darstellt, kommt in ein C-File. Dazu noch ein
Header File für die nach aussen bereitgestellten Funktionen.

Im AVRStudio benutzt man das dann ganz einfach:
Links in der Prjektansicht klickst du mit der
rechten Maustaste auf Source-Files, wählst im Kontext
menü den Punkt 'Add existing Source Files' aus und wählst
alle *.c Files aus, die zu dem Projekt gehören.
Das selbe dann für die Header files und fertig.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.