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

Re: Pulsmessung Kategorie: Programmierung C (von ER - 20.08.2009 13:44)
Als Antwort auf Re: Pulsmessung von Josef - 17.08.2009 19:09
Ich nutze:
C-Control Pro Mega32
Hallo Josef,
ich habe Deine Ausf├╝hrungen und Dein Programm gelesen und gleich eine Frage dazu:
Ist das wirklich so? Innerhalb einer Interruptserviceroutine darf es kein if, else, switch und case
geben? Das w├Ąre ja furchtbar. Wie soll man ohne diese Anweisungen ein Programm schreiben?
Und wie soll man dann ein Aufgabe realisieren z.B. in 100 Interrupts bei cnt=0 und 70?

Gru├č
Ellen




> > > habe um timingprobleme auszuschlie├čen die abspeicherung in die interruproutine aufgenommen.
> > > warum muss man nach jedem interrupt den timer wieder neu definieren?
> > >
> > > danke
> > > josef
> >
> > Nun ja, die Library ist halt so spezifiziert, das sie eine Periodenmessung macht. Life is hard :-)
> >
> > Gruss Peter
>
>
> hallo peter
> die Messung nach jedem interrupt starten kostet zwar zeit ist aber kein problem.
> das problem f├Ąngt erst dort an, wenn 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.
>
> gru├č
> josef


    Antwort schreiben


Antworten:

Re: Pulsmessung (von PeterS - 20.08.2009 14:52)
    Re: Pulsmessung (von Josef - 21.08.2009 10:37)