Hallo, ich habe einen Atmet SAM-ICE Debugger, mit dem ich in Keil uVision programmiere. Nach langer Suche nach einem Programmierfehler musste ich jedoch feststellen, dass bei schrittweisem abarbeiten meines Programms im Simulator (mit F11) das Programm nicht in den Interrupt Handler springt. Wird das Programm im Simulator aber normal mit "Run" gestartet wird der Interrupt ausgeführt. Wieso führt der Simulator bei schrittweiser Simulation mit F11 keinen Interrupt aus??? (Im Interrupt Pending Register wird die Interruptanforderung korrekt angezeigt jedoch nicht ausgeführt) Liegt hier evtl. eine Falscheinstellung seitens uVision vor. Grüße Norman
> Wieso führt der Simulator bei schrittweiser Simulation mit F11 keinen > Interrupt aus? Weil das in 99.95% der Fälle einfach nur BÄH ist, denn bei ausreichender (Timer-)Frequenz - also alles schneller als 0,2 Hz - würde er bei jedem Schritt im Interrupt Handler landen. Daher maskiert man die normalerweise im Einzelschritt Betrieb. Timer & Co. laufen i.d.R. weiter, wenn der Core durch den Debugger angehalten wird. Du kannst ja mal nachschauen, ob es die Option gibt die Interrupts nicht zu maskieren. Aber mach Dir keine großen Hoffnungen, denn wegen der o.g. Probleme kann man dann nichts mehr mit dem Einzelschritt im Debug anfangen. Ich habe da Erfahrung - OpenOCD hat dieses Feature noch nicht so lange.
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.