Zerberus wrote:
> Hallo zusammen, ich möchte gerne bei meinem AT90CAN128 die UART
> Übertragungsgeschwindigkeit des UART1 auf 19,2k einstellen. Als Clock
> verwende ich einen externen 8Mhz Quarz.
> So wie ich das Datenblatt verstehe muss ich folgendes eingeben,
>
> UBRR1L = 25; // 25 ( dezimal ) ergibt 19,2k bei 8Mhz Clocktakt
>
> Sehe ich das richig? Kommen nämlich nur Hyroglyfen an oder bin ich zu
> doof um die Tabelle im Datenblatt zu kapieren..... :-(
die einfachste Variante ist es, nicht in der Tabelle nachzusehen,
sondern den Compiler die notwendigen Berechnungen anstellen zu
lassen.
Sieh dir hier mal das Makro UBRR_VAL an
http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#UART_initialisieren
PS: Der heäufigste Fehler, wenn eine UART nicht funktioniert
ist es, wenn dein µC nicht auf der Taktfrequenz läuft, die du
angibst. D.h. zb. du gibst zwar 8Mhz im Programm an und hast
auch einen Quarz dranhängen. Allerdings hast du vergessen, die
Fuses umzustellen und daher arbeitet der µC immer noch auf
dem internen RC-Oszillator auf ca. 1Mhz