Hallo Ich beschäftige mich jetzt ca. seid einem Monat intensiv mit Assembler und AVRs und bin voll begeistert, was man da alles machen kann. Bis jetzt hat auch alles immer geklappt auch die internen Interrupst, aber mit den externen kom ich einfach nicht zurecht. Ich habe versucht im Internet etwas zu finden und habe auch das Datenblatt gewälzt, aber irgendwie werde ich da nicht recht schlau. Ich weiß, dass ich dem MCUCR mitteilen muss, ob der Interrupt bei fallender oder steigender Flanke erfolgen soll. Außerdem habe ich mit dem Befehl SEI die Interrupts eingeschaltet und die Interrruptvektoren in der Reihenfolge verwendet, wie sie im Datenblatt angegeben sind. Den Interrrupt gedachte ich dann durch anlegen von Spannung am INT0 Eingang auszulösen, aber es ging nicht. Ich würde mich freuen, wenn mir jemand sagen könnte, auf was ich noch achten muss bzw. wo ich einen Fehler gemacht habe.
Hallo, hast du das 'GIMSK'-Register gesetzt? - nur wenn dieses auf 1 ist, kann ein Interrupt ausgelöst werden. Poste mal deinen Code, dann kann man bessere Antworten geben. Gruß, Florian
OK im Anhang ist ein Program, so wie ich dachte, dass es funktionieren muss, aber, dass nicht funktioniert. Das mit dem GIMSK Register verstehe ich nicht, denn so weit ich das aus dem Datenblatt verstehe (Wobei das muss nichts heißen, weil ich nicht wirklich gut Englisch kann :-)) bedeutet das setzen des GIMSK-Flags nichts anderes als ein Interrupt auszulösen. Wenn ich das intern über die Software mache, dann habe ich doch wieder nichts extern beeinflusst, oder seh ich das falsch? Andy
Also so wie ich das Datenblatt verstehe, wird mit dem Setzen der entsprechenden Bits des GIMSK Registers nicht ein Interrupt ausgeloest, sondern ermoeglichst. Probier also in Main ein ldi temp, 0b11000000 out GIMSK, temp Dazuzutun. :-? Viel Erfolg! Gruesse, j.
OK, Danke, jetzt läuft es. Sagte ja mit Englisch bin ich trotz 8 Jahre Unterricht nicht sio bewandert. Also jetzt läuft auch das.
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.