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) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum