-         

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 12

Thema: Serielles Signal mitschneiden/kopieren

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    06.12.2005
    Ort
    Hamburg
    Alter
    28
    Beiträge
    86

    Serielles Signal mitschneiden/kopieren

    Anzeige

    Also ich hab ein Gerät das irgendein serielles Protokoll beherscht(kein Rs232) und auch ein Programm für den PC um es anzusteuern. Die Komunikation erfolgt aber nicht wie bei seriellem anschluss gedacht über ein RS232 protokoll sondern nur übrer Pegeländerungen auf TXD. Da ich dieses Gerät auch mit einem Controller ansteuern wollte dachre ich mir ich hänge das Signal einfach an einen Eingang meines Chips und Zeichne es auf und Sende wann immer ich möchte einfach dieses Signall über einen Pin. Nundie Frage: Wie mache ich das? Soll ich das USART oder normale "Pins" nehmen und wie programmiere ich sowas?

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2006
    Beiträge
    559
    Die Komunikation erfolgt aber nicht wie bei seriellem anschluss gedacht über ein RS232 protokoll sondern nur übrer Pegeländerungen auf TXD
    funktioniert RS232 denn nicht über Pegeländerungen auf TXD?


    Soll ich das USART oder normale "Pins" nehmen und wie programmiere ich sowas?
    kommt drauf an wie genau die Kommunikation nun erfolgt,
    "Pegeländerungen auf TXD" ist da zu ungenau

    welche Pegel gibts denn? binär oder mehr?

    aber allgemein wird der UART dir wohl nicht viel bringen wenn nicht die Stopbits usw. wie bei RS232 benutzt werden,
    das musst du schon mit normalen I/O-Pins machen

    wenn das wirklich nur Pegeländerungen auf einer Leitung sind musst du die eben aufzeichnen:
    warten bis sich der Pegel ändert -> Zeit seit letzer Änderung eintragen,
    warten bis sich der Pegel ändert -> Zeit seit letzer Änderung eintragen,
    usw.

    am besten wärs das Signal mal sichtbar zu machen um zu sehen wie es aufgebaut ist,
    dann würde man z.B. auch sehen welcher der Ruhe-Pegel ist

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    06.12.2005
    Ort
    Hamburg
    Alter
    28
    Beiträge
    86
    Wenn ich die gesendeten daten mit einem anderen Mitschneide bekomme ich nur sinnloses wirres Zeug(Rücksenden bringt auch keine Antwort).
    Deswegen dachte ich mir UART bringt nichs. Leider habe ich auch kein Oszi.Wie müsste den eigentlich ein "Mitschneidprogramm" aussehen?

  4. #4
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    68
    Beiträge
    703
    Wenn Du mitschneidest und es kommt nur wirres Zeug scheint ja schon was zu stimmen.
    Sonst würdest Du nix bekommen.
    Wäre hilfreich zu wissen was Du mit dem "Anderen" meinst.
    ist es ein Terminal unter Windows oder irgend was anderes?
    Wo wird Dir das wirre Zeug angezeigt?
    Daraus könnte man schließen was bereits geht.

    Netter Gruß
    Die ersten zehn Millionen Jahre waren die schlimmsten. Und die zweiten Zehn Millionen Jahre, die waren auch die schlimmsten.url

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    06.12.2005
    Ort
    Hamburg
    Alter
    28
    Beiträge
    86
    Also ich habe zwei PCs mit einem Nullm. Kabel verbunden und auf dem einen Das Ansteuerprogramm wessen Daten ich mitschneiden will und auf dem anderen ein Terminalprogramm und da habe ich nur irgendwelche sonderzeichen in sinnloser anordnungBekommen

  6. #6
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    68
    Beiträge
    703
    Ist doch super, da läuft schon was.
    RS232 funktioniert zum Bleistift schon mal grundsätzlich.
    Jetzt solltest Du mal schauen ob Du auf dem Sende PC rausfinden kannst mit welche Einstellungen der Seriellen Schnittstele das Programm sendet.
    Gemeint sind:
    Baudrate
    Stopbit ja nein
    7 oder 8 bit
    parität ja nein
    Flusssteuerung

    das muss erstmal auf der Empfangsseite stimmen
    sonst hast du sowiso Müll

    Weiter muss Du Dich fragen was da ankommen könnte.
    Wenn es z.B. Druckerdaten sind, also Steuerzeichen dann wirst Du da wenig Sinn drinn erkennen, sprich Wörter.

    Netter Gruß
    Die ersten zehn Millionen Jahre waren die schlimmsten. Und die zweiten Zehn Millionen Jahre, die waren auch die schlimmsten.url

  7. #7
    Benutzer Stammmitglied
    Registriert seit
    06.12.2005
    Ort
    Hamburg
    Alter
    28
    Beiträge
    86
    Also alles was ich weiss ist das es eine art "Binärer" Datentransfer ist und das es mit 1200 baud und Keiner Flussteuerung arbeitet. Deswegen dachte ich mir ich hänge es einfach an einen Chip und speichere welcher Pegel für wie Lange wann anliegt und "sende" das wann immer ich will.

  8. #8
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    68
    Beiträge
    703
    Das ist doch schon was.
    Du hast eine serielle Kommunikation mit 1200 Baud.
    Daraus kannst Du schon mal ableiten das hier nix mehr mit Pegel oder so zu löten ist.
    Die Sendestelle hat bereits alles in Daten zurechtgemacht und sendet sie Zeichen für Zeichen an den Empfänger.
    Dabei hält sie sich an die Regeln der seriellen Kommunikation.

    Soweit so gut.

    Jetzt der Empfänger:
    Der Empfänger muss ein Programm sein was sich ebenfalls an diese Regeln hält und die Daten so empfängt wie der Sender sie gesendet hat.
    Dabei soll er die Daten nach Möglichkeit anzeigen, egal wie sinnvoll oder unsinnig sie sind und am besten noch in eine Datei schreiben, dass man sie in Ruhe angucken kann.

    So ein Programm findest Du in Windows.
    Es heißt Hyperterminal.
    Du findest es vermutlich unter Programme -Zubehör
    Dort stellst Du die Werte der Übertragung ein und schon sollte es losgehen.
    Wenn Du was senden willst kannst Du eine Datei fertigmachen in der steht das was du senden willst. Du kannst aber auch über die Tastatur etwas eingeben.
    Da Du vermutest das es binäre Daten sind wird es vermutlich ab hier schwieriger.
    Da Die Terminalkommunikation Buchstabenorientiert ist.
    Es wird hier üblicherweise jedes gesendete Zeichen (1Byte lang) anhand einer Tabelle einem Buchstaben zugewiesen (Ascci-Tabelle).
    Ein Byte kann man aber auch als Zahlenwert interpretieren (0-255)

    Ich schließe hier erstmal bis Du deine Werte in einer Datei hast.

    Netter Gruß
    Die ersten zehn Millionen Jahre waren die schlimmsten. Und die zweiten Zehn Millionen Jahre, die waren auch die schlimmsten.url

  9. #9
    Benutzer Stammmitglied
    Registriert seit
    06.12.2005
    Ort
    Hamburg
    Alter
    28
    Beiträge
    86
    Danke,aber das bringt mir nichts weil ich weiss das das Terminalprogramm die meisten Daten einfach verwirft weil sie keinem ASCII Zeichen entsprechen. Das mit einem Terminalprogramm hatte ich auch schon längst versucht(sonst würde ich mir ja nicht die Arbeit machen es über einen Chip zu lösen). Wenn ich die Daten genauso sende wie ich sie Empfange bleibt die gewünschte antwort aus.
    Also müsste man die Empfangenen Daten Puffern und direkt wieder Senden ohne sie irgendwie zu überprüfen(ob sie ASCII oder sonst was sind)

  10. #10
    Erfahrener Benutzer Roboter Experte Avatar von marvin42x
    Registriert seit
    02.08.2005
    Ort
    Berlin
    Alter
    68
    Beiträge
    703
    Hmm...
    irgendwie ein Missverständniss.
    Da muss ich passen.
    in Bascom kannst Du das Senden und Empfangen als Byte programmiere.
    In z.B. Visual Basic geht das auch.
    Ich würde mich auch wunder wenn Das Terminal Daten unterdrückt wenn es in eine Datei schreibt. Das kann man mit einem Hexeditor überprüfen.
    Da müssen Leute mit mehr Detailwissen helfen.

    Netter Gruß
    Die ersten zehn Millionen Jahre waren die schlimmsten. Und die zweiten Zehn Millionen Jahre, die waren auch die schlimmsten.url

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •