Delay Schleife im AVR Studio

Gast #1131196
Lesenswert?
• ▲
▼
Kennt jemand eine Delay Schleifen Routine die nicht so eingeschränkt ist 
wie jene im AVR Studio? Denn die geht ja nur bis maximal 262.18ms (oder 
so) durch die F_CPU in MHz also bei meine 8MHz nur bis 32ms.. und ich 
brauche in meinem Programm Delay Schleifen von 200us (_delay_us) bis 
hinauf auf 2 sec.. kennt jemand so etwas was große Bereiche abdeckt? mfg
Gast #1131207
Lesenswert?
• ▲
▼
ja ich meinte die beiden _delay_us und _delay_ms (#include 
<util/delay.h>)

 doch hier hab ich bei der 2 Sekunden Delay Schleife das Problem, dass 
ich eine for-Schleife mit ca. 63 _delay_ms(255) machen müsste da diese 
ja bei 8Mhz bis maximal 32ms läuft
Gast #1131219
Lesenswert?
• ▲
▼
/**
   \ingroup util_delay

   Perform a delay of \c __ms milliseconds, using _delay_loop_2().

   The macro F_CPU is supposed to be defined to a
   constant defining the CPU clock frequency (in Hertz).

   The maximal possible delay is 262.14 ms / F_CPU in MHz.
 */
void
_delay_ms(double __ms)
{


also vll überseh ich da ja was aber für mich sieht das ganz so aus :S
Gast #1131221
Lesenswert?
• ▲
▼
1
/**
2
   \ingroup util_delay
3

4
   Perform a delay of \c __us microseconds, using _delay_loop_1().
5

6
   The macro F_CPU is supposed to be defined to a
7
   constant defining the CPU clock frequency (in Hertz).
8

9
   The maximal possible delay is 768 us / F_CPU in MHz.
10

11
   If the user requests a delay greater than the maximal possible one,
12
   _delay_us() will automatically call _delay_ms() instead.  The user
13
   will not be informed about this case.
14
 */

Ich würd dann mal die C-Bibliothek aktualisieren.
Gast #1131238
Lesenswert?
• ▲
▼
> doch hier hab ich bei der 2 Sekunden Delay Schleife das Problem,

Ist das Dein Ernst?
Du willst den AVR wirklich 2 Sekunden lang Takte zählen lassen?

Ist Dir eigentlich bewusst, dass Du beim Kauf von AVRs dessen Timer 
mitbezahlt hast? Delays für einige zehn bis hundert Mikrosekunden sind 
ja ok, aber ab Millisekunden nutzt man besser einen der vorhandenen 
Timer.

...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren