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