Forum: Mikrocontroller und Digitale Elektronik einf. 1-Kan. Logikanalysator mit PC via COM ?


von Jürgen (Gast)


Lesenswert?

Hallo,

kennt jemand ein Programm mit welchem ich über die COM schnittstelle
einen einfachen Ligikanalysator realisieren kann? Es sollte auch unter
XP laufen.
Vielen Dank für das Lesen und jegliche Hilfen...

Jürgen...

von Martin S. (Gast)


Lesenswert?

Mir ist noch nicht ganz klar was du da vorhast ...

einfachste Form:
Du mmeinst irgendetwas, welches über die serielle Schnitte irgendwelche
Statussignal-Leitungen wie RTS, CTS und was weiß ich noch alles abfragt
und damit einen einfachen Logikanalysator simulieren kann. (Da wirst du
ein paar hundert Herz bis KiloHerz ClockRate mit abbilden können)

kompliziertere Form:
Du möchtest irgendwas preiswertes "aus einem alten Toaster und einem
alten Videorecorder" zusammen löten, und das soll die Funktion eines
Logikanalysators haben. Da keine andere Leitung außer der seriellen für
eine Datenübertragung zur Verfügung steht, muß es halt dei serielle
Schnitte sein, welceh "ganz normal" zur Datenübertragung von
zwischengespeicherten daten dient.



Die Wahrheit liegt wahrscheinlich irgendwo dazwischen ...

von Jürgen (Gast)


Lesenswert?

Danke zunächst für die Antwort,

also ich möchte mir mit möglichst einfachen Mitteln das Signal
anschauen welches von einer rs232 Schnittstelle kommt von welcher ich
weder die Baudrate noch sonstige Infos habe.
Die Schnittstelle besitzt nur txd rxd und Masse Anschluß.

vielleicht gibt es auch noch andere Möglichkeiten....

vielen Dank für jegliche Infos von Jürgen...

von Martin S. (Gast)


Lesenswert?

Mit einem Oszilloskop kannst du sehr einfach die Taktrate einlesen /
interpretieren.

Falls du keins zur Verfügung hast, dann kannst du auch erst mal
spekulieren, daß keine ungewöhnlichen Taktraten genommen weredn, udn
mit 300 - 38400 baud alle standard-werte durchklappern. irgendeins
wirds schon sein (meistens 9600)

Zur Analyse nimmst du dir einen beliebigen pc, und klemmst dann tx von
deinem Versuchsobjekt auf rx von deinem "anderen pc".

ob gängige seriell-port-sniffer direkt auf xp laufen weiß ich nicht. da
gibts aber genügend recherche-möglichkeiten im Netz

von Johannes Raschke (Gast)


Lesenswert?

Modems haben doch offenbar Schnittstellenbausteine, die die anliegende
Baudrate automatisch erkennen - ob es sowas auch einzeln gibt? Wäre
doch mal praktisch... Kennt da jemand einen Chip oder eine Technik, das
am Controller nachzubilden?
Ansonsten reicht aber ein Oszilloskop. Das stellst Du auf ca. 1us/div
und guckst mal. Bei 115kbaud dauert ein Bit ca. 8,6us; für die anderen
Bitraten kann man das leicht ausrechnen...
Oder einfach mal mit (erstmal) 8n1 alle Baudraten am Empfänger
durchprobieren...

Johannes

von Jürgen (Gast)


Lesenswert?

Recht vielen Dank für die Hinweise und Ratschläge,
werde mich dann mal an das Testen machen....

Gruß Jürgen...

von Malte (Gast)


Lesenswert?

>Kennt da jemand einen Chip oder eine Technik, das
>am Controller nachzubilden?
Ich meine der Bootloader von Peter Dannegger für die AVRs erkennt
automatisch die richtige Baudrate.
http://www.mikrocontroller.net/forum/read-4-53146.html#new

von Rufus T. Firefly (Gast)


Lesenswert?

"Modems haben doch offenbar Schnittstellenbausteine, die die
anliegende
Baudrate automatisch erkennen - ob es sowas auch einzeln gibt? Wäre
doch mal praktisch... Kennt da jemand einen Chip oder eine Technik,
das
am Controller nachzubilden?"

Das tun Modems, in dem sie erwarten, daß an sie gesendete Kommandos mit
der Zeichenfolge "AT" beginnen. Aufgrund der verschiedenen
Fehlerinformationen, die die serielle Schnittstelle liefert (Framing
Error, Parity Error etc.) kann in Software sowohl Baudrate als auch
Wortlänge etc. ermittelt werden.

Spezielle Bausteine werden dafür daher nicht benötigt; eine Quelle für
den exakten "AT"-Algorithmus weiß ich jetzt allerdings auch nicht,
sowas sollte allerdings zu finden sein. Den Suchstring für Google
vielleicht noch um das Wörtchen "Hayes" erweitern ...

von Martin S. (Gast)


Lesenswert?

@Jürgen

Wieso eigentlich EIN-Kanal? Wenn da zwischen den Geräten nur RX und TX
geschaltet ist, ist doch anzunehmen daß das ganze über
Software-Handshake läuft. Dazu wäre es möglicherweise aber wichtig,
auch die Rücksignale zu wissen ...

Hier noch ein toller Tip (unverifiziert), hab ich heute morgen beim
stöbern in der ct entdeckt

http://www.daqcards.com/
dort: produkt: Free View Sound Pro
Unlock-Code aus der ct: 95E5-6A4E-C4BD-271F

das braucht dann nur ne Soundkarte, und ein paar Widerstände, schon
kannst du deine serielle "analog" sniffen.... (sogar Stereo, d.h.
2-Kanal für RX und TX)

von Jürgen (Gast)


Lesenswert?

Recht vielen Dank für die weiteren Infos...
Also die Signale kommen vom Com Port eines 486 Laptop und gehen zu
einer Baugruppe auf welcher ein AT89S8252-24 und je einen AD und DA
Wandler ist.
Die Software im AT89... und die Software welche unter DOS läuft kenne
ich nicht genauer.
Ich will halt ein Programm für meinen Pentium Notebook schreiben auf
welchem XP installiert ist und welcher nur über USB Schnittstellen
besitzt. Dafür habe ich dann einen USB/Ser. Wandler.

Nun habe ich mit einem rsmon(itor) Programm versucht rauszufinden
welchen Code das Programm liefert um die Controller Baugruppe
anzusteuern. Das hat auch z.T. geklappt da ich Schritt für Schritt den
DA Wandler auf der Controllerbaugruppe hochfahren (die Spannung) kann.
Das sehe ich an einem Multimeter.
Nun habe ich die Werte aufgeschrieben und versuchte Sie mit dem Pentium
Notebook über usb/ser Wandler auszusenden. Das klappte auch, aber nur
zum Teil die ausgelesenen Befehle andere Spannungswerte erzeugen und
nur ganz wenige Befehle die gleiche Spannung erzeugen wie von der
original Software abgelauscht....
Wenn es dienlich ist, kann ich ja mal einige Beispiele bringen.
Vielleicht erkennt ein Profi an dem Bitmuster eine eventuelle
Gesetzmäßigkeit. Die Befehle setzen sich aus 2 mal 2stelligen Hexwerten
zusammen.

Auf der Controllerbaugruppe sind übrigens LEDs welche mir anzeigen ob
die Controllerbaugruppe einen Befehl empfangen hat und wenn sie etwas
sendet. Bei der zugehörigen Software zeigt sich in dem konkreten Falle
keine Bestätigung an, deshalb werden die Befehle zum Ansteuern des DA
Wandlers wohl nicht quittiert. Man kann halt nur am Multimeter ablesen
das sich die Spannung ändert.

Das noch dazu...

Ich werde jetzt mal das Programm rsmon auf demm 486er installieren
(falls es unter DOS läuft bzw. unter Win3.11, und werde sehen wie sich
die Geschichte da verhält, ob die Fehler da immer noch auftreten.

Vielen Dank für die Infos und einen schönen Sonntag erstmal noch

Jürgen....

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
Noch kein Account? Hier anmelden.