Hi,
ich möchte über einen Digitus RS485 (70157) mit mehreren Arduinos
kommunizieren (China MAX485 breakout boards, Amazon). Empfangen am PC
funktioniert, ich bekomm aber einfach nichts gesendet.
Bild_1: Idle
Bild_2: Belegt von µC
Bild_3: µC -> PC
Bild_4_1: PC -> µC
Bild_4_2: PC -> µC
Bild_5: PC -> µC (trotz µC belegung)
Die re/de am µC stecke ich zum testen per hand auf VCC oder GND.
Als Widerstände hab ich:
A-VCC: 3,9k
A-B: 150
B-GND: 3,9k
hab's aber auch mal mit 680 und 120 versucht, sieht sehr ähnlich aus.
Hat jemand ne Idee warum der Stick nicht vernünftig auf Senden schaltet?
Hab ich ihn schon zerschossen? ;)
Grüße
Manuel
Manu schrieb:> Als Widerstände hab ich:> A-VCC: 3,9k> A-B: 150> B-GND: 3,9k>> hab's aber auch mal mit 680 und 120 versucht
Die MAX485 haben eine Hysterese von 0,2V. Mit 680-120-680 an 5V ergeben
sich 0,4V, da können die MAX485 wenigstens definiert Bus-Ruhe erkennen.
Ob das beim Digitus auch so ist, weiß ich nicht.
Versuch mal, den A-B Widerstand wegzulassen und probiere eine kurze
Strecke.
mfg mf
Manu schrieb:> Bild_1.jpg ... Bild_5.jpg
Früher (tm) hat man Screen Shots vom Oszi mit einer echten Kamera
gemacht, wenn man die Ergebnisse sofort brauchte - mit Polaroid.
Dann wurden DSOs entwickelt, die per Tastendruck den Bildschirminhalt
auf einem Speichermedium als Bilddatei ablegen konnten.
Jetzt geht anscheinend der Trend wieder zum Retro-Look, der die
digitalen Screen Shots, dank leistungsfähiger GHz-Prozessoren, virtual
Reality und Ray Tracing, wieder wie überbelichtete, unscharfe und von
Reflexen geplagte Bildschirmphotos der 990er Jahre des vorigen
Jahrtausends aussehen lässt.
Oder sollte das moderne Smart Phone Technik sein?
Icke ®. schrieb:> Mir erschließt sich nicht, wie man dort DE/RE von Hand auf irgenein> Potential legen soll.
Da in dem Ding ein FT232R verbaut ist, und der explizite
Hardwareunterstützung für den RS485-Betrieb enthält, muss man sich darum
auch nicht kümmern.
Solange keine Daten gesendet werden, ist der RS485-Treiber im
Empfangsbetrieb, nur während des Sendens von Daten wird er in den
Sendebetrieb umgeschaltet. Das geschieht mit einer separaten
Steuerleitung des FT232R - Beispielschaltungen dazu finden sich in
dessen Datenblatt.
Die PC-Software, die mit dem USB-RS845-Konverter arbeitet, muss sich
also nicht um die RS485-Spezialitäten kümmern, das macht der Konverter
automatisch selbst.
Das Senden/Enpfangen Umschalten geht natuerlich nicht von Hand,
Umstecken oder so, sondern mit RTS, oder DTR. Etwas anderes gibt es
nicht.
> Oder sollte das moderne Smart Phone Technik sein?
Na, den Blitz sollte man sich doch goennen...
Sapperlot W. schrieb:> Das Senden/Enpfangen Umschalten geht natuerlich nicht von Hand
Er sprach wohl von den angeschlossenen Controllern und deren
RS485-Treibern. Wobei sich mir nicht erschliesst, warum er den
USB-RS485-Konverter nicht einzeln testet.
> sondern mit RTS, oder DTR. Etwas anderes gibt es nicht.
Doch, die FT232-basierten Konverter machen das ganz ohne Hilfe.
> Mir erschließt sich nicht, wie man dort> DE/RE von Hand auf irgenein Potential legen soll. Mach eine Skizze von> der Schaltung. Und wie sendest du vom PC aus? Mit einem> Terminalprogramm?
DE/RE habe ich am Slave(µC) manipuliert.
https://www.amazon.de/MAX485-module-RS-485-TTL-MTS1EU/dp/B017A676EY
Terminal: Hterm
> Wobei sich mir nicht erschliesst, warum er den> USB-RS485-Konverter nicht einzeln testet.
Das ist die Blindheit die man nach ein paar Stunden Verzweifelter Suche
zu solcher Uhrzeit entwickelt. Hier jetzt nochmal der Digitus-Adapter
Only:
NewFile0: Nur A und B ohne externe Beschaltung
NewFile1: Nur 150 Ohm zwischen A und B
NewFile2: Mit 150 A-B und 3,9k Pull Up-Down
> Versuch mal, den A-B Widerstand wegzulassen und probiere eine kurze> Strecke.
NewFile3: Nur mit A-VCC, B-GND
> Die PC-Software, die mit dem USB-RS845-Konverter arbeitet, muss sich> also nicht um die RS485-Spezialitäten kümmern, das macht der Konverter> automatisch selbst.
So hab ich es nach etwas recherche ebenfalls verstanden. Dann ist ja gut
dass ich offensichtlich nichts im Treiber einzustellen hab.
Btw: schicke ich von einem Raspberry aus (über den Digitus) ist das
Verhalten genau gleich.
Anhand der hier noch nachgereichten Bilder würde ich persönlich
schlussfolgern dass der Stick wohl Fritte ist.
Manu schrieb:> Anhand der hier noch nachgereichten Bilder würde ich persönlich> schlussfolgern dass der Stick wohl Fritte ist.
Sehe ich auch so.
Genau diesen Adapter habe ich hier auch rumliegen und gerade mal ohne
weitere Beschaltung getestet, gemessen habe ich an "458+" (steht
wirklich so an der Klemme) gegen GND.
Tut das, was er soll, und sendet jeweils nach dem Einschalten des
Treibers 1 Bit-Zeit lang High-Pegel, nach dem Stopbit schaltet er sich
direkt ab.
Manu schrieb:> DE/RE habe ich am Slave(µC) manipuliert.
Gut, das "am µC" hatte ich überlesen.
> NewFile0: Nur A und B ohne externe Beschaltung> NewFile1: Nur 150 Ohm zwischen A und B> NewFile2: Mit 150 A-B und 3,9k Pull Up-Down
Terminierung und Vorspannung sind wichtig für die Stabilität des Busses,
besonders im Ruhezustand. Aber auch ohne müßte auf dem Bus zumindest
erkennbares Leben sein.
> dass der Stick wohl Fritte ist
Möglicherweise. RS485 ist eigentlich sehr robust, aber gerade beim
Messen mit schutzleiterverbundenen Geräten oder wenn die Teilnehmer mit
geerdeten Netzteilen versorgt werden, können sehr schnell
Gleichtaktspannungen auftreten, die die Maximum Ratings überschreiten.