Hallo, ich versuche gerade mit dem Keil µVision3 Externe Interrupts zu simulieren. Klappt aber nicht, da im Simulator die Interrupts ständig ausgelöst werden. Eigentlich sind diese so eingestellt, dass nur ein Flankenwechsel am µC Pin den Interrupt auslösen soll. An den Pins ändert sich aber nichts. Sperr ich die Interruptfreigabe, dann wird richtigerweise auch kein Interrupt mehr ausgelöst, auch nicht bei einem Flankenwechsel. Auf der Hardware funktionierts richtig. An was könnte das liegen? Der µC ist ein XC888 von Infineon. Grüße, Michael
>Interrupt mit Keil
Letztens hatte ich einen solchen "Keil" in den Fahrradspeichen, war auch
eine Art "Interrupt"
Hab das ganze auch schon Simuliert, allerdings für einen anderen uc..., hat soweit grundsätzlich funktioniert... kann es sein, dass du in C programmiert, den interrupt dauernd auf enable setzt, obwohl es schon enable ist? (soweit ich mich erinnere, lösst kein bei einem externen interrupt, welcher enabled ist, und trotzdem enabled gesetzt wird einen interrupt aus (macht zwar absolut keinen sinn, aber hatte das probelm mal, habs dann anders programmiert und es funktionierte einwandfrei...)
Er wird einmal in der Initialisierung "geenabled". Nach der Initialisierung kommt die berühmte while(1) Schleife, die z.Zt. aber noch leer ist.
Welche Keil Version hast du? Ich weiß noch dass die erste(n) Keil-Version(en) mit Unterstützung für die XC800 einige Bugs bei de Interrupt-Simulation hatten (speziell beim A/D-Wandler).
Ich hatte seither die Version 3.31a. Compiler V8.04b Hab mir gerade die neuste Version (V3.60) heruntergeladen und istalliert. Jetzt läuft der Simulator gar nicht mehr. Das komplette µVision stürzt ab.
Also ich benutze die Keil Entwicklungsumgebung schon recht lange und habe keine Probleme damit. Auch die aktuelle Version 3.60 von µVision funktioniert bei mir problemlos inklusive Simulator. Vielleicht solltest du mal den relevanten Teil deines Codes hier zeigen, damit man den Fehler besser analysieren kann. Ciao, Rainer
Die Simulation des Beispielcodes funktioniert mit der neuen Version. Nur mein Code nicht. Hab mal das ganze angehängt. Stell mich glaub nur blöd an gerade...?!?
Ich hab gerade bei dem mitgelieferten Beispielcode "hello" auf einen Infineon C501 µC umgestellt. Simulieren und auch kompilieren geht. Stell ich aber auf einen XC8xx um, so geht zwar das kompilieren, beim simulieren hängt sich aber der Keil komplett auf. Liegt das an Keil oder hat mein System ein problem?
Probiers mal mit XC866 ob das geht. Ist bei mir auch so (XC886 stürzt ab, XC866 geht) Demnächst soll eine neue Version rauskommen bei der dieses Problem nicht mehr besteht.
Stimmt, mit dem XC866 stürzt das Beispielprogramm nicht ab... Toll :-(
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.