Hallo, Ich komme seit 3 Wochen mit dem folgenden Problem nicht weiter: Ich habe ein Sensor (S),ein PC und ein programmierbares Gerät(G). Die 3 sind kommuniziert über eine RS485 Schnittstelle. Wobei dienst der PC nur als Überwachung er empfängt alle Daten die auf dem Bus fließen. Befehle werden von der (G) zum Sensor gut gesendet. Der Sensor antwortet auch korrekt. Leider erkennt das Gerät abwechselnd entweder die erste 12 Byte oder maximal die erste 24 Byte der Antwort des Sensor. Obwohl mehr als 5000 Byte als Antwort gesendet werden(Dies kann ich auf dem PC sehen). Allerdings wenn ich die 5000 Bytes von der PC sendet ließt das Gerät aller 5000Bytes. Wenn der Sensor kleinere Antwort sendet, z.B. eine 50 Bytes Große, erkennt das Gerät alle 50 Byte. Bei deutliche Große antwort (mehr als 1000 Byte) erkennt er nur die erste Byte. Meine Frage: Woran kann das liegen? Hab mir die Antwort des Sensors mit einem Oszilloskop angeschaut, und es passt mit der eingestellten Konfiguration. Baudrate: 115,2K Parität: Gerade Stopbit: 1 Kann Mir Bitte jemand dabei helfen. Ich stehe seit Wochen wirklich fest!! Ich bedanke mich sehr im Voraus. Lg
Liegt wahrscheinlich am Widerstand R1234 in Zusammenhang mit C4711 oder am Code des Steuerprozessors in Zeile 13! Wie du aus meiner Antwort entnehmen kannst, braucht meine Glaskugel noch ein paar Daten, damit sie ein Ergebnis ausspuckt.
Helmut -. schrieb: > Liegt wahrscheinlich am Widerstand R1234 in Zusammenhang mit C4711 oder > am Code des Steuerprozessors in Zeile 13! > > Wie du aus meiner Antwort entnehmen kannst, braucht meine Glaskugel noch > ein paar Daten, damit sie ein Ergebnis ausspuckt. Danke für deine Antwort aber hab leider nicht verstanden. Wenn du mit R1324 der Abschlusswiederstand meinst der habe ich nach der folgende Schaltung aufgebaut https://www.mikrocontroller.net/articles/RS-485
Serge M. schrieb: > Wenn du mit R1324 der Abschlusswiederstand meinst [...] Nein, er meinte einfach, dass Deine Informationen sehr wenig sind. R1234: Fehlendes Schaltbild Zeile 13: Fehlender Programm-Code
Sabberlotte schrieb: > Ich vermute das von (G) die Baudrate nicht korrekt eingehalten wird Bei zu großen Abweichungen der Baudrate werden die letzten Bits falsch erkannt. Da bei jedem Startbit neu synchronisiert wird, dürften davon nicht die Folgebytes betroffen sein. Das sieht IMHO eher so aus, als ob der Empfänger mit der Verarbeitung nicht nachkommt. Was passiert, wenn man die Baudrate verringert?
Vermutlich ist dein 'programmierbares Gerät', also (G), nicht in der Lage, die lange Antwort des Sensors zu verarbeiten, weil * der serielle Buffer überläuft * der Empfang und die Parityprüfung nicht hinterherkommt * eine andere Routine im 'Programmierbaren Gerät' dazwischen funkt und was anderes tun will So wird das aber nix. Wie alle anderen schon gesagt haben, reichen die Infos einfach nicht aus, um da sinnvoll zu helfen.
Serge M. schrieb: > Ich habe ein Sensor (S),ein PC und ein programmierbares Gerät(G). Die 3 > sind kommuniziert über eine RS485 Schnittstelle. Was ist ein programmierbares Gerat(G) ? > Wenn der Sensor kleinere Antwort sendet, z.B. eine 50 Bytes Große, > erkennt das Gerät alle 50 Byte. > sehen). Allerdings wenn ich die 5000 Bytes von der PC sendet ließt das > Gerät aller 5000Bytes. Dann liegt es am Sensor. > Baudrate: 115,2K Geht das auch langsamer ?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.