www.mikrocontroller.net

Forum: Compiler & IDEs AVR Simulator - Pin Change Interrupt simulieren


Autor: Marcel (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Moin zusammen,
ich möchte gerne meinen Pin Change Interrupt genauer mit dem AVRStudio 
unter die Lupe nehmen, doch wenn ich Step by Step debugge, und dann 
einen Pin per Mausklick am PinX verändere, so springt er nicht in die 
Routine. Was mache ich falsch?

(Wenn ich das Programm auf den Controller schiebe, so wird sie dort 
angesprungen)

Hinweis: Nutze AVR-Studio 4.17, µC ist der MEGA169


Hab ne gute Erklärung für den AVR Simulator im Internet gefunden, doch 
wurde dort leider nicht mein Problem aufgegriffen

Für die dies interessiert ;)

http://www2.tech.purdue.edu/ecet/courses/ecet309/R...

Danke im Vorraus

Marcel

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Artikel AVR-Simulation sind ein paar Methoden genannt, wie man 
externe Stimuli in den AVR Studio Simulator einspeist.

Danke für den Link, der ist jetzt auch im Artikel :)

Wenn du ein Minimalbeispiel hast, schaue ich mir das auch mal an.

Autor: Marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan B. schrieb:
> Danke für den Link, der ist jetzt auch im Artikel :)

Ich freu mich! ;)

Meinste das Tool HAPSIM?

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja oder Stimuli

Autor: Marcel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan B. schrieb:
> Ja oder Stimuli

Ah da haste Recht!
Stimuli ist nicht so mächtig und schneller und besser für meine 
Bedürfnisse

Merci beaucoup :) - Schade dass dies nicht direkt im AVR--Studio 
implementiert ist :(

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Stefan B. schrieb:
> Danke für den Link, der ist jetzt auch im Artikel :)

Der ist aber ziemlich alt.  Mittlerweile sollte man, soweit möglich,
den "Simulator V2" (oder wie er heißt) dem alten Simulator
vorziehen, denn er ist logisch eine 1:1-Umsetzung des tatsächlich
implementierten Digitalteils im AVR.

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Marcel

Wenn du dein Programm mit AVR-Studio simulierst kannst du die Register 
auf der rechten Seite des Bildschirms manuell setzen. Schau einfach 
welcher Register bei dem Interrupt auf 1 gesetzt wird und setze ihn dann 
manuell.

Ob es jetzt beim Pin Change Interrupt auch funktioniert müsstest du 
ausprobieren.

Gib mal laut obs funktioniert hat.

mfg Jan

Autor: Jan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hmm hab gerade nochmal geschaut du kannst net über deine Registeransicht 
im AvrStudio das EIFR register net verändern. Aber setz doch einfach ne 
globale Var die im main while loop abgearbeitet wird damit kannst du das 
Programm testen, denn du kannst im Watch fenster die Variable ja setzen.


mfg Jan

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.