- MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad         
Ergebnis 1 bis 7 von 7

Thema: Erzeugen einer .Hex-Datei aus mehreren C-Quelltexten !!

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    10.02.2005
    Beiträge
    19

    Erzeugen einer .Hex-Datei aus mehreren C-Quelltexten !!

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo Zusammen,

    wenn ein C-Programm für einen microcontroller aus mehreren Quelltexten besteht ,
    wie bekommen ich dann mittels Avr-Studio oder Winavr , diese zu einer .hex-Datei assembliert ?


    Für eure Hilfe wäre ich euch wirklich sehr dankbar !!

    MFG !

    Casa74

  2. #2
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Ich mach das so, daß ich mit dem Make-file-Tool alle Sourcen eintrage, die fürgt er dann ganz elektrisch zusammen. (wish84.exe)
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    10.02.2005
    Beiträge
    19
    Vielen Dank erstmal für deine schnelle Antwort !

    Habe jetzt alle Sourcen im Make-file eingetragen, nur wie bekommen ich das ganze jetzt assembliert zu einer Hexfile ?
    Kannst du mir vielleicht noch kurz beschreiben wie das unter AVR-Studio oder Winavr funktioniert ??

    Sorry will net nerven, aber ich bin noch Anfänger und habe es bei den Tutorials irgendwie nicht geblickt !!

    Gruß!

    Casa74

  4. #4
    Super-Moderator Robotik Visionär Avatar von PicNick
    Registriert seit
    23.11.2004
    Ort
    Wien
    Beiträge
    6.842
    Also ohne Anspruch auf allgemeingültigkeit:
    Ich hab, wie gesagt, die sourcen da eingetragen

    und dann sag ichg in der Kommand-Line

    c:\irgendwo\make -f makefile.mak <RET>

    und tschüss

    er übersetzt alles, linkt und macht eine Hexfile für das Pony (z.B)
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken area1.jpg  
    mfg robert
    Wer glaubt zu wissen, muß wissen, er glaubt.

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    10.02.2005
    Beiträge
    19
    Hallo Picnick

    Habe es nach deiner Methode versucht und bin schon ein Stück weiter gekommen !

    Zum Test habe ich das c-programm "prell" aus dem Tutorial von
    Christian Schifferle verwendet !

    Ich packe den ganzen Kram in einen Ordner( Bibliotheken,makefile u.s.w)
    rufe dann unter der Command-line das Makefiel , wie von dir angegeben, auf und er arbeitet das Ding auch erst vielversprechend durch !
    Doch zum Schluß gibts dann doch ein paar Fehlermeldungen:


    Bild hier  

    Eine Hexfile erstellt er mir dann nicht , ich finde zumindest keine !
    Im Makefile-Tool habe ich lediglich den Controller typ geändert(bei mir ein Atmega169) und auch die Angaben unter TRG entsprechend geändert!
    Tja , und wie bereits erwähnt habe ich das c-Beispiel "prell" aus dem Tutorial übernommen !
    Trotzdem will das Ding nicht funktionieren !
    Hat vielleicht jemand von euch eine Idee woran es noch liegen könnte?
    Muss ich im Makefile-Tool vielleicht noch mehr Einstellungen/Änderungen vornehmen ?
    Möchte endlich mal mein erstes Hexfile erstellen !


    Gruß und Danke !!

    Casa74
    Angehängte Dateien Angehängte Dateien

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    05.11.2004
    Ort
    Karlsruhe
    Beiträge
    223
    wenn du genau auf die Fehlermeldung guckst siehst du es:

    undefined reference to 'outp'

    und das ganze während dem Linken.

    Es ist so: wenn du mehrere Quelldateien hast werden die einzeln kompiliert und anschließend gelinkt. Deswegen musst du auch Funktionen, die du in foo.c benutzt in foo.c deklarieren (z.b. durch ein entsprechendes Header-File). Definieren kannst du das dann woanderst, also z.b. in bar.c Und genau da klemmts bei dir: der Linker will "outp" auflösen, findet das aber nicht. "outp" ist eine Funktion die schon ne ganze Weile als veraltet gekennzeichnet ist und wenn ich es richtig im Kopf habe beim letzten Release von WinAVR komplett entfallen ist -- schreib deinen Code einfahc entsprechend um.

  7. #7
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.05.2005
    Ort
    Issum
    Alter
    52
    Beiträge
    2.236
    Hallo,
    vielleicht noch ein link dazu, was bluebrother geschrieben hat
    http://wwwuser.gwdg.de/~kboehm/ebook...w6.html#872486

    Gruß Sebastian

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen