Die Berechnung des UBRR-Wertes ist fehlerhaft wegen eines fehlenden "UL".
Die Berechnung des UBRR-Wertes ist fehlerhaft wegen eines fehlenden "UL".
MfG
Stefan
Hallo
Also die Fuses sind so gesetzt:
Hoffe das ist rchtigCode:BODLEVEL = 1V8 RSTDISBL = [ ] DWEN = [ ] SPIEN = [X] WDTON = [ ] EESAVE = [X] BOOTSZ = 256W_3F00 BOOTRST = [X] CKDIV8 = [ ] CKOUT = [ ] SUT_CKSEL = INTRCOSC_8MHZ_6CK_14CK_65MS EXTENDED = 0xFE (valid) HIGH = 0xD6 (valid) LOW = 0xE2 (valid)
Ich hab jetzt nach der Frequenz "UL" geschrieben - doch dann sendet er gar nichts mehr
Muss ich dann noch die Berechnung ändern oder so etwas?
Wenn ich das aber so schreibe gehts nicht
Nichts mehr vom Modul, egal wo ich es hinschreibe...
__________________________________________________ __________________________________________________ __________Code:#define F_CPU 8000000 #define BAUD 19200UL // Baudrate
Edit:
Ich habs
Das Problem war das der Compiler das UL falsch interpretiert hat, ich habs jetzt mit der langen Version der expliziten Datentypkonvertierung aausgetauscht und siehe da, es funktioniert
danke für die HilfeCode:#define F_CPU 8000000 #define BAUD (unsigned long)19200 // Baudrate
Jetzt gehts mal ans Daten empfangen und dann an die Steuerung
Geändert von robo_tom_24 (22.05.2012 um 20:37 Uhr)
Prima. Aber falls du noch keinen Quarz gesetzt hast, würde ich auf jeden Fall einen Empfehlen. Spätestens wenn sich die Temperatur wieder ändert wirst du irgendwann Probleme bekommen, da die Baudrate mit dem interenen Oszilator nicht stabil genug ist.
Viele Grüße
Andreas
Wie gesagt, wird nicht all zu leicht werden, da das eine fertige Platine ist, und ich erst den Anschluss herausführen muss.
Kann ich eigentlich den Oszillator im Programm kalibrieren? Sozusagen ich messe mit einem KTY81 oä. die Temperatur und je nachdem ändere ich etwas?
Lesezeichen