Nein, RXEN wird nicht einfach gesetzt, das Register wird neu beschrieben und NUR RXEN dabei gesetzt. (da steht = und nicht |= ...)
Die ASURO-Routinen sind nicht auf Duplex-Betrieb ausgelegt, entweder sie senden oder sie Empfangen und nehmen daher keine Rücksicht aufeinander. gleichzeitiges Senden und Empfangen ist nicht vorgesehen!
Wenn das Empfangen nicht klappt, stimmt entweder die Verdrahtung nicht, die eingestellte Baudrate, der Takt des AVRs ist zu ungenau oder du hast tatsächlich den Pin gegrillt.
Äh moment, WAIT: Du setzt RXEN jetzt gar nicht? Dann funktioniert das natürlich auch nicht ... du musst UCSRB |= (1 << RXEN); machen!
mfG
Markus
Lesezeichen