Hi zusammen,

folgendes Problem, wie Ihr aus dem Titel schon entnehmen könnt, versuche ich Daten über eine RS485 zu Senden ohne die Automatische Sende und Empfangsumschaltung aber dafür mit Ausgangspuffer zu realisieren.

Ich habe es auf folgendem Weg versucht:

Code:
Do
  ' Prüfen ob der Ausgangspuffer leer ist
   If _rs_bufcountw1 = 0 Then
      Waitus 500
      Rs485dir1 = 0                                         ' Auf Empfangsmodus schalten
   End If

   ' Alle Daten empfangen
   If _rs_bufcountr1 >= 17 Then

                             Rs485dir1 = 1                  ' Auf Sendemodus schalten

                             Waitus 500

                             ' Sende 17 Bytes aus dem Bytearray ab Position 1
                             Printbin #1 , S_bus_sendearray(1) , 17 ;
    End If
Loop
Nur ist es so, das ich nicht immer alle Daten sauber zurück bekomme. Jetzt meine Frage:
Kann es sein das meine Wartezeiten vor bzw. nach dem Umschalten der Senderichtung zu kurz sind? Wie lang müssen die Wartezeiten denn Sein?
Gibt es denn nicht ein Interrupt, welches ausgelöst wird, wenn der Sendepuffer leer ist?
Oder gibt es einen anderen Weg das Problem zu lösen bzw. abzufragen ob alle Daten gesendet wurden?
Wie würdet / habt Ihr das Problem gelöst?

Vielen Dank schon mal.