Ok,
wer lesen kann ist im Vorteil:
Code:
#include <avr/io.h>
#define F_CPU 8000000
#define F_OSC 3686400 /* Oszillator-Frequenz in Hz */
#define UART_BAUD_RATE 9600
#define UART_BAUD_CALC(UART_BAUD_RATE,F_OSC) ((F_OSC)/((UART_BAUD_RATE)*16)-1)
typedef union {
uint16_t i16;
struct {
uint8_t i8l;
uint8_t i8h;
};
} convert16to8;
int main (void)
{
UCSRB=0x04;
convert16to8 baud;
baud.i16 = F_CPU / (UART_BAUD_RATE * 16L) -1;
UBRRH = baud.i8h;
UBRRL = baud.i8l;
//UBRRH=(uint8_t)(UART_BAUD_CALC(UART_BAUD_RATE,F_OSC)>>8);
//UBRRL=(uint8_t)UART_BAUD_CALC(UART_BAUD_RATE,F_OSC);
while (!(UCSRA & (1<<UDRE)));
UDR = 'x';
}
Sorry, ich war etwas voreilig beim posten.
Danke für alles!!!
Lesezeichen