Hallo, Ich verwende z.Z. die IAR Embedded Workbench IDE V 7.40 Kann mir jemand sagen, wie man bei der IAR Embedded Workbench die startup Dateien für einen Kinetis uC automatisch einbinden kann? Nachdem ich ein C Projekt für meinen Controller (MK10DX128VLH7) angelegt habe, erscheint lediglich eine "nackte" main() Funktion. Diese enthält keinerlei Include Dateinen wie z.B. startup.h oder eine Interrupt Vektor Tabelle. Gibt es eine einfache Möglichkeit diese Dateien zu integrieren? Das sollte doch eigentlich ein Standartproblem prozessor- und fabrikatsübergreifend sein?! Vielen Dank für eure Hilfe!
Was sollte der Startup code auch in main? Er wird vor der Main gebarucht. Bei der EWARM findest du bei Project settings -> Linker die Runtime Library Configuration und Default Program Entry (default: __iar_program_start) Das ist der Startup, der sich um die grundsätzliche Einrichtung (Segmente kopieren, pointer setzen, etc) kümmert. Danach wird deine Main aufgerufen wenn alles schön läuft. In dem Linker-Script sollten auch Interrupt Vektoren schon auftauchen, die, sollte dein Programm sie nicht überschreiben benutzt werden (weak link) Einfach die Interrupt Funktion mit diesen vorbereiteten Namen an der Stelle definieren, wie du sie brauchst und gut ist.
Hi danke für die Antwort! Ich bin deiner Beschreibung gefolgt und konnte die Daten nachvollziehen. Jedoch waren diese Einstellungen bereits als "default Einstellungen" aktiviert. Muss ich die dort angegebenen Daten denn niergendwo includieren? Das kommt mir etwas komische vor... p.s. Das Problem äußert sich übrigens beim debuggen. Sobald ich ein miniatur Programm auf den Controller flashe und dann versuche zu debuggen, erreiche ich meine main Funktion schon gar nicht. Vorher bricht der Debugger ab und macht einen reset. Danke!
Dann schalte mal unter Properties -> Debugger -> Setup das Run To Main aus und steppe durch was passiert.
Es folgt das gleiche Phänomen... ein paar Steps funktionieren, bis das ganze abbricht und resettet...
Es ändert natürlich nichts im Ablauf des Programms, aber du siehst nun wo es abbricht / resettet und den dann so erkannten Fehler beseitigen. (irgendwelche Zugriffe ausserhalb des Speichers? Sprung nach 0? etc) Bricht es immer woanders ab, würd ich die HW mal prüfen.
godlyblade schrieb: > Es folgt das gleiche Phänomen... ein paar Steps funktionieren, bis das > ganze abbricht und resettet... Watchdog?
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.