Forum: Compiler & IDEs _delay_ms() und _delay_us() gibt es da noch wertbeschränkungen?


von roboter (Gast)


Lesenswert?

Hallo, guten tag.

_delay_ms() und _delay_us() gibt es da noch wertbeschränkungen nach 
oben?
ich habe das winavr von 2010.

gruss

von Falk B. (falk)


Lesenswert?


von Jannis C. (kabelwurm)


Lesenswert?

Hallo,
Ja es gibt diese Wertbeschränkungen. Für genauere Informationen würde 
ich dir raten einfach einmal nach zu lesen
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Warteschleifen_.28delay.h.29
Viel Erfolg.
Gruß Jannis

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Angehängte Dateien:

Lesenswert?

roboter schrieb:
> _delay_ms() und _delay_us() gibt es da noch wertbeschränkungen nach
> oben?

Jein.  _delay_us() fällt auf _delay_ms() zurück, wenn der Wert zu
groß ist.  _delay_ms() wiederum fällt auf eine Schleife zurück,
die _delay_ms() Nmal aufruft in 10-ms-Schritten.

> ich habe das winavr von 2010.

Denk dran, dass das einen Bug hat.  Als Referenz hier die aktuelle
Version, die kannst du einfach so, mir nichts, dir nichts, über die
von WinAVR installierte util/delay.h drüber spammen.

von Martin T. (mthomas) (Moderator) Benutzerseite


Lesenswert?

>> ich habe das winavr von 2010.
>
> Denk dran, dass das einen Bug hat.

Wirklich? Schon in delay.h aus der avr-libc, wie bei WinAVR 20100110 
mitgeliefert? Soweit erinnert, ist der Fehler doch erst beim 
WinAVR-Nachfolger "avr8bit tool-chain" erstmals aufgetreten.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Martin Thomas schrieb:
> Soweit erinnert, ist der Fehler doch erst beim
> WinAVR-Nachfolger "avr8bit tool-chain" erstmals aufgetreten.

Stimmt, hast Recht.

von Peter (Gast)


Lesenswert?

>Denk dran, dass das einen Bug hat

Was für einen Bug? Gibt es da einen link zum Thema?

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?


von Helfer (Gast)


Lesenswert?

> Was für einen Bug? Gibt es da einen link zum Thema?

http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Warteschleifen_.28delay.h.29

[zitat]
Die _delay_ms() und die _delay_us aus avr-libc 1.7.0 sind fehlerhaft. 
_delay_ms () läuft 4x schneller als erwartet. Abhilfe ist eine 
korrigierte Includedatei: 
Beitrag "Re: _delay_ms() läuft 4 Mal schneller als erwartet"
[/zitat]

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.