LPC210x GNUARM Probleme

Gast #100298
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
Gast
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/LPC2106-gcc-Demo.zip
LPC2106-gcc-Demo.zip
Hier liegt das Beispielprojekt zur Zeit. Wird aber irgendwann ersetzt!
Gast
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
Gast
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
Gast
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...
Gast
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

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.