Ich glaub bei elkokiller ist da etwas verwirrt worden.
nicht der Max485 löst den Interrupt aus.
Der Max485 ist wie auch der Max232 nichts anderes als ein Schnittstellenbaustein, der für sich genommen dumm ist.
Der 485 bekommt durch Steuerleitung gesagt sende oder empfange,
beides gleichzeitig geht nicht, im Gegensatz zur RS232-Übertragung.
Man nennt sowas auch Halbduplexbetrieb.
Die rs485-Übertragung ist etwas knifflig insgesamt, es kommt sehr aufs Timing an. Die Datenrichtung wird ja wie beschrieben vom AVR bestimmt. Wichtig ist nun, das die Datenrichtung nicht von senden auf empfangen geschaltet wird während die UART noch Daten sendet. Du kannspert für die Ausgabe über UART den PRINT-Befehl benutzen oder auch einfach UDR=Byte setzen, aber, die Übertragung selbst läuft dann je nach Baudrate noch ne ganze Weile weiter, in welcher die 485 noch auf Senden stehen muß, damit die Daten ganz beim Empfänger ankommt. Dafür kannst Du den UTXC-Interrupt benutzen. Der wird ausgelöst wenn die Übertragung komplett ist.
Lesezeichen