Gast
#562391
Hallo !
Ich habe folgende Timer, der unter einem Linux BS läuft.
myTime.it_value.tv_sec = 0;
myTime.it_value.tv_usec = 100000; // 100ms
myTime.it_interval.tv_sec = 0;
myTime.it_interval.tv_usec = 100000; // 100ms
signal(SIGALRM, (void(*)(int)) handler);
setitimer(ITIMER_REAL, &myTime, NULL);
Dieser Timer soll alle 100ms ein Flag setzen.
void handler()
{ RX = 1; }
Mehr nicht !
Allerdings läuft der Timer relativ unruhig! Ich habe Abweichungen in
einem Bereich von bis zu 200ms.
Aber wie kann das ?!
Würde ich den Timer mit einer Zeit im Sekunden Bereich einstellen, dann
arbeit er fast genau, Toleranz +/-20ms !!
myTime.it_value.tv_sec = 1;
myTime.it_value.tv_usec = 0;
myTime.it_interval.tv_sec = 1;
myTime.it_interval.tv_usec = 0;
Kann mir jemand helfen?
Mfg Martin