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

Re: Funktion: Irq_GetCount(byte irqnr) Kategorie: Programmierung C (von PeterS - 19.08.2009 15:30)
Als Antwort auf Funktion: Irq_GetCount(byte irqnr) von ER - 18.08.2009 10:59
Ich nutze:
C-Control Pro Mega32, C-Control Pro Mega128, CC-Pro 32 Application Board, CC-Pro 128 Application Board, Pro-Bot128
> Hallo Zusammen,
>
> irgendwie verstehe ich diese Funktion noch nicht ganz?
> Laut Handbuch:
> "Signalisiert, daß der Interrupt abgearbeitet wurde (interrupt acknowledge).
> Wird die Funktion nicht am Ende einer Interruptroutine aufgerufen,
> wird ununterbrochen in den Interrupt gesprungen."
>
> Was heist "ununterbrochen in den Interrupt???"
>
> Wenn ich folgendes mache:
> // Interupt starten
> Irq_SetVect(INT_TIM1CMPA,iservice);   // Interrupt Service Routine definieren
> Timer_T1Time(719,PS_1024);            // 69,4 µs*719=50 ms
>
> Hier wird doch der Timer einmal gestartet. Das Programm läuft einmal in die
> Interruptroutine. Warum muss ich etwas stoppen??
>
>
> Gruß
> Ellen

Genau genommen passiert im aktuellen Interpreter das Gegenteilige, ruft man Irq_GetCount() nicht
auf, dann wird kein Interrupt mehr ausgelöst. Ist aber nicht so wichtig. Einfach merken:
Am Ende des Interrupts Irq_GetCount() aufrufen, sonst gibts wahrscheinlich Probleme.

Gruss Peter
 


    Antwort schreiben


Antworten:

Re: Funktion: Irq_GetCount(byte irqnr) (von Josef - 19.08.2009 17:47)