Hallo, Ich benutze eine Sipeed Combo 8 als logic analyser, um auf rs485 zu sniffen. Denke aber, die Frage betrifft alle preiswerten Logic Analyswer. Jedenfalls ist das mein Wunsch. Dazu habe ich ein Verständniss-Problem: Die Signale a und B sind doch Differenz-Signale. Wie soll ich die in Pulseview parametrieren ? Ich habe testweise D1 und D2 genommen, oder auch nur 1 Signal ( Ich weiss, ist eine Krücke!!) Komme aber auf keinen sinnvollen Sniffer-Inhalt. Wie parametriert man die beiden Signale zu einem Differenz-Signal ? Geht das überhaupt ? Oder braucht mal einen rs485 - TTL Wandler dazu ? Ich bin doch nicht der Erste, der vor dem Problem steht ..... Hat jemand einen Hinweis ? Vielen Dank
Abtasten und subtrahieren. Macht aber bei vielen LAs keinen Sinn weil
die nur 1 oder 0 können und die Schwelle dafür fest im Gerät eingestellt
ist.
Also dann extern einen Komparator hinsetzen der erkennt ob der eine Pin
> als der andere oder umgekehrt.
Josef R. schrieb: > Die Signale a und B sind doch Differenz-Signale. > Wie soll ich die in Pulseview parametrieren ? Sie sind vor allem kein TTL, was dein Logicanalyzer aber vermutlich erwartet. Also physikalisch garnicht. Josef R. schrieb: > Oder braucht mal einen rs485 - TTL Wandler dazu ? Genau so. Da du sowieso mindestens 2 Teilnehmer haben wirst entweder hinter einem Treiber von denen oder halt mit einem eigenen Treiber. TX deaktivieren! Edit: Dein Logicanalyzer erwartet
1 | Signal Input Range 0~3.6V |
Rs485 ist definiert mit
1 | mindestens ±1,5 V, höchstens ±6 V |
Im Idealfall erkennt er also die Pegel nicht richtig. Worst Case geht er dabei Hops.
:
Bearbeitet durch User
Josef R. schrieb: > Die Signale a und B sind doch Differenz-Signale. > Wie soll ich die in Pulseview parametrieren ? Miss mit einem Oszilloskop die tatsächlichen Pegel auf diesen Leitungen. Wenn die Pegel dort zu den Schaltschwellen des Logicanalyzers passen, dann reicht es aus, dort entweder A oder B einzulesen. Denn jede der beiden Leitungen trägt das Protokoll mit sich. Eine davon ist halt invertiert. Und du musst zum Decodieren idR. die Leitung nehmen, die im Ruhezustand high ist. > Wie parametriert man die beiden Signale zu einem Differenz-Signal ? Muss man eigentlich nicht. > Geht das überhaupt ? Das kommt auf die Möglichekteiten des LA drauf an. Wenn der programmierbare Schaltschwellen hat, geht das problemlos. Aber leider haben die billigen 8-Ch-LA sowas nicht. > Oder braucht mal einen rs485 - TTL Wandler dazu ? Das wäre sicher die technisch korrekte Lösung hier. BTW und nur aus Interesse: wo lernt man denn diese Plenkerei mit dem Leerzeichen vor dem Satzzeichen? Und warum macht man das dann nicht auch beim Punkt, wenn man es beim Fragezeichen macht?
Lothar M. schrieb: > Das wäre sicher die technisch korrekte Lösung hier. Was wäre an einem LA, der sich für RS485 passend konfigurieren läßt, technisch nicht korrekt?
Lothar M. schrieb: > wo lernt man denn diese Plenkerei mit dem > Leerzeichen vor dem Satzzeichen? Im Französischen ist das üblich, nicht jedoch bei Punkt und Komma. Tatsächlich gibt es sogar eine europäische Sprache, in der in bestimmten Fällen der Plural mit Apostroph-s gebildet wird, das ist das Niederländische. Dort macht man das, wenn der vorangehende Vokal gedehnt ausgesprochen wird, wie z.B. in "baby's". Wird die Gedehntschreibung bereits durch einen Akut auf dem Vokal gekennzeichnet, entfällt der Apostroph (wie z.B. in "coupés"). Im Deutschen aber ist beides falsch und ein Zeichen schlechter Umgangsformen und/oder Bildung.
Rainer W. schrieb: > Lothar M. schrieb: >> Das wäre sicher die technisch korrekte Lösung **hier**. > Was wäre an einem LA, der sich für RS485 passend konfigurieren läßt, > technisch nicht korrekt? Das ordne ich jetzt einfach mal als "mutwilliges Missverständnis" ein. Denn natürlich ist ein LA, der einstellbare Schaltschwellen hat (oder gar die Differenz zweier Eingänge auswerten kann) technisch eine korrekte Lösung. Aber **hier** geht es um die billigsten der billigen LA, die nicht mal den Hauch eines einstellbaren Einganngstreibers haben. Deshalb habe ich das explizit das Wort "**hier**" als Abkürzung von "in diesem speziellen Fall, wenn so ein billiger LA ohne einstellbare Schaltschwellen verwendet werden soll" eingefügt.
Josef R. schrieb: > Geht das überhaupt ? Oder braucht mal einen rs485 - TTL Wandler dazu ? Das scheint mir ein Praxisrelevanter Ansatz zu sein!
Hey, danke für die Hinweise. Ich werde auf die Lieferung des Wandlers warten und dann austesten. Und bis dahin versuche ich mal Lothar M.'s Lösung. Der Combo 8 hat, laut Treiber SW im Pulseview einen einstellbaren Schwellwert und kann wohl auch 5V verkraften. All das gesagte gilt doch dann auch für CAN ? (bei angepasster Baudrate!) ? Werde berichten, ob der Wandler geholfen hat...oder Lothar M. Lösung. Danke Josef
:
Bearbeitet durch User
Josef R. schrieb: > Der Combo 8 hat, laut Treiber SW im Pulseview einen einstellbaren > Schwellwert Das steht aber nirgends in der Doku. Ich finde dort nur fixe 3V3 Schaltschwellen: "High and Low Level Thresholds VIH>2V VIL<0.8V". Es würde mich wie gesagt auch sehr wundern, wenn dieses simple Billigding sowas kann. Denn dieses Feature braucht extra Hardware und deshalb findet man es meist erst bei deutlich teureren Geräten. > kann wohl auch 5V verkraften. Auch dazu finde ich nur den erwähnten "Signal Input Range 0~3.6V" > Der Combo 8 hat, laut Treiber SW im Pulseview einen einstellbaren > Schwellwert und kann wohl auch 5V verkraften. Dann solltest du wie gesagt die tatsächlichen Spannungspegel am RS485 Bus mit einem Oszi ermitteln. Wenn du dann siehst, dass du mit definierten Pegeln innerhalb des erlaubten Eingangsbereichs des LA zu tun hast, dann sollte das gehen. > All das gesagte gilt doch dann auch für CAN ? Im Prinzip ja, allerdings mit dem Problem, dass CAN einen deutlich "analogeren" Ruhepegel irgendwo in der Mitte der Versorgungsspannung hat. > (bei angepasster Baudrate!) ? Dass zur erfolgreichen Decodierung die Baudrate passen muss, steht ausser Diskussion. Aber das Decodieren einer CAN-Nachricht ist dank Bit-Stuffing dann sowieso nicht mehr so einfach. BTW: für solche Sachen habe ich mir an einem Schnäppchentag das kleinste Picoscope zugelegt. Und was muss ich sagen: solche Sachen sind damit ein kleines Kinderspiel, weil das Ding eben zuerst ein Oszi ist, das aber auch serielle Portokolle (darunter einige sehr ausgefallene) Decodieren kann.
:
Bearbeitet durch Moderator
Hallo, @Lothar: Der Combo kann laut SW eine Schwellwert-Einstellung. Ob es richtig funktioniert, kann ich aber noch nicht sagen. @Lothar: Pico: hatte ich mir angesehen, konnte mich aber nicht entscheiden....zudem habe ich das Fluke 192 hier eh liegen.... Welches Pico hast Du ? Teil2: Der TTL-RS485 Wandler ist angekommen. Aber nun wird der Berg der Fragen doch größer: Wie anschliessen? Es ist der TTL Max von Makershop Auf der einen Seite: DI, DO, RE, RO auf der anderen GND, A, B, VCC alles als Stifte ausgeführt. zusätzlich 2 Klemmen, unbeschriftet: könnte gem. Leiterplatte A und B sein Anschluss: A und B sind klar Aber wie Spg an legen VCC und GND kann ich vom rasbi, oder vom LA holen, was mich verwundert: wieso sind dann aber A und B als Klemme ausgeführt, wenn ich VCC und GND auch brauche ? Oder lebt der Wandler aus den Signal-Pegel ? Aus meinem Verständnis brauche ich am LA nur den DO ? Oder den RO ( seriell Out ) Aber was ist der Unterschied ? OK, meine E-Technik Kenntnisse sind älter..... Kann mir jemand einen Tipp geben ? Ich will den Wandler ja nicht gleich zerschiessen.... Danke Josef
Josef R. schrieb: > Kann mir jemand einen Tipp geben ? Lupe! Welcher Chip ist auf deinem Wandler? Angenommen, ein Max485... Dann nimmst du dir das Datenblatt des Max485 und machst dich kundig wie das Ding funktioniert. Alle Anschlüsse werden in dem Datenblatt ausführlich beschrieben.
:
Bearbeitet durch User
@ Arduino F Vielen Dank für die Info. Leider helfen sie keinen deut weiter. Wenn ich aus der Kurzbezeichnung klug geworden wäre, hätte ich nicht gefragt. Und wenn sich mir die Logik erschlossen hätte, hätte ich auch nicht gefragt. Wenn die Spg Vers. und GND von der TTL Seite eingespeist würden, hätte ich es verstanden. Werden aber auf der RS485 Seite angeschlossen.... Wenn ich das aber mache, leutete die RX Led auf dem Zihatec HAT mit Dauerlicht.... Die Versorgung vom Raspi zu nehmen, macht aber doch auch keinen Sinn, weil der Zihatec Hat isolierte A/B Leitung hat. Das Bezugspotential ist damit nicht erkennbar. Wenn ich nur A +B anschliesse, verstehe ich nicht wogegen ich messen soll, weil ich keinen Gnd habe... Frage: Gibt es diese Wandler immer für beide Richtungen ? Wenn ich zurück zu Lothar Vorschlag gehe, nur den "unteren" Kanal auflegen, ohne Wandler, sehe ich was, nur leider hat da dann die Decodierung nichts mit der Realität zu tun.... Also brauche scheinbar schon den Wandler..... Aber ich verstehe ihn (noch immer) nicht. Die Makershop Seite gibt auch keine Infos. @Lothar Im Treiber für den Sipeed Combo 8 ist eine Einstellmöglich gegeben, siehe Foto Danke für jeden Tipp....
Josef R. schrieb: > Wenn ich aus der Kurzbezeichnung klug geworden wäre, hätte ich nicht > gefragt. Das Datenblatt erklärt die Kurzbezeichnungen! https://www.analog.com/media/en/technical-documentation/data-sheets/MAX1487-MAX491.pdf
:
Bearbeitet durch User
Danke für den Link Aber wie gesagt: Ich habe ihn NICHT verstanden. Ersten: Die Pin Bezeichnung des IC lässt nur begrenzt Rückschlüsse auf die Platine zu. OK, hier ist es noch einfach, aber nur begrenzt verwendbar, weil Kapazitäten und Widerstände und weitere Komponenten NICHT berücksichtigt sind. Und ich gehe davon aus, das sie eine Funktion haben.. Wie ich beschrieben hatte.....ist es mir nicht möglich, aus der Pin Beschreibung Rückschlüsse auf die An-Schaltung zu ziehen. Siehe hierzu meine Ausführungen zum Thema Spg-Versorgung / GND... Soweit dazu. Aber vielleicht hat jemand einen weiterführenden Hinweis Danke Josef
von meiner Seite das Feedback: Die Lösung von Lothar: unteres Signal nur benutzen hat nicht funktioniert. Ich habe es nicht verstanden, wieso es nicht geht, den pulseview zeigt sehr wohl Ergebnisse an, aber diese waren falsch!! Z.B. wurde die Id's nicht richtig dargestellt. Statt der richtigen 201 wurde 128 angezeigt. Einstellungen big/little Endian, Invertierung des Signals, Schwellen haben zu keinem Erfolg geführt. Ich habe dies abgebrochen. 485Max: Hier war es erfolgreicher! In einem anderen Portal gab es eine Beschreibung des gleichen Konzeptes: Man muss DE und RE auf GND legen und den Wandler mit 3.3V versorgen. Die Versorgungs-GND ist gleichzeitig GND für die TTL Potentiale. Es wird das Entfernen des Abschlusswiderstandes (R7) empfohlen, dies habe ich - noch - nicht gemacht, konnte aber im Testaufbau keine Nachteile feststellen. Werde dies aber noch vornehmen. Josef
Josef R. schrieb: > @Lothar Im Treiber für den Sipeed Combo 8 ist eine Einstellmöglich > gegeben, siehe Foto > Danke für jeden Tipp.... Probier doch einfach mal aus, ob dieser Schieberegler überhaupt bis zur Hardware durchkommt: einfach mal auf "1V" stellen, dann mit einem Poti Spannungswerte um 1V einspeisen und schauen, ob sich am Bildschirm was tut. Und dann das selbe mit "4V" machen. Ich behaupte, dass da keine Änderung der tatsächlichen Schatschwelle zu sehen ist. Josef R. schrieb: > 485Max: Hier war es erfolgreicher! War zu erwarten. > Man muss DE und RE auf GND legen Man muss den Ausgangstreiber ausschalten und den Eingangstreiber aktivieren. Dazu muss man den high aktiven DE und den low aktiven /RE (oder RE# oder nRE) auf GND legen.
Josef R. schrieb: > Die Lösung von Lothar: unteres Signal nur benutzen hat nicht > funktioniert. Hast Du denn auch eine Masseverbindung hergestellt?
@Harald Ja, als0 ich habe 3.3 und GND aus dem Combo 8 auf den Wandler angeschlosssen. Und den GND dann auf RE und DE gebrückt Mir war lange Zeit nicht klar, ob ich die Spg vom der RS485 Seite oder von der TTL Seite nehmen soll. Habe dann die TTL Seite genommen. @Arduino: Noch mal extra nachgemessen: Ich habe 3.3V verwendet! Wobei zu beachten ist: Ich nutze den 485Max ja als Sniffer. d.h. er sendet nicht auf dem Rs485 sondern ausschliesslich auf der TTL Seite. Mir war nicht klar, ob ich dm Combo 5V zumuten darf..... Aber ich kann es ja mal testen..... Danke für die Hilfe Josef
Josef R. schrieb: > Noch mal extra nachgemessen: Ich habe 3.3V verwendet! Wobei > zu beachten ist: Ich nutze den 485Max ja als Sniffer. d.h. er sendet > nicht auf dem Rs485 sondern ausschliesslich auf der TTL Seite. Deine Argumentation scheint dir logisch erscheinen! Aber ist sie das auch?
:
Bearbeitet durch User
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.

