Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Interruptroutine Capture Compare Kategorie: Programmierung C (von Josef - 19.08.2009 17:51)
Ich nutze:
C-Control Pro Mega128
hallo
das problem besteht darin, dass die interruptroutine keine abfrage (if, switch usw.)
oder einen Unterprogrammaufruf verträgt.
sobald ich in die unten angeführte interruptroutine ein if einbaue verabschiedet sich der prozessor.

void Timer3_ISR(void)
{
   x[a]=Timer_T3GetPM();
   Irq_GetCount(INT_TIM3CAPT);           // Interrupt zurücksetzen
}

will man nun ein signal mit unterschiedlichen Pulslängen messen, funktioniert das nur
wenn man im hauptprogamm ein while (x[a]==0; einbaut und anschlieÃ?end die Messung
wieder startet (Bemerkung: ist aber nicht sinn eines interrupts, wenn man wartet bis der interrupt
abgearbeitet ist)
oder man lässt den code durchrasseln und macht immer wieder eine abfrage -> dann übersieht man
irgendwann einen puls, wenn der codedurchlauf zu lange wird.
gibts hier eine lösung?

gruÃ?
josef


    Antwort schreiben


Antworten:

Re: Interruptroutine Capture Compare (von PeterS - 20.08.2009 13:06)
    Re: Interruptroutine Capture Compare (von Josef - 20.08.2009 18:19)
        Re: Interruptroutine Capture Compare (von PeterS - 20.08.2009 21:46)
            Re: Interruptroutine Capture Compare (von Josef - 21.08.2009 10:23)
                Re: Interruptroutine Capture Compare (von PeterS - 22.08.2009 12:04)
                    Re: Interruptroutine Capture Compare (von Josef - 22.08.2009 19:41)