' schrieb:gibt es denn vielleicht einschränkungen bei der baudrate zur übertragung über rs-485?
Nein, es gibt keine Einschränkungen hinsichtlich der Baudrate.
Zitat:ist denn das programm wenigstens soweit richtig?
Soweit würde ich prinzipiell sagen: ja. Was immer nichts schadet: Eine Zeitverzögerung zwischen Senden von Daten und Erwarten einer Antwort. Bei ein Zeichen Senden und fünf Zeichen Empfangen bei ca. 20kB würde ich mal 25ms warten.
Ist denn das Senden alleine der "2" ausreichend oder muss da nicht vielleicht ein abschließendes Zeichen (z.B. CRLF) folgen?
Was auf jeden Fall und wenn nur zur Verifizierung sehr gut ist, ist das Nachmessen der Pegel auf der Leitung mittels eines Oszilloskopes. Ca. 20kB entsprechen zwischen 45 und 50µs.
Außerdem: Hast du eine echte RS485, also eine Zweidraht-Verbindung, bei der sowohl auf dieser einen Leitung gesendet wie empfaneg wird? Oder hat du eine RS422, also eine Vierdraht-Verbindung. Hier gibt es für den Sende- wie für den Empfangskanal entsprechende Leitungen. Bei einer "echten" RS485 musst du verifizieren, ob der Konverter nicht möglicherweise eine Handshakeleitung zum Umschalten der logischen Kanäle braucht. Manchen Konvertern kann man nämlich sagen, sie sollen den Empfang, der grundsätzlich auch beim Senden auftritt (eine Leitung!) unterbinden. Dafür muss man den Empfang dann halt explizit freigeben.