Eclipse GNU/ARM: Startup-Code für LPC2119 oder LPC2138

Gast #497107
Hallo!

Hab bisher mit Keil µVision Demoversion gearbeitet und möchte nun auf 
Eclipse umsteigen.
Hab im Forum folgenden Verweis gefunden:
Sehr detaillierte Einführung in eine Entwicklungsumgebung mit 
GNUARM/Eclipse für Philips LPC

Hab ich auch wie in der Anleitung beschrieben installiert und müsste 
funktionieren.
Ich habe mir auch die Beispiele heruntergeladen, nur die beschränken 
sich auf einen LPC2148 und einen LPC2106.

Zuhause hab ich aber einen LPC2119 und einen LPC2138 und ich schaffe es 
nicht nur ein einfaches Demoprogramm zum Laufen zu bringen.
Es liegt bestimmt am Startup-Code, da kenne ich mich leider überhaupt 
nicht aus. Für µVision hatte ich schon einen funktionierenden 
Beispielcode dabei, der lässt sich aber ohne gute Kenntnisse nicht so 
einfach portieren!

Hat jemand von euch zufällig einen Startup-Code für einen meiner 
genannten Mikrocontroller (LPC2119 oder LPC2138) der sich mit Eclipse 
GNUARM kompilieren lässt!
kann mir bitte jemand sowas zukommen lassen?


Vielen Dank schon mal für eure Mühe!
Gast #497201
Hallo Gerhard!

Danke für deine Antwort.
Auf der oben genannten Homepage konnte ich aber auch nur Beispiele für 
LPC2148 und LPC2294 finden.
Werd aber am Abend, wenn ich zuhause bin versuchen, vielleicht find ich 
irgendwie raus was ich im StartUp-Code verändern muss, damits mit meinem 
Mikrocontroller funktioniert!

Gruß Stefan
Gast #497222
Von dem Startup-Code kannst Du erstmal die Finger lassen - der kopiert 
hauptsächlich die Daten/Variablen in den RAM, setzt diese (so notwendig) 
auf 0 und stellt die Interrupt-Tabelle zur Verfügung - sozusagen alles 
ARM7-standard.

Wichtiger sollte für Dich die Betrachtung des linker-scripts (*.ld) 
sein.
Hier werden die Speicherbereiche (RAM, ROM) definiert - diese mußt Du 
meist an Deinen spezifischen Controller anpassen.
Gast #497237
Der 2294 dürfte eine gute Basis sein, weil gleiche Baureihe. Aber nur 
wenn dessen Demo keinen externen Speicher vorsieht. Musst dann 
eigentlich nur noch im Linker-Script die obere Grenze vom Flash-Memory 
reduzieren.
Gast #497313
so siehts bisher mal aus:

MEMORY
{
  flash            : ORIGIN = 0,          LENGTH = 128K


  ram_isp_low(A)   : ORIGIN = 0x40000120, LENGTH = 223
         /* variables used by Philips ISP bootloader  */


  ram             : ORIGIN = 0x40000200, LENGTH = 32513
         /* free RAM area


  ram_isp_high(A)  : ORIGIN = 0x40007FE0, LENGTH = 32
         /* variables used by Philips ISP bootloader  */


  ram_usb_dma      : ORIGIN = 0x7FD00000, LENGTH = 8192
         /* on-chip USB DMA RAM area (not used)
}

flash hab ich bereits angepasst!
statt 512K -> 128k

nun kenne ich mich aber nicht aus was die unterschiedlichen RAM Bereiche 
bedeuten!
Gast #498555
Nur ein kleiner Tip mit Bezug auf die Beispiele fuer den LPC2148 und 
LPC2294.

Was auf dem LPC2294 laeuft und keinen externen Bus benuetzt laeuft auch 
auf dem LPC2129, die sind register / binaer compatibel.
Was auf dem LPC2148 laeuft und nicht die Fast I/O oder den USB benuetzt 
laeuft im allgememeinen auch auf dem LPC2138. Der LPC2148 ist allerdings 
eine Obermenge und hat ein paar verbesserte Features.

Also fuer LPC2138 den LPC2148 nehmen und fuer den LPC2129 den LPC2294

Robert
Gast #498575
Hi Namensvetter! Warst du schon hier?

gcc-Port of the LPC2000 Example-Code-Bundle for LPC213x/LPC214x (Philips 
LPC2000 ARM7TDMI-S controller series)
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/lpc2k_bundle_port/index.html

LPC2106, LPC2129 and LPC2138 ARM7 interrupt-driven UART
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/#lpc_uart_irq

In der GNUARM Toolchain sind sehr wenige Beispiele dabei. Bei WINARM 
sind es wesentlich mehr. U.a. auch Linkerkontrollskripte (*.ld) und 
Startup-Code (*.S) für den LPC2138 und LPC2119.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 19 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.