- LiTime Speicher und Akkus         
Seite 1 von 3 123 LetzteLetzte
Ergebnis 1 bis 10 von 22

Thema: Übertragung serieller Daten mit Sende/Empfängerset

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    11.06.2004
    Ort
    Saarland
    Alter
    37
    Beiträge
    44

    Übertragung serieller Daten mit Sende/Empfängerset

    Anzeige

    Praxistest und DIY Projekte
    hi
    hab mir von Conrad für 15€ das Sende/Empfängerset gekauft. (für den preis ja eigentlich einen versuch wert) ich will jetzt ein byte seriell vom pc über den comport senden. also brauch ich die programmierung. (sollte ich was vergessen haben, korrigiert mich bitte!) wie bekomm ich jetzt den high-pegel, den der empfänger ausgibt (0,8V laut betriebsanleitung) auf ttl-pegel?? den sender kann ich ja mit 3-12V versorgen. jetzt meine fragen:

    1. Wie Programmiere ich die Ser. Schnittstelle??
    2. Wie schliesse ich den Empfänger an meine C-Control M-unit an??
    3. Wie werte ich die empfangenen Daten aus??
    4. Was ist eigentlich ein startbit, stoppbit, prüfsumme, handshake...
    5. Brauch ich sonst noch was??


    mein robby läuft soweit, will ihn nur später mit meinem handspring oder meinem palm fernsteuern. bekomme aber dazu in zwei tagen noch ein buch.
    gibts vielleicht seiten, wo ich das mit der SS vom pc nachlesen kann?
    PISA war beschiss!

  2. #2
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.03.2004
    Ort
    Paderborn
    Alter
    40
    Beiträge
    614
    1. Wie Programmiere ich die Ser. Schnittstelle??
    Einfach Bytes senden kannst du mit einem Terminalprogramm. AVR-Terminal find' ich z.B. gut dafür(ist auch ganz klein).
    2. Wie schliesse ich den Empfänger an meine C-Control M-unit an??
    0,8V sind wirklich wenig. Das könnte gerade reichen um einen Transistor zu schalten(hinter dem NPN-Transistor kommt ein Pullup auf 5V, wenn der Transistor durchschaltet, hast du gnd-Pegel). Wenn du die Schnittstelle nicht softwareseitig invertieren kannst(keine Ahnung, ob das geht), musst du noch einen zweiten Transistor dahinterschalten damit das Signal wieder "richtig rum" ist. Ansonsten könnte es auch mit einem OpAmp gehen.
    3. Wie werte ich die empfangenen Daten aus??
    Steht im Handbuch der C-Control. Auswendig weis ich's leider auch nicht.
    4.
    4. Was ist eigentlich ein startbit, stoppbit, prüfsumme, handshake...
    Startbit und Stoppbit müssen auf beiden Seiten gleich eingestellt sein(daran erkennt der Empfänger den Begin und das Ende der Übertragung.).
    Eine Prüfsumme ist ein aus den verherigen Bits ermittelter Wert(z.B., ob die Summe gerade ist.), der es ermöglicht, bei einem einzelnen falschen Bit die Übertragung als fehlerhaft zu identifizieren(sollte auch einfach auf beiden Seiten gleich eingestellt sein).
    Handshake ermöglicht es, eine Verbindung zu erkennen, auch wenn nix gesendet wird(unterstützt die C-Control meines Wissens nicht(kann man aber vielleicht per Software machen), deshalb am PC ausmachen).
    5. Brauch ich sonst noch was??
    Keine Ahnung, was bei dem Sender/Empfängerset dabei ist. Kabel, Strom usw. sollten ja selbstverständlich sein.
    it works best if you plug it (aus leidvoller Erfahrung)

  3. #3
    Benutzer Stammmitglied
    Registriert seit
    11.06.2004
    Ort
    Saarland
    Alter
    37
    Beiträge
    44
    danke schonmal für die schnelle und ausführliche antwort!

    Einfach Bytes senden kannst du mit einem Terminalprogramm. AVR-Terminal find' ich z.B. gut dafür(ist auch ganz klein).
    wohert bekomm ich das programm??

    0,8V sind wirklich wenig. Das könnte gerade reichen um einen Transistor zu schalten(hinter dem NPN-Transistor kommt ein Pullup auf 5V, wenn der Transistor durchschaltet, hast du gnd-Pegel). Wenn du die Schnittstelle nicht softwareseitig invertieren kannst(keine Ahnung, ob das geht), musst du noch einen zweiten Transistor dahinterschalten damit das Signal wieder "richtig rum" ist. Ansonsten könnte es auch mit einem OpAmp gehen
    man kann mit der cc negativieren.

    Startbit und Stoppbit müssen auf beiden Seiten gleich eingestellt sein(daran erkennt der Empfänger den Begin und das Ende der Übertragung.).
    also muss ich in meinem mC programmieren, dass er anspringt wenn er einen low-pegel misst? und dass er aufhört, wenn er alles empfangen hat und einen high-pegel misst. oder brauch ich das vielleicht garnicht?? wie werden denn die bytes aus diesem terminalprogramm gesendet?? mit startbit/stopbit?

    muss ich die übertragungsrate bei meiner ccontrol einsellen?? warscheinlich schon! dieses set hat manchester-codirung, was heisst das??
    THX
    PISA war beschiss!

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    02.03.2004
    Ort
    Paderborn
    Alter
    40
    Beiträge
    614
    wohert bekomm ich das programm??
    http://www.rowalt.de/mc/index.htm
    Unter Tools gibt's das zum downloaden.
    man kann mit der cc negativieren.
    Dann kannst du das machen und brauchst nur einen Transistor (dessen Schaltschwelle muss natürlich unter 0,8V liegen.)
    also muss ich in meinem mC programmieren, dass er anspringt wenn er einen low-pegel misst? und dass er aufhört, wenn er alles empfangen hat und einen high-pegel misst. oder brauch ich das vielleicht garnicht??
    Ich GLAUBE, die C-Controll hat fertige Routinen zum seriellen Empfangen.
    wie werden denn die bytes aus diesem terminalprogramm gesendet?? mit startbit/stopbit?
    Das kannst du recht einfach einstellen. Die Voreinstellung sollte gehen(1 Stoppbit, keine Parität).
    muss ich die übertragungsrate bei meiner ccontrol einsellen??
    Ich glaube, die C-Control unterstützt nur 9600 Baud. Du musst also am PC (und ggf. am Empfänger) die Baudrate auf die 9600 der C-Control einstellen.
    dieses set hat manchester-codirung, was heisst das??
    Hier z.B. erklärt(erstes Suchergebnis bei yahoo ):
    http://members.gaponline.de/afj/rech...se_13.2.3.html
    Muss dich eigentlich nicht kümmern, wenn dein Sender die Daten vom UART nimmt und am Empfänger wieder solche 'rauskommen(der Kram dazwischen geht dann ja ohne dein Mitwirken.). Hast du denn dazu kein Datenblatt oder so?
    it works best if you plug it (aus leidvoller Erfahrung)

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    11.06.2004
    Ort
    Saarland
    Alter
    37
    Beiträge
    44
    hab nur die bedienungsanleitung, die ist ca. 4cmx3cm gross!!
    aber ich werds mal versuchen! danke erstmal!
    PISA war beschiss!

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    21.05.2004
    Beiträge
    275
    Hi irgendsowas!

    Bitte poste mal deine Ergebnisse, mich würd mal interessieren ob das "Zeug" etwas taugt.
    Mich hat auch der Preis aufmerksam gemacht, konnte mich aber nicht dazu durchringen es zu kaufen.

    MfG
    Batti

  7. #7
    Neuer Benutzer Öfters hier
    Registriert seit
    15.05.2004
    Beiträge
    5
    So ein zufall, das gleiche habe ich mir auch bestellt. Ich bin auch an den Ergebnissen interessiert.

    Ich wollte das Modul zur komunikation zwischen zwei AVRs unter verwendung der UART schnittstelle (asynchrone serielle übertragung) verwenden. Die schnittstelle alleine funktioniert super auch zwischen PC und AVR.

    Zubeachten ist beim PC jedoch, das die RS-232 schnittstelle mit +/- 12V
    arbeitet. Man kann dies aber zum beispiel mit dem MAX202 oder anderen ICs aus dieser Reihe konvertieren (in 0V/5V) bzw. umgekehrt. Man kann dann theoretisch auf Handshake und steuerleitungen komplett verzichten.

    Wenn noch jemand fragen zu Programmierung der Seriellen Schnittstelle hat, kann ich z.B. Delphi Sources zur verfügung stellen (ohne inpout32.dll, nur mit windows routinen, also absolut 'sauber')

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    15.05.2004
    Beiträge
    5
    mir fällt gerade noch auf handshake funktioniert bei diesem modul sowieso nicht, da es nur unidirektional funktioniert.

    und hier gibts ein tool zum senden empfangen von bytes über den seriellen port, überwachen und einstellen der steuerleitungen, einstellen von stopbits uvm. kann ich nur empfehlen

    http://www.domis.de/cms/index.php?mo...display&ceid=7

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    15.05.2004
    Beiträge
    5
    So, jetzt ist das Modul auch da.

    Die Anleitung kann man total vergessen. Das einzige was drin steht ist das die Seriellen Daten nach dem Manchester Code codiert werden sollen.
    Zur Erklärung: Der Manchaster Code (verwendet z.B. bei den alten 10 Mbit netzwerken) stellt jedes Bit durch einen Übergang zwischen zwei Bits da, Hi->Lo oder Lo->Hi, wodurch bei jedem Bit ein Übergang statt findet und so die Taktfrequenz leichter zu Synchronisieren ist. Außerdem werden negative Spannung zum darstellen von Lo verwendet, was eine ansteuerung per AVR erschwert.

    Außerdem habe ich bis jetzt noch nicht rausgefunden ob der Empfänger die Daten auch wieder Manchaster codiert ausgibt oder anders.

    Falls jemand schonmal mit dieser Codierung gearbeitet hat würde ich mich freuen wenn er sich melden würde.

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    07.07.2004
    Ort
    um Berlin
    Beiträge
    346
    Naja, wenn die Daten kodiert reingehen, kommen sie auch kodiert wieder raus. Die Module ändern da nichts dran. Sie verfälschen höchstens die Bits - deshalb der "Vorschlag" mit der Kodierung. Ohne Kodierung (wahrscheinlich ist hier eine Redundanz gemeint) kann das serielle Signal eben gestört sein. Oder man macht die Überprüfung (und gegebenfalls die Retransmission) in einem Übertragungsprotokoll.

    Manchester-Code ist dafür da, die Abstände zwischen den Pegelwechseln nicht zu klein werden zu lassen und möglichst immer (im Mittel) gleichviel Low- wie auch High-Pegel zu haben ("gleichspannungsfrei").


    Blackbird

Seite 1 von 3 123 LetzteLetzte

Berechtigungen

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

LiTime Speicher und Akkus