Nein ich meine eher das:
Code:
void Msleep(int dauer)
{
int z;
for(z=0;z<dauer;z++) Sleep(72);
}
darin wird die Funktion Sleep aufgerufen :
Code:
/* uses 72kHz timer => Sleep(x) = x/72kHz [sec] */
void Sleep(unsigned char time72kHz)
{ unsigned char ziel=(time72kHz+count72kHz) & 0x00FF;
while (count72kHz != ziel);
}
cout72kHz wird in der ISR inkrementiert :
Code:
SIGNAL (SIG_OUTPUT_COMPARE2)
{
count72kHz ++;
if (!count72kHz) timebase ++;
}
Ich hab heute keine Lust mehr das weiter zu verfolgen, vielleicht kannst Du hier Antworten darauf finden warum es mit 2 geht und 600 nicht...
Gruß Sebastian
Lesezeichen