Hallo, Möchte über RS232 mit einem Mega 8 kommunizieren! Habe die Baudrate eingestellt und kann nun vom Mega an den Computer senden! Nun wollte ich es umgekehrt probieren, aber es geht nicht! Heute habe ich versucht zwei Computer miteinander zu verbinden! Ich benütze ein gekreuztes Serialkabel. Aber die Kommunikation funktioniert nicht! Der Empfänger bekommt ständig eine 0. Kann mir bitte jemand helfen? Anbei das Senderprogramm, das Empfängerprogramm funktioniert 100%ig! MfG Zsolt
Komplett habe ich es nicht geprüft, nur bis zu der ersten Ungereimtheit: Du holst die alte Einstellung mit tcgetattr(), manipulierst die Parameter und... tust die manipulierten Parameter nicht mit tcsetattr() setzen
Danke für deine Antwort! Leider kenne ich mich mit diesen Funktionen nicht aus! Könntest du mir meine Fehler bitte erklären? Danke MfG Zsolt
Ich kann wie du auch nur in der Doku nachsehen (Manpages, Tutorials, Beispielsourcen). Mir fällt halt auf, dass du die Voreinstellung vom System in eine Struktur oldtio einliest bzw. sicherst (tcgetattr). Dann dass du deine Wunschwerte (Baudrate,...) in eine neue Struktur newtio einsetzt. Und dann die Struktur mit den Wunschwerten dem System NICHT bekannt machst (kein tcsetattr). Dann einen Übertragungsversuch machst (write). Dann die oben gesicherte Struktur oldtio wieder dem System bekannt machst (tcgetattr). Für mich steht fest, dass das System deine Wunschwerte nie gesehen hat und folglich nie einen wunschgemäßen Übertragungsversuch machen konnte.
... oder anders ausgedrückt: Du setzt zwar eine wunderschöne Struktur 'newtio' auf, machst aber nichts damit.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.