Serielle Schnittstelle für Anfänger

Dieses Thema im Forum "C/C++" wurde erstellt von Olti, 06.03.2006.

  1. Olti

    Olti Mitglied

    Dabei seit:
    06.03.2006
    Beiträge:
    41
    Zustimmungen:
    0
    Hallo erstmal!!

    Ich bin ziemlich neu in C/C++, zumindest was die Systemnahe programmierung angeht und ich möchte nun ein paar Bytes an die Serielle Schnittstelle schicken und evtl. auch ein paar wieder empfangen und auswerten. Kann mir irgendjemand ein gutes Tutorial empfehlen (am besten in deutsch und für C++), in dem nicht nur steht wies geht, sondern auch etwas erklärt ist, wie es geht?? Ich will nämlich nicht nur abschreiben sondern auch verstehen, was ich da tu!

    MFG Olti
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Ich kenne kein Tutorium. Unter Linux ist die Schnittstelle eine einfache Datei, die Du mit fopen("/dev/ttyS0", "rw") oeffnen kannst und dann mit fscanf und fprintf bearbeiten.
     
  4. Olti

    Olti Mitglied

    Dabei seit:
    06.03.2006
    Beiträge:
    41
    Zustimmungen:
    0
    Des hab ich auch schon öfter gelesen, nur blick ich bei der ganzen Sache mit der Baudrate usw. noch net ganz durch und ich find immer nur Beispielee wo einem alles hingeknallt wird aber nicht gescheid erklärt.
    Weißt du zufällig ob das theoretisch auch über die Streams in C+ funktioniert, also über ifstream und ofstream??

    MFG Olti
     
  5. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Unter c++ sollte das mit fstream genauso gehen.
    An die Baud-Rate und andere technische Hindernisse habe ich allerdings nicht gedacht. Vielleicht hilft Dir ja http://sourceforge.net/projects/libserial/ weiter.
     
  6. cremi

    cremi Dude

    Dabei seit:
    15.02.2004
    Beiträge:
    329
    Zustimmungen:
    0
    Ort:
    AUT/Ktn
  7. #6 hazelnoot, 07.03.2006
    hazelnoot

    hazelnoot www.mywm.dl.am

    Dabei seit:
    13.10.2005
    Beiträge:
    377
    Zustimmungen:
    0
    Ort:
    in Geiersberg
    hi!
    olti du hast ganz recht das mit dem durchblicken ist schwaer da man nirgends eine wirklich gescheite doku findet ich. ich hab vor ner zeit nen infrarot transresiver programmiert der ueber die serielle schnittstelle angeschlossen war. waenn du willst kann ich dir den code per mail schicken! eins ist vielleicht sehr wichtig und zwar: die konsole selbst(tty) ist auch so aehnlich einer serielle schnittstelle da frueher die terminals auch alle ueber ne serielle schnittstelle angeschlossen waren! d.h. eine serielle schnittstelle stellst auch so ein wie ne tty! http://www.pronix.de/pronix-27.html da findest viel uber das thema! waenn du das mal begriffen hast is die serielle schnittstelle nicht mehr schwaer zu programmieren!

    mfg hazelnoot
     
  8. Olti

    Olti Mitglied

    Dabei seit:
    06.03.2006
    Beiträge:
    41
    Zustimmungen:
    0
    @hazelnoot: Danke für den Link. Schaut ganz interessant aus. Wäre nicht schlecht wenn du mir den Code mal schicken könntest (christian@oltenburger.de). Interessant ist fr mich v.a. der Teil mit der Konfiguration der Schnittstelle. Werde mich mal einlesen wenn ich meinen Rechner wieder zum laufen gebracht hab!

    MFG Olti
     
  9. Olti

    Olti Mitglied

    Dabei seit:
    06.03.2006
    Beiträge:
    41
    Zustimmungen:
    0
    Hallo also mit dem Link komm ich ganz gut zurecht.
    Nochmal danke dafür.
    Womit ich aber noch Probleme hab, ist wie ich nun was auf die Serielle Schnittstelle schreiben kann.
    Ich hatte zwar irgendwo mal was mit write() aber da ich in C nicht so fit bin sondern eher C++ mach komm ich damit irgendwie nicht zurecht.
    Welche Argumente muss ich den nun genau an write() übergeben!

    MFG Olti
     
  10. #9 hazelnoot, 22.03.2006
    hazelnoot

    hazelnoot www.mywm.dl.am

    Dabei seit:
    13.10.2005
    Beiträge:
    377
    Zustimmungen:
    0
    Ort:
    in Geiersberg
    hi!

    also write sieht so aus:
    ssize_t write(int fileDeskriptor, void *dasWasteSchreibenWillst, size_t anzahlDerBytesDieDuSchreibenWillst); zurueckbekommen tust -1 bei fehlschlag oder die anzahl der tatsaslich geschriebenen bytes!

    mfg hazelnoot!
     
  11. #10 theborg, 22.03.2006
    theborg

    theborg KBitdefender Programierer

    Dabei seit:
    06.08.2004
    Beiträge:
    688
    Zustimmungen:
    0
    Ort:
    Hamburg
    naja kommt immer drauf an was er machen möchte bin auch grade bei was um zusetzten wirklich schwer wird es wen man low_signale setzen möchte ist unter linux net ganz leicht
     
  12. Manji

    Manji Tripel-As

    Dabei seit:
    07.04.2005
    Beiträge:
    161
    Zustimmungen:
    0
    Ort:
    Erlangen
  13. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  14. Olti

    Olti Mitglied

    Dabei seit:
    06.03.2006
    Beiträge:
    41
    Zustimmungen:
    0
    Naja ganz einfach ist es wirklich nicht aber dank dem Link von hazelnoot und dem ein oder anderem Quelltext komm ich ganz gut zurecht nur da ich normalerweise eher C++ als C Programmier bin ich bei einigem nicht so ganz fit.
    Allerdings hab ich noch nicht rausgefunden, wozu folgende Zeile gut ist:
    Code:
    fcntl(input, F_SETFL, FNDELAY);
    Trotz der Schwierigkeiten find ich des Thema ganz interessant, da es mal ne Herausforderung ist, die wohl noch lange nicht zu ende ist und man auch mal dabei lernt was man tut und nicht wie in meiner Zeit als Delphie Programmierer unter Windows ein paar Zeilen hingeknallt kriegt und dann nur noch copy&pasten muss!!

    MFG Olti
     
  15. #13 martin8310, 24.04.2006
    martin8310

    martin8310 Grünschnabel

    Dabei seit:
    24.04.2006
    Beiträge:
    1
    Zustimmungen:
    0
    Hallo ,

    ich versuche auch mit c auf die serielle schnittstelle zuzugreifen und dann die daten die dort ankommen auszulesen, bekomme das auch nach tage langer forschung nicht so richtig hin.

    Vielleicht könnte mir dein quelltext weiterhelfen hazelnoot, wäre nett wenn du ihn mir zuschicken würdest (martin8310@freenet.de).

    danke!!
     
Thema: Serielle Schnittstelle für Anfänger
Besucher kamen mit folgenden Suchen
  1. serielle schnittstelle programmieren linux

    ,
  2. serielle schnittstelle programmieren c linux

Die Seite wird geladen...

Serielle Schnittstelle für Anfänger - Ähnliche Themen

  1. Perl serielle Schnittstelle

    Perl serielle Schnittstelle: Hallo Ich möchte mit Perl Daten von einer seriellen Schnittstelle auslesen. Die Daten kommen aus einem Prüfgerät. Per Putty kann ich die COM...
  2. virtualbox serielle Schnittstellen

    virtualbox serielle Schnittstellen: [gelöst]virtualbox serielle Schnittstellen Hallo Ich habe unter Gentoo app-emulation/virtualbox-ose-2.1.4-r1 USE="additions alsa hal -headless...
  3. Serielle Schnittstellen

    Serielle Schnittstellen: MoinMoin, ich habe eine Verständnisfrage zu den seriellen Schnittstellen unter Linux. Meine Gentoo-Kiste hat einen "echten" seriellen Port,...
  4. Serielle Schnittstelle auslesen.

    Serielle Schnittstelle auslesen.: Moin... Mal ne Frage. Ich möchte eine oder mehere TTYs auslesen und in ein file speichern. Am besten per Bashscript. An den Seriellen...
  5. SPI über serielle Schnittstelle

    SPI über serielle Schnittstelle: Moin, ich möchte über die serielle Schnittstelle eine MultiMediaCard bearbeiten. Mir steht bei dem System nur die serielle Schnittstelle zur...