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

Re: Interrupt-Problem Kategorie: Programmierung C (von mgolbs - 31.10.2009 13:55)
Als Antwort auf Re: Interrupt-Problem von Martin - 13.02.2009 19:25
Ich nutze:
C-Control Pro Mega32, C-Control Pro Mega128, Pro-Bot128
> > > Hallo zusammen,
> > >
> > > ich bin ein ziemlicher Anfänger in der Programmierung und stehe gerade vor einem Problem.
> > >
> > > Ich wollte mir mit dem T0-Timer von der MEGA32einen bestimmten Takt erzeugen,
> > > der Interrupt löst aber immer nach der gleichen Zeit aus.
> > > Ich meine, es ist egal mit welchem Wert ich den Timer starte, die Zeit bis zum Interrupt ändert sich nicht.
> > > Hier mal mein Code:
> > >
> > > int a;
> > > void ISR(void){
> > >     if (a==0) a=1;
> > >     else a=0;
> > >     Port_WriteBit(23,a);
> > >     Irq_GetCount(INT_TIM0COMP);
> > > }
> > >
> > > void main(void){
> > >     a=0;
> > >     Port_DataDirBit(23,1);
> > >     Irq_SetVect(INT_TIM0COMP,ISR);
> > >     Timer_T0Time(100,PS0_64);                     ***
> > >     do{}while(1);
> > > }
> > >
> > > *** hier kann ich irgendwelche Werte für "Time" reinschreiben, den Interrupt interessiert
> > > das nicht.
> > > Bei einem Vorteiler von 64 hat eine Periode ca. 2,2ms, egal mit welchem Time-Wert.
> > >
> > > Was mache ich falsch???
> >
> > Garnichts, auÃ?er zu erwarten, das ein Interpreter so schnell wie ein Compiler arbeitet. Bei dem Vorteiler
> > wird ein Interrupt ca. alle 434µ ausgelöst, das schafft der Interpreter nicht.
> >
> > Gruss Peter
> >
> > >
> > > Danke
> > > Martin
>
> Danke für die schnelle Antwort.
> Wenn das so ist, muss ich mir was anderes einfallen lassen.
>
> Bis zum nächsten mal
> GruÃ? Martin

Hallo,

welches Zeitfenster für obriges Programm wäre vorstellbar, wenn "..Bei dem Vorteiler
wird ein Interrupt ca. alle 434µ ausgelöst, das schafft der Interpreter nicht" - die
gemessensen 2,2ms?

GruÃ? Markus


    Antwort schreiben


Antworten: