PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Interrup-Anfäner



ronald
21.01.2006, 17:31
Hallo,
ich "übe" mit dem Atmega8 im Thema Interrupt.
Habe folgendes Problem, wie kann ich mehrere Ints. einsetzen.
Probem: habe 2 leds, 1. int soll die 1 einmachen, 2. int soll die 2. anmachen.

wenn ich das mit einem int. mache gehts, wenn ich den 2. reinnehme, gehts nichts mehr. also mache ich irgendwas falsch. vielleicht kann sich einer von euch das mal ansehen. danke im voraus. mein prog siehe anhang

uwegw
21.01.2006, 17:36
Mit der Konfiguration von INT1 überschreibst du die Einstellungen von INT2, da du die entsprechenden Bits wieder auf Null setzt. Machs mal so:


;Konfig INT_1 und ;Konfig INT_2
ldi r17,0b11000000
out GICR,r17
ldi r17,0b00001100
out MCUCR,r17
sei

ronald
21.01.2006, 17:41
das ging aber schnell.
vielen dank - es geht.

moonwalker99
27.01.2006, 19:42
Wie mach ich das beim ATMEGA16? Genau gleich?

uwegw
28.01.2006, 16:21
ich würd sagen ja. Zwischen Mega16 und Mega32 gibts eigentlich kaum Unterschiede (bis auf die Speichergrößen und ein paar Kleinigkeiten), und ich denke, die Interruptverarbeitung ist identisch...

EDIT: mist, vertan, oben gings ja um nen Mega8...
Der M16 hat eine andere Tabelle für die Interruptvektoren, und bei den Konfigurattionsregistern könnte es auch Änderungen geben. Da musst du mal das Datenblatt lesen...