Archiv verlassen und diese Seite im Standarddesign anzeigen : rs232 ansteuern (linux)
hi...
hab gegoogelt und zu diesem thema nix für mich brauchbares gefunden... jetzt hoffe ich das ihr mir weiterhelfen könnt...
also ich hab programmiererfahrung (zwar nicht unter c/c++, aber mit anderen sprachen)
nun meine frage:
wie kann ich unter linux einfach einen pin(z.b. rts) auf high bzw low setzen?
könnte mir jemand ein einfaches programmbeispiel dafür geben?
wär echt toll..
vielen dank schonmal
Der Quellcode eines Terminalprogrammes wäre dafür
sicherlich aufschlußreich ->miniterm, mgetty
Opensource ist was feines ;)
Gruss,
Wolfgang
EDIT: klein (1 source Datei) und sehr übersichtlich: setserial
fieleicht stehe ich ja gerade auf der leitung, aber unter den programmnamen find ich irgentwie nix...
wär super, wenn du was anhängen würdest....
ps: schon mal vielen dank für due schnelle antwort
derguteweka
14.11.04, 22:45
Moin,
2 Fragen haett' ich:
A.) Willst du mit der Seriellen irgendwas machen, was (auch nur entfernt) irgendwas mit Datenuebertragung (also ueber die RxD und TxD Leitungen) zu tun hat, oder willst du irgendwelche Relais, LEDs oder sonstwas - eigentlich nicht unbedingt RS232 typisches machen?
(Wenn Datenuebertragung, dann les' dir das serial-programming-howto durch; am Schluss steht abschreibfertige SW)
B.) Hast du schon mal unter DOS, Homecomputer oder irgendwelchen µControllern einen UART direkt programmiert?
Gruss
WK
> fieleicht stehe ich ja gerade auf der leitung
beidfüßig ? :eek:
ftp://ftp.debian.de/debian/pool/main/s/setserial/setserial_2.17.orig.tar.gz
Viel Spaß
also ich will schieberegister über den rs232 port ansteuern, umd dann sowas wie leds oder relais anzusteuern...
unter visual basic hab ich sowas schon gemacht...
hab auch schon pit PIC16Fxxx prozessoren gearbeitet... nur würde mich das jetzt halt mal interessieren wie das unter linux geht, dass ich die pins von der rs232 shnittstelle auf high oder low setzen kann...
@ tictactux: ja, beidfüßig *G*.... ich schau mir gerade den anhandg an... danke...
mfg...
derguteweka
15.11.04, 12:17
Moin,
also ich will schieberegister über den rs232 port ansteuern, umd dann sowas wie leds oder relais anzusteuern...
unter visual basic hab ich sowas schon gemacht...
hab auch schon pit PIC16Fxxx prozessoren gearbeitet... nur würde mich das jetzt halt mal interessieren wie das unter linux geht, dass ich die pins von der rs232 shnittstelle auf high oder low setzen kann...mfg...
OK, dann kennst du dich ja mit den einzelnen Registern im UART aus; die kannst du prinzipiell - wie hier im Selbstbauelektronik-Unterforum auch schon fuer den Parallelport beschrieben - mit ioperm und inb/outb "beackern" und damit dann z.b. die Pegel der Handshakeleitungen aendern. Damit du nicht mit dem Kerneltreiber fuer die Serielle ins Gehege kommst, sollte der als Modul kompiliert sein und nicht geladen. Obacht: Der wird oft "zufaellig" geladen, z.b. durch den Start von CUPS - auch wenn CUPS nix mit seriellen Druckern zu tun haben sollte...
Gruss
WK
BlauerBlitz
15.11.04, 13:07
Unter
http://www.linux-magazin.de/Service/Listings/2000/09/Serielle_Fernsteuerung/cpanel.c
findest Du z.B. ein Programm, welches mit der seriellen Schnittstelle
hantiert. Sieh Dir die Zeilen mit "TIOCM_RTS" bzw. "TIOCM_DTR" an.
Über "ioctl(fd,TIOCMSET,...) werden die entsprechenen
Handshake-Leitungen gesetzt/rueckgesetzt.
Ein Tip: VERGISS NICHT auf die Freilaufdiode in der Schaltung. Wenn die fehlt, bzw. falsch einbaut ist, ruiniert die beim Schalten der Induktivität (Relaisspule) entstehende Spannungsspitze zumindest den Transistor!
:rolleyes:
Ciao
Werner
guckst du http://www.easysw.com/%7emike/serial/serial.html
Und noch einer dem ich diese Seite empfehle , dort gibt es auch ein Programm zur Relaiskarte!
http://www.linuxforen.de/forums/showpost.php?p=1359740&postcount=8
gruss Oli
http://www.tldp.org
da findest du ein sehr guters tutorial zur ansteuerung und programmierung der rs232 schnittstelle.
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.