Mandi Nice
12.03.2007, 16:08
Hallöchen
Ich brauche beim AVR alle Pins. Daher habe ich auch die XTAL-Pins verwendet.
Da der interne RC Oszilator nicht sehr temperaturstabil ist, ergeben sich bei Temperaturänderungen Probleme mit der Baudrate der RS232.
Um das Problem zu lösen möchte ich eine Art "autotune" für das OSCCAL erstellen.
Ginge ja bei meiner Anwendung ganz einfach :
Ein PC fragt vom AVR 5*pro Sekunde Werte ab.
Wenn der PC die Werte die ich sende empfängt sendet er eine Bestätigung zurück.
Wenn ich diese Bestätigung nicht mehr erhalte erhöhe ich den Wert des OSCAL-Registers um eins , aber maximal bis + 8, dann fange ich mit Werte von -7 wieder von unten an.
Irgendwann , nach spätestens 2 Sekunden fängt er sich dann wieder bei einem Wert bei dem die Baudrate wieder in er Toleranz ist.
Bei meiner Anwendung ist es zum Glück egal wenn mal einige Werte nicht richtig übertragen werden !
Ein kleines Testprogramm läuft nun schon ganz gut.
Ich sehe am Oszi wenn das Timing rauswandert und nach dem Abgleich des OSCCAL wieder in Zeitfenster reinkommt.
Nun meine Frage :
Spricht was gegen diese Lösung ?
Oder hat jemand eine bessere Idee ?
Bin für jede Anregung dankbar.
hmg
Mandi
Ich brauche beim AVR alle Pins. Daher habe ich auch die XTAL-Pins verwendet.
Da der interne RC Oszilator nicht sehr temperaturstabil ist, ergeben sich bei Temperaturänderungen Probleme mit der Baudrate der RS232.
Um das Problem zu lösen möchte ich eine Art "autotune" für das OSCCAL erstellen.
Ginge ja bei meiner Anwendung ganz einfach :
Ein PC fragt vom AVR 5*pro Sekunde Werte ab.
Wenn der PC die Werte die ich sende empfängt sendet er eine Bestätigung zurück.
Wenn ich diese Bestätigung nicht mehr erhalte erhöhe ich den Wert des OSCAL-Registers um eins , aber maximal bis + 8, dann fange ich mit Werte von -7 wieder von unten an.
Irgendwann , nach spätestens 2 Sekunden fängt er sich dann wieder bei einem Wert bei dem die Baudrate wieder in er Toleranz ist.
Bei meiner Anwendung ist es zum Glück egal wenn mal einige Werte nicht richtig übertragen werden !
Ein kleines Testprogramm läuft nun schon ganz gut.
Ich sehe am Oszi wenn das Timing rauswandert und nach dem Abgleich des OSCCAL wieder in Zeitfenster reinkommt.
Nun meine Frage :
Spricht was gegen diese Lösung ?
Oder hat jemand eine bessere Idee ?
Bin für jede Anregung dankbar.
hmg
Mandi