Re: @PeterS - Timing Interruptroutine Kategorie: Programmierung C (von Hannes - 10.01.2008 9:19) | ||
Als Antwort auf Re: @PeterS - Timing Interruptroutine von PeterS - 9.01.2008 22:11 | ||
| ||
Hat mit geholfen, Danke. Mann muss sich also um "verpasste" IRQs selber kümmern, dass die nachgeholt werden. Ich nehm an, dass das bei ext. IRQs das gleiche ist? Bzgl. genaue Uhrzeit + Datum habe ich einen ext. Baustein (PCF8583, I2C-Bus) eingebaut, da ich in manchen Räumen kein DCF-Signal empfange. Gruss > Hallo Hannes, > > der Interrupt Counter wird hochgezählt, aber sonst passiert nichts weiter. Man sollte daher bei der > Realisierung von Uhrfunktionen nicht in der Routine nicht zulange warten, oder den Wert von > Irq_GetCount() mit berücksichtigen. > > Man kann auch eine Uhrzeit mit periodischen Aufrufen von Timer_TickCount() realisieren. Wenn der > aufsummierte Wert 600 übersteigt, den Minutenzähler um 1 erhöhen, etc etc > > Hab ich Dir damit geholfen? > > Gruss Peter > > > Hallo Peter, > > > > wie managed der Interpreter das, wenn z.B. alle 10ms eine Interruptroutine aufgerufen wird > > und die Abarbeitung der Routine (z.B. RTC() )länger als 10ms dauert? > > > > > > > > > > > > > > //------------------------------------------------------------------------------ > > // Interrupt alle 10ms > > // > > void INT_10ms(void) > > { > > int irqcnt; > > > > RTC(); // Funktionsaufrauf: RTC > > irqcnt=Irq_GetCount(INT_TIM2COMP); // Interrupt Request Counter > > } | ||
Antwort schreiben Antworten: |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum