Hallo
Ich habe folgendes Konstrukt: atmega128L, betrieben mit 3V3 über Regler aus 4.2V LiPo, ermöglicht via Software-UART an FTDI auf Konsole eine Textausgabe.
Die Fuses http://www.engbedded.com/fusecalc/ sind wie folgt gesetzt: BODEN füer Burnout 2.7V, SUT0, CKSEL3 = ext. Oszi 3MHz - 8MHz [Anm.: mit genau diese Einstellung werkelt eine andere Platine in sehr ähnlicher Systemfunktionalität wie erwartet korrekt].
Jetzt wirds merkwürdig:
ab dem Zeitpunkt, wo ich von internen Oszi (4MHz, CKSEL2) auf den externen "umfuse" wird die Frequenz (mit dem Scope ams Outpin des Qarzsoszi gemessen) von 3.686 MHz auf das genau doppelte = 7.3728 MHz verdoppelt. VERDOPPELT !
Ganz sicher? - JA !
Denn wenn ich jetzt diese Frequenz im Makefile für F_CPU eingebe und kommen Textdaten über eine Software-UART mir brav mit 9600 Baud raus..
.. wenn ich im Makefile die eigentlichen 3.6864 MHz einstelle - die auf dem Quarzoszi draufsteht - kommt auf der Software-UART die doppelte Baudrate raus.
Ganz sicher? - JA !
Was passiert hier - hat dafür jemand eine Erklärung?
Ist der Oszi wohl eine 5V type der keine 3V3 abkann ... oder hat der uC eine Macke ... die Platine gibts 2 mal, beide mit gleichem Dämon.
Das mit dem Oszi versuche ich heute am Tage rauszubekommen.
Meine Firmware läuft auf 3 anderen ähnlichen System einwandfrei, nur das neue Board will wie oben beschrieben, nicht so, wie es soll. Daß habe ich noch nie erlebt...
Wortlos,
Vajk
Lesezeichen