Forum: Mikrocontroller und Digitale Elektronik LPC 2148 Startup Problem


von Stefan (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

Ich arbeite seit kurzem mit einem NXP LPC 2148 ARM 7 Prozessor und habe
seit dem letzten Flashen via Ulink 2 ein Problem beim Startup.

Zu Anfang funktionierte alles einwandtfrei. Funktionen wie ADC DAC
GPIO's haben bestens funktioniert, also denke ich das es vom Layout her
passt.

Nachdem ich etwas an der Software geändert hatte und es draufspielen
wollte fährt der Prozessor nicht mehr hoch. Habe es auch schon gegoogelt
aber keine Lösung gefunden die das Problem in meinem Fall behebt.

Konkret hängt sich der Prozessor im Startup File beim debuggen bei der
Anweisung : LDR PC, FIQ_Addr auf.

Die ID vom Prozessor kann ich noch lesen und den Flash beschreiben.

Hat jemand eine Idee was da schiefläuft ?

Projekt Ordner hab ich mal drangehängt.

Vielen Dank schonmal.

Grüße Stefan

von Random .. (thorstendb) Benutzerseite


Lesenswert?

Setz mal nen BP @main. Der kommt da an.

von Stefan (Gast)


Lesenswert?

Wenn ich use Simulator mache läufts durch, wenn ich aufm Target mit 
Ulink
2 debugge hängt er an besagter Stelle.

Werd ich wohl doch mal den Chip tauschen müssen.

Danke für die schnelle Antwort.

Grüße

von rtup Pro (Gast)


Lesenswert?

und was passiert, wenn Du die originale, funktionierende
SW flashst?

von Lothar (Gast)


Lesenswert?

Stefan schrieb:
> Nachdem ich etwas an der Software geändert hatte und es draufspielen
> wollte fährt der Prozessor nicht mehr hoch.

Im Programm ist nicht explizit eine Clock deklariert. Man sollte 
entweder den internen Oszillator anschalten, oder bei externem Quarz die 
PLL richtig konfigurieren.

Wenn die PLL mal falsch konfiguriert wurde, lässt sich der ARM u.U. 
nicht mehr über JTAG ansprechen. Dann den ROM-Bootloader starten, der 
nutzt den internen Oszillator, und über FlashMagic das korrektes 
Programm laden.

von Peter B. (ich_bins)


Lesenswert?

Würde ich auch empfehlen, nimm Flashmagic und spiel ein funktionierendes 
Programm drauf.

von Random .. (thorstendb) Benutzerseite


Lesenswert?

Das Programm funktioniert, das hängt mit dem Startup des Chips zusammen, 
dass man da nicht durchsteppen kann. Warum genau, weiss ich gerad nicht.

Aber ein BP @main, da sollte der anhalten. Zumindest funktioniert das 
hier mit meinem Test.

von Stefan (Gast)


Lesenswert?

Vielen Dank für die schnellen Antworten.

Peter Birkenstock schrieb:
> Würde ich auch empfehlen, nimm Flashmagic und spiel ein funktionierendes
>
> Programm drauf.

Diese Option fällt leider aus, da ich im Layout die entsprechenden Pins 
nicht auf Header oder sonstiges geführt habe.

Random ... schrieb:
> Aber ein BP @main, da sollte der anhalten. Zumindest funktioniert das
>
> hier mit meinem Test.

Ja funktioniert bei mir auch allerdings nur wenn ich das Programm 
simuliere. Wenn ich das auf dem Target debugge läuft er nicht bis zu 
main.

Ich denke es liegt an der Hardware. Habe die gleichen Programme auf 
einem anderen Board laufen lassen, da funktioniert alles wie es soll.

Werde nun einfach nochmal ein zweites Board aufbauen. Und das ganze 
nochmal testen :)

Danke nochmal.

von Lothar (Gast)


Lesenswert?

Stefan schrieb:
> Diese Option fällt leider aus, da ich im Layout die entsprechenden Pins
> nicht auf Header oder sonstiges geführt habe.

Es sollte doch möglich sein RX und TX provisorisch anzuklemmen? GND ist 
bestimmt rausgeführt.

von Random .. (thorstendb) Benutzerseite


Lesenswert?

> Ja funktioniert bei mir auch allerdings nur wenn ich das Programm
> simuliere. Wenn ich das auf dem Target debugge läuft er nicht bis zu
> main.
Hast du mal das Blinky aus den \Boards\Keil\MCB2130 aufgespielt? Das 
läuft bis main, auch wenn man nicht über die besagte Anweisung steppn 
kann.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.