Gast
#57993
Hallo, frohe Weihnachten noch allerseits ! Wie kann ich einen anstehenden Captureinterrupt löschen ? Am Eingang ICP (Mega 8) kommem 2 Impulse an, wovon ich nur den Ersten auswerten will. In der Interruptroutine wird das Captureregister ausgelesen und dann unterdrücke ich weitere Interrupts durch Rücksetzen von TICIE1. Sobald ich aber im weiteren Verlauf den Captureinterrupt wieder freigebe, springt das Programm sofort in die entsprechende Interruptroutine, da inzwischen der 2. Impuls am Eingang ICP ankam. Ich habe versucht, das durch Rücksetzen des Input Capture Flags zu verhindern, aber das funktioniert nicht. Wie kann ich das verhindern und den anstehenden Interrupt löschen ? Noch eine Anfängerfrage: Wie kann ich am einfachster ein Flag im Register setzen oder löschen. zB. Flag ICF1 im Register TIFR. Ich lade immer ein Register und gebe das Register mit dem Befehl "OUT" an die Adresse. Kann man das einfacher machen ? Gruß Reinhard