Wieso stell ich damit 5 Bit ein?
Die Biteinstellung läuft ja über UCSZ*....
Ich hab die Einstellungn jetzt hoffentlich richtig geändert:
Aber es funktioniert noch immer nichtCode:void USART_Init( void ) { /* Set baud rate */ UBRR0H = UBRR_VAL >> 8; UBRR0L = UBRR_VAL & 0xFF; /* Alternativ: */ //UBRR0 = UBRR_VAL; /* Enable receiver and transmitter */ UCSR0B = 1<<RXEN0 | 1<<TXEN0; /* Set frame format: 8data, 1stop bit */ UCSR0C |= (1<<UCSZ00) | (1<<UCSZ01); // 8 Bit Daten und 1 Stopp Bit }
Anscheinend hängt der µC in der Initialisierung. Denn wenn ich alle Zeilen nacheinander auskommentiere funktioniert er erst wenn ich die Zeileweg lasse. Ich hab mir einen kleinen Versuchsaufbau gemacht: in der while Schleife lasse ich eine LED blinken. Ausser den Porteinstellungen, dem UART_Init und der Endlosschleife mit dem Blinken ist in meinem Programm nichts. Somit sehe ich wo er hängt und ob das Programm es bis zum Blinken schafftCode:/* Enable receiver and transmitter */ UCSR0B = 1<<RXEN0 | 1<<TXEN0;
Doch wo könnte da der Fehler liegen?







Zitieren


Lesezeichen