delay_ms() wird kaputtoptimiert

Programmierung und Hardwaredesign mit Arduino, AVR, PIC und Konsorten.

Moderatoren: MaxZ, ebastler, SeriousD

Antworten

Thread-Ersteller
Millimeter
Beiträge: 16
Registriert: Mo 11. Apr 2011, 22:42
Schule/Uni/Arbeit: Uni Stuttgart Elektrotechnik

delay_ms() wird kaputtoptimiert

Beitrag von Millimeter »

Hallo zusammen
Ich hab mir gerade in der Hoffnung endlich mal wieder mit einer richtigen IDE arbeiten zu könne Code::Blocks geholt und stehe nun vor einem Problem.
Ich habe ein kleines Hello-World Programm geschrieben um die IDE zu testen

Code: Alles auswählen

#include <avr/io.h>
#include <util/delay.h>

int main(void){
  DDRD=0xFF;

    while(1){
      PORTB=0;
      _delay_ms(500);
      PORTB=0xFF;
      _delay_ms(500);
    }
}
Merkwürdigerweise ist es völlig egal was ich in den delays als Verzögerung eingebe. Die LEDs blinken immer mit ca. 5Hz.
Außer ich schalte die Optimierung (-Os) im Compiler ab. Dann stimmt plötzlich das delay aber das ganze Programm ist nun mal viel zu groß. Irgendeine Idee woran das liegen könnte?
Grüße
ein völlig verwirrter Millimeter
Benutzeravatar

gamerpaddy
Beiträge: 2743
Registriert: Mo 13. Aug 2012, 09:03
Spezialgebiet: Spezialgebiet
Schule/Uni/Arbeit: Schule/Uni/Arbeit
Wohnort: Mannheim
Hat sich bedankt: 38 Mal
Danksagung erhalten: 329 Mal
Kontaktdaten:

Re: delay_ms() wird kaputtoptimiert

Beitrag von gamerpaddy »

:wurst:

Thread-Ersteller
Millimeter
Beiträge: 16
Registriert: Mo 11. Apr 2011, 22:42
Schule/Uni/Arbeit: Uni Stuttgart Elektrotechnik

Re: delay_ms() wird kaputtoptimiert

Beitrag von Millimeter »

Danke. Das war nur leider nicht der Fehler.
Ich habe aber selbst noch eine Lösung gefunden: http://www.avrfreaks.net/forum/confusin ... ayh-solved
Antworten