www.mikrocontroller.net

Forum: Compiler & IDEs LPC210x GNUARM Probleme


Autor: Benjamin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich habe GNUARM laut WIKI (LPC-P1) installiert und konfiguriert (unter
WinXP und Cygwin). Es ist mir auch gelungen die Beispiele (test2.c,...)
zu kompilieren und auf dem Board zum laufen zu bringen.

Nun kann ich aber die Beispiele nur im newlib-lpc Verzeichnis und dem
Standard makefile bauen. In anderen Verzeichnissen gelingt mir dies
nicht.

Ich gehe folgenermassen vor:

Kompilieren:
arm-elf-gcc -mcpu=arm7tdmi -marm -c -o test2.o test2.c
Linken:
arm-elf-ld -Tlpc210x.ld -o test2.hex test2.o
Konvertieren:
arm-elf-objcopy -O ihex test2.hex
Download:
lpc21isp test2.hex com1 115200 14746

Leider ist das resultierende Hex-File viel kleiner als das selbe
Beispiel mit dem Standard-makefile kompiliert und funktioniert nicht.

Was mache ich falsch?


MfG Benjamin

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Benjamin!

Hast Du die newlib-lpc selbst Kompiliert?
Hast Du dabei darauf geachtet, daß die "dummies" nicht mit drin sind
(malloc etc...)

Ich hatte ursprünglich noch ein Beispielprojekt erstellt, was aber
überarbeitet werden musste. Leider fehlte mir bisher die Zeit dazu,
aber evtl. hilft Dir das Beispiel ja weiter...

Gruß,
Patrick...

P.S.: http://wiki.mikrocontroller.net/upload/4/44/LPC210...
LPC2106-gcc-Demo.zip
Hier liegt das Beispielprojekt zur Zeit. Wird aber irgendwann ersetzt!

Autor: Benjamin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ja ich hatte newlib-lpc wie im Wiki beschrieben erstellt.
In wiefern ich dabei "dummies" draussen gelassen hab kann ich nicht
sagen da ich teilweise das makefile noch nicht so richtig verstehe.

In meinem Fall fehlte einfach der gesamt Startup-Code der den LPC
erstmal zur main bringt.
Ich hab mir dann aus der Yahoo-Group ein Beispiel für einen
funktionierenden Startup-Code (boot.s) genommen und damit kompiliert
und gelinkt.
Danach gings.

Wie hätte ich das denn mit Newlib-lpc hinbekommen?


MfG Benjamin

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mit der "richtigen" libc und der libnewlib-lpc. Genaueres kann ich Dir
heute abend schreiben, hab die Notizen nicht dabei...

Gruß,
Patrick...

Autor: Alex1 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo...

Ich habe auch vor, mich mit dem ARM auseinander zu setzen. Wo kann ich
denn das GNUARM herunterladen?

Danke..
Alex

Autor: Benjamin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Bei Google der erste Treffer verrät dir: http://www.gnuarm.com/

MfG Benjamin

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Benjamin: hast Du Dein Problem eigentlich gelöst?
Ich hatte den Thread aus den Augen veloren, sorry :-)

Autor: Benjamin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Also die Programme laufen jetzt mit dem Startup-Code. Da ich leider nur
wenig ARM-Assembler behrrsche und ich grad keine Zeit hab das zu lernen
weiss ich aber nicht so ganz wie der Code aus boot.s funktioniert.

Aber die Haupsache ist erstmal das ich C-Programme auf dem LPC
ausführen kann.


MfG Benjamin

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beid er newlib-lpc ist auch Startup-Code dabei "crt0.S".
Müsste im Source-Verzeichnis der newlib-lpc-rel2 liegen...

Wenn Du mein Makefile anguckst, dann siehst Du da auch, wie man das
richtig einbindet...

Autor: Benjamin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Falls du mal Muse hast könntest du das makefile ja ein bischen
kommentieren so nach dem Motto "was mach ich in der zeile...".
Manches ist nämlich schon recht schwer zu verstehen wenn man nicht
jeden Tag makefiles verfasst.

MfG Benjamin

Autor: OldBug (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jupp, ist schon in arbeit...
Aber da hängt noch ein bissl mehr dran ;-)

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.