Hallo zusammen! Ich bin gerade von AVR auf ARM umgestiegen und hänge prompt an einem extrem doofen Problem. Im Anhang habe ich mein Prog (WinARM, PN). Nach dem Start ruft das Hauptprogramm SetupProcessor() auf, um den Prozessor zu initialisieren. Die 3 LEDs und die for(;;)-Schleife verwende ich zum Testen, wie weit das Prog überhaupt läuft. Da, wo ich im Code /*geht nicht mehr*/ vermerkt habe, geht gar keine LED an. Einen Reset scheint der Prozessor nicht zu machen, zumindest ist der Booloader beim setzen des BSL-Jumpers weiterhin nicht erreichbar (erst wieder nach einen externen Reset) Ich schätze mal, für die Profis unter Euch ist da Problem total trivial - vom falschen Linkerskript (ich habe schon verschiedene aus den ARM-Beispielen probiert, immer das gleiche Symptom) bis zum einfachen Denkfehler. Leider hat Googlen und eine Suche hier im Forum mich nicht weitergebracht (oder habe ich etwa das entscheidende übersehen?) Wäre schön, wenn mir einen einen Tipp geben könnte. Vielen Dank! Andy
Es gibt in dem Projekt keinen startup-code. Das sollte zuerst korrigiert werden, ansonsten fehlt zu viel (exeptions-vectoren, data und bss init, stack-setup für die verschiedenen modi, sprung zu main()). PLLCFG sieht nicht ganz richtig aus, aber auch nicht so genau geschaut. Ich habe bei WinARM doch ein paar Beispiele für LPC2129 beigelegt, warum nicht erstmal damit "herumspielen"? Martin Thomas
Danke für den Hinweis und vor allem für die schnelle Antwort!!! Die Beispiele von WinARM hatte ich mich angeschaut (daher auch die Linkerskripte). Den Startup-Code werde ich mal von einem Beispiel übernehmen und ausprobieren. Das mit crt0.s hatte ich nicht so richtig kapiert - auch wenn es plötzlich logisch erscheint (bei WinAVR hatte ich das nie gebraucht) Im Nachhinein ist es schon verblüffend, daß main() überhaupt ausgeführt wurde... :( Die PLL-Konfiguration habe ich aus dem GCC-Tutorial und im Datenblatt nachgeschaut. Das Quarz läuft mit 25MHz, die CPU sollte mit 50 laufen. Das checke ich aber auch nochmal nach. Nochmals herzlichen Dank!!! Andy
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.