Gast
#40802
hallo
ich habe mir das buch c für mikrocontroller ausgeliehen und bin auf ff.
quelltext gestoßen, den ich mir nicht erklären kann. der autor
verwendet einen 4Mhz-AVR. und nun der quellcode in c:
void delay(unsigned int time_us)
{
time_us/=17;
time_us*10;
while(--time_us);
}
time_us soll als zeit in us der funktion übergeben werden.
nun meine frage: wieso wird zurerst durch 1,7 geteilt? hat das
irgendwie mit der zeitumrechnung zu tun?
kann man nicht einfach sagen, dass bei einem 4Mhz-quarz, eine periode
2,5*10^-7 us dauert und dann die gewünschte zeit (in mikrosekunden)
durch 2,5*10^-7 us dividiert und dann erhält man die anzahl der takte,
die der controller warten muss?
danke pierre