Hi,
ich wollt mal fragen, ob während einem delay aus der <util/delay.h> datei auch ein Interrupt stattfinden kann? Also das während der Zeit, zb 1000ms, weiterhin die Interruptroutinen ausgeführt werden...
gruß, homedom
Hi,
ich wollt mal fragen, ob während einem delay aus der <util/delay.h> datei auch ein Interrupt stattfinden kann? Also das während der Zeit, zb 1000ms, weiterhin die Interruptroutinen ausgeführt werden...
gruß, homedom
Normalerweisen sollte der Interrrupt möglich sein, wenn man ihn nicht expliziet abgestellt hat. Die Interrupts werden aber die Zeit verlängern.
Hallo,
selber benutze ich delay kaum. War da nicht eine Begrenzung? Da kannst du nicht einfach 1000ms eingeben. Das steht aber im Header.
Ansonsten hat Besserwessi ja deine Frage schon beantwortet.
Gruß
Jens
....Die Wartezeit der Funktion _delay_ms() ist auf 262,14ms/F_CPU (in MHz) begrenzt, d.h. bei 20 MHz kann man nur max. 13,1ms warten. Die Wartezeit der Funktion _delay_us() ist auf 768us/F_CPU (in MHz) begrenzt, d.h. bei 20 MHz kann man nur max. 38,4us warten. Längere Wartezeiten müssen dann über einen mehrfachen Aufruf in einer Schleife gelöst werden....
seit aehm? avrlibc 1.6? gilt zusaetzlich:Zitat von sechsrad
Die Wartezeit der Funktion _delay_us() ist auf 768us/F_CPU (in MHz) begrenzt, d.h. bei 20 MHz kann man nur max. 38,4us warten. Längere Wartezeiten müssen dann über einen mehrfachen Aufruf in einer Schleife gelöst werden....[/quote]When the user request delay which exceed the maximum possible one, _delay_ms() provides a decreased resolution functionality. In this mode _delay_ms() will work with a resolution of 1/10 ms, providing delays up to 6.5535 seconds (independent from CPU frequency). The user will not be informed about decreased resolution.
und
If the user requests a delay greater than the maximal possible one, _delay_us() will automatically call _delay_ms() instead. The user will not be informed about this case.
Lesezeichen