Forum: Mikrocontroller und Digitale Elektronik Timingproblem: delay_ms zu langsam!


von Meebl (Gast)


Lesenswert?

Hallo!
Ich habe hier einen Tiny2313. Daran ein 8Mhz Quarz.

Die Fuse habe ich in AVR Studio so eingestellt:
"Ext Crystal Oscillator 3-8 MHz ..."

Auch in den Compileroptionen habe ich die Einstellung "Frequency" auf 
"8000000" gesetzt.


Wenn ich nun den Befehl "_delay_ms(100);" benutze, wartet das Programm 
aber fast 10x so lange! (ca. 1 Sekunde). Wie kann das sein?
Hab ich noch was vergessen???

Danke!

von Εrnst B. (ernst)


Lesenswert?

Meebl schrieb:
> Hab ich noch was vergessen???

Ja, Die Compiler-Warnings zu lesen, und danach zu handeln...

_delay_ms braucht die Compiler-Optimierung.

Also "-Wall  -Os" in die GCC-Flags und die Sache sollte passen.

von Meebl (Gast)


Lesenswert?

"Build succeeded with 0 Warnings..."  ;-)

von spess53 (Gast)


Lesenswert?

Hi

CKDIV8-Fuse gesetzt?

MfG Spess

von Meebl (Gast)


Lesenswert?

Delay us hat übrigens das gleiche Problem...

von Meebl (Gast)


Lesenswert?

Ah, die war mir bisher unbekannt: "CKDIV8-Fuse gesetzt?"
Danke :-)

von spess53 (Gast)


Lesenswert?

Hi

>Ah, die war mir bisher unbekannt: "CKDIV8-Fuse gesetzt?"

Etwa genauso beliebt wie die JTAG-Fuse.

MfG Spess

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.