Hallo!
Seit gestern suche ich nun nach einem Fehler, warum mein HD44780-Display
nicht initialisiert, obwohl es dieses in einer anderen Schaltung mit
der, bis auf die Pinkonfiguration, identischen Software tut. Nun stellte
ich soeben fest, dass was mit dem Timing nicht stimmt. Folgender Code:
1 | while(1) { for (i=0; i<50; i++) _delay_ms(20); usw; }
|
Sollte eine LED an- und ausschalten und ich erwarte ein T_On von 1s und
ein T_Off von 1s, da 50*20ms=1s (In usw; steckt natürlich LED an,
gleiche Wartezeit und LED aus). Ich erhalte aber 10s.
Verbaut ist ein 10MHz Quarz an einem Mega644V und unter
Projekteinstellungen habe ich auch 10000000 Hz angegeben. Eine
Redefinition von F_CPU bringt nur eine Warnung, ändern tut sich nix.
Was habe ich denn verpennt? Ich denke mal, dass ich damit endlich den
Grund gefunden habe, warum das Display nicht läuft. Das Timing der
Init-Sequenz soll ja kritisch sein.
Grüße!