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

Re: Rückgabewert von Irq_GetCount(INT_TIM2COMP); beim ersten Aufruf Kategorie: Programmierung C (von Jo - 8.06.2011 10:41)
Als Antwort auf Re: Rückgabewert von Irq_GetCount(INT_TIM2COMP); beim ersten Aufruf von PeterS - 7.06.2011 17:47

> > > > > > Hallo Peter,
> > > > > > wenn nach
> > > > > >  
> > > > > > Irq_SetVect(INT_TIM2COMP,INT_10ms);  
> > > > > >
> > > > > > das erste mal in die Funktion 10ms gespungen wird, ist der Wert den
> > > > > >
> > > > > > irqcnt=Irq_GetCount(INT_TIM2COMP);
> > > > > >
> > > > > > zurückliefert in der Regel 42 ! Es werden nach SetVect() kein Abs_Delay() verwendet.
> > > > > > Meine Erwartungshaltung wäre, dass der Wert 0 ist.
> > > > > > Ist meine Vorstellung richtig? Gibt es an dieser Stelle u.U. noch ein kleiner Fehler?
> > > > > >
> > > > > > Vor dem Aufruf von
> > > > > > Irq_SetVect(INT_TIM2COMP,INT_10ms); wird viel code durchlaufen. Wird da u.U. schon was gezählt?
> > > > > >
> > > > > > Viele Grü�e
> > > > > > Jo
> > > > >
> > > > > Ja, das wird schon gezählt, da der Timer2 10ms Interrupt normalerweise für clock und
> > > > > Multithreading immer aktiv ist.
> > > > >
> > > > > Gruss Peter,
> > > >
> > > > Hallo Peter,
> > > > wäre es möglich, den Wert nach dem Aufruf von Irq_SetVect( ) auf 0 zu setzen? Denn wenn man
> > > > mit dem Rückgabewert arbeiten mu� bedeutet es ansonsten dass man selber tracken muss ob ein
> > > > Interruptfunktion das erste oder n-te mal aufgerufen wird. Das ist sehr unschön und verlangsamt
> > > > die Abarbeitung des Interrupts unnötig.
> > > > Viele Grü�e
> > > > Jo
> > >
> > > Hallo Jo,
> > >
> > > wenn man nach
> > > Irq_SetVect(INT_TIM2COMP,INT_10ms);  
> > > direkt
> > > irqcnt=Irq_GetCount(INT_TIM2COMP);
> > > aufrufen würde, kann man ihn damit nicht auch löschen?
> > >
> > > Grü�e Joerg
> > >
> > Hallo Jörg,
> > eine gute Idee! Peter, ist das aus deiner Sicht OK?
>
> Das mü�te gehen, werde ich aber noch im Detail prüfen, ob da nicht ein Seiteneffekt ist.
>
> Gruss Peter
>
> >
> > Viele Grü�e
> > Jo

Hallo Peter,
"sauberer" wäre nach meinem Verständnis trotzdem das Rücksetzen des Zählers beim Aufruf von
SetVect() in deiner lib.

Viele Grü�e
Jo


    Antwort schreiben


Antworten:

Re: Rückgabewert von Irq_GetCount(INT_TIM2COMP); beim ersten Aufruf (von PeterS - 8.06.2011 19:31)