nun komm ich mal wieder mit meiner RS485. Ich hatte vor langer Zeit schon mal nachgefragt, da gab es jedoch keine Antwort.
Nun habe ich mich selber mal an das Problem gemacht. Herausgekommen ist folgende Funktion:
Code: Alles auswählen
void usart_write_rs485(char *text)
{
//Busrichtung auf senden
PORTD |= (1<<PD2);
//String senden
//usart_write(*text);
usart_write("%s\r\n", text);
//Kurz warten
for(int i=0; i<1000; i++);
//Pin löschen -> Busrichtung lesen
PORTD &= ~(1<<PD2);
}
Füge ich zwei mal '\r\n' ein, dann wird auch endlich ein Zeilenumbruch gesendet.
Was macht ich falsch? Kann mir jemand das Verhalten erklären?
Sorry ich bin in C noch nicht sehr weit, komme aus der Basic (Bascom) Welt.
Gruß Jonas