ATiny13A - Pin Change Interrupt

#3347337
Lesenswert?

Ich versuche mich heute den ganzen Nachmittag daran, einen Interrupt 
durch Pegelwechsel auszulösen. Leider krieg ich das - warum auch immer 
nicht hin.

Ich habe als Testumgebung ein Pollin Evaluationsboard Version 2.01 mit 
einem ATtiny13A. Ich möchte mittels PCINT4 durch Betätigung eines 
Tasters an PB4 eine LED an PB2 leuchten lassen. Lasse ich den Taster 
los, soll die LED wieder erlöschen. Ich habe dazu ein Assembler-Programm 
geschrieben (siehe Anhang). Ich habe das Kapitel über die externen 
Interrupts in der Spezifikation des ATiny13A gelesen und krieg das 
einfach nicht gebacken.

Der Taster liegt mittels RC-Glied (33k/330n - wegen Entprellung) an 
Masse. Durch Betätigung geht PB4 auf H. Die LED benötigt zum leuchten 
H-Potential am PB4.

Wenn ich das Prograsmm im AtmelStudio simuliere, wird bei Veränderung an 
PB4 kein Interrupt ausgelöst.

Es wäre nett, wenn mit jemand helfen könnte.

Herzlichen Dank in voraus.

---
Gruß,
Billy
Angehängte Dateien:
#3348188
Lesenswert?

@adenin
Hallo Detlef,

ich verwende das Artmel Studio 6.1. Ich habe zu Beginn der ISR einen 
Breakpoint gesetzt. Wenn ich mit F11 bis in den Loop durchsteppe, danach 
PORTB4 auf H setze tzt sich nichts. Selsamerweise wird das I-Bit 
gelöscht; und zwar o h n e dass die ISR aufgerufen wird. (Ich steppe 
alles mit F11 - also kein Run mit F5)

Ich habe das Programm heute auf die echte Hardware gespielt. Da tut sich 
ebenfalls nichts. Ich meine, dass die LED bei anhaltenten Tastendruck 
leuchten sollte. Leider passiert hier rein gar nichts.

Ich habe da vermutlich doch irgendwie etwas übersehen/falsch 
interpretiert.
Keine Ahnung, was ich da falsch gemacht habe. Brauche ich evtl 
irgendwelche nop-Befehle aus Synchronisationsgründen?


---
Gruß,
Billy

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren