Kommunikation serielle Schnittstelle emulieren

Feb 07, 2010 13 Replies

Hallo,



das 'Problem' müssten einige von euch schon gehabt haben.



Ich würde gerne einem Empfänger (Controller), der eine (UART-)serielle Schnittstelle hat, bestimmte Bytefolgen immer wieder zyklisch zusenden. Die Daten werden controllerintern verarbeitet. Bei Erfolg macht mir der Controller auf einem Pin eine LED an. Ist das controllerinterne zeitliche Verhalten kritisch, bleibt die LED aus.



Nun würde ich sehr ungern eine eigene Software dafür schreiben, nur damit ich unterschiedliche gleiche alternierende absichtlich Falsche Datenpakete über eine RS232-Schnitstelle aus meinem PC senden kann.



Ich denke das wird der eine oder andere gelöst (bekommen) haben. Die Suche mit Google hat (wie sooft bei mir) nichts gebracht.



Danke für die Hilfe.



Sven


Ich vergaß:

Daten vom Controller zum PC empfangen wäre natürlich auch sehr hilfreich.

Sven

Sven Schulzschrieb: "

Also entweder Software selber schreiben, oder Software kaufen, die andere geschrieben haben.

Docklight

formatting link
ist ganz gut. Es ist Scripting fähig und unter
formatting link
gibt es ein PingPong Besipiel. Für deine Testsquenz schickst du ein Byte von Controller zum PC und Docklight antwortet darauf mit einer vorprogrammierten Sequenz.

Dirk

Am Sun, 7 Feb 2010 01:04:54 +0100 schrieb Sven Schulz:

Evt ist ja das was für dich:

formatting link

Grüße, Thorsten

Hallo Sven,

Welcher Controller? Sowas würde ich ganz grundsätzlich in einer Simulation machen. Nur da kann man exaktes Timingverhalten "messen" und ggf. auch darstellen. Kaputte Bytes mit Frame Errors und mehr oder weniger deutlichen Frequenzablagen lassen sich entweder in der Simulation oder mit weiterer Hardware simulieren. Vom PC krumme Baudraten zu erzeugen dürfte etwas schwierig sein. Zumindest wäre ich mir da nicht sicher, wer da was falsch sendet und empfängt. Zudem ist das Timing auf dem PC nicht wirklich vorhersagbar. Ein Festplattenzugriff und zwischen den Bytes taucht ggf. schon eine Lücke auf.

Hallo Dirk,

das sieht gut aus.

Was ich in der Eile auch noch vergaß zu schreiben, RS232 hängt bei mir an USB. Also in der Form

PC(USB) USB-Leitung USB auf RS232/422 RS232 UART am Controller

Soweit ich die Funktionsweise im PC verstanden habe, ist die USB-Leitung auch 'nur' ein serieller Port. Den müßte ich mit einer solchen Software auch ansteuern können. USB auf RS232/422 ist

formatting link
die Bestellnummer 38211.

Sven

Schau ich mir an.

Danke

Sven

Autsch!

50 Euro! Plus Märchensteuer! Apotheke! Ich hab neulich einen 4-fach Konverter für 30 incl. gesehen. Reichelt, glaub ich.

Sorry für OT, Uwe

148¤. Plus MwSt. Die Teile funktionieren tadellos.

Sven

Damit hast du völlig recht. Allerdings reichen mir erstmal einfachste Tests aus, um überhaupt was zu sehen. Mit der Simulation ist das insgesamt so eine Sache, oft wird eine simulationsfähige Umgebung verlangt. Weichen Dinge auch nur im Detail von der Herstellervorgabe ab, ist die Simulation gescheitert. Und was ist realer als die Realität :-). Der Controller ist einer von Microchip, genaue Bezeichnung habe ich nicht bei der Hand, bei Interesse kann ich den Typen herausbekommen.

Sven

Woha! Hast Du 'anspruchsvolle' Umgebungsbedingungen? (Staub, Dampf, EMV,...) Für's Büro tun's sonst auch die Billigteile (z.B. DELOCK 61460 für 8 Euro).

Grüße, Uwe

Das ist kein Problem. Solche gibt es in aller Regel nur, wenn du mit 2 seriellen Schnittstellen am PC eine Kommunikation mitlauschen willst, weil dann das Timing nicht sauber ist, die eintreffenden Bytes also nicht immer in der richtigen Reichenfolge dargestellt werden können.

Dirk

Thorsten Oesterlein schrieb:

Veraltete Seite. Die Seite des Entwicklers ist jetzt wahrscheinlich

formatting link
- das Program finde ich aber auch in der aktuelleren Version nicht so überzeugend.

Siehe auch

formatting link

Servus

Oliver

Oliver Betz, Munich despammed.com might be broken, use Reply-To:

(Im DOS Fenster)

COPY "Bullshit" COM1

das wärs.

Sonst noch Fraachen?

w.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required