IT-Academy Logo
Sign Up Login Help
Home - Hardware - Anschlüsse - Serielle Leitungen und deren Zugriff



Serielle Leitungen und deren Zugriff

es werden serielle (RS232/V24) leitungen und die programme zum zugriff darauf vorgestellt. (minicom, stty, getty, .. ) weiters gibt es einen kurzen ueberblick ueber AT befehle.


Autor: Franz Schaefer (mond)
Datum: 23-01-2002, 19:38:54
Referenzen: man setserial
man minicom
man stty
man getty
Schwierigkeit: Fortgeschrittene
Ansichten: 7591x
Rating: Bisher keine Bewertung.

Hinweis:

Für den hier dargestellte Inhalt ist nicht der Betreiber der Plattform, sondern der jeweilige Autor verantwortlich.
Falls Sie Missbrauch vermuten, bitten wir Sie, uns unter missbrauch@it-academy.cc zu kontaktieren.

[Druckansicht] [Als E-Mail senden] [Kommentar verfassen]



Untitled Document

Übersicht

bevor wir datenuebertragung via ppp-dialin leitungen besprechen koennen
zuerst mal die grundlagen: serielle leitungen (auch RS232 oder V24
schnittstellen genannt).

eine der aeltesten schnittstellen zur datenuebertragung. der stecker hat
entweder 24 oder 9 pole. es gibt eine leitung auf der daten gesendet
werden: TxD (transmit data) und eine leitung auf der daten empfangen
werden RxD. und eine masse leitung als referenzpotential.

(das TxD auf der einen seite muss mit RxD auf der anderen seite verbunden
werden und umgekehrt. dazu benoetigt man ein ausgekreuztes kabel - manche
schnisttstellen haben auch den stecker schon intern ausgekruezt dann
benoetigt man ein "gerades" kabel auf dem die leitungen 1:1
durchverbunden sind)

damit kann man
schon daten hin und her senden. die daten werden bit fuer bit (seriell)
uebertragen ohne ein zusaetzliches protokoll. schliesst man am einen ende
ein terminal programm (oder falls man so etwas noch beseitzt: ein echtes
hardware terminal) an so sieht man direkt jedes zeichen das ankommt.

wie weiss jetzt die eine seite ob die andere ueberhaupt bereit ist noch
daten zu empfangen? dazu gibt es 2 arten von handshake:

software handshake:

die gegenstelle schickt ein bestimmtes zeichen wenn sie keine daten mehr
empfangen kann XOFF bzw wenn sie wieder bereit ist das zeichen XON.

vorteil: man benoetigt keine zusaetzlichen adern am seriellen kabel als
die datenleitung (TxD/RxD).
nachteil: die zeichen XON/XOFF duerfen ansonsten nicht im datenstrom
vorkommen.

hardware handshake: es werden 2 extra leitungen auf dem RS232 kabel
benutzt die anzeigen ob die jeweilige gegestelle
bereit ist daten zu empfangen: DTR/DSR RTS/CTS)

vorteile/nachteile genau umgekehrt zu software handshake

lange rede kurzer sinn. jedes dieser seriellen leitungen hat im unix ein
device. unter linux: /dev/ttyS0 , /dev/ttyS1 , usw..

/dev/ttyS0 entspricht dabei dem COM1 im dos/windows.

wie diese schnittelle in deinem computer aussieht sagt dir das program
"setserial":

setserial -b /dev/ttyS0

gibt dir die daten der seriellen schnittstelle S0 auf deinem computer aus
und wuerde es auch erlauben diese zu aendern.. was normalerweise nicht
notwendig ist)

wir koennen z.b. mit echo direkt daten auf das port hinausschreiben:

echo blabla > /dev/ttyS0

haengt auf der anderen seite vom kabel ein terminal so koenenn wir das
blabla dort lesen. vorausgesetzt es passt alles was stimmen muss ist
vorallem:

* die baudrate: (wie schnell die daten uebertragen werden: typisch z.b.:
9600 oder 19200 baud. 1baud ist hier 1bit/sekunde)

* das kabel muss richtig druchverbinden sein. also ausgekruezt oder nicht
je nachdem ob die schnittstelle schon ausgekruezt ist oder nicht..)

* hardware/software handschake

* zahl der bits (normalerweise verwendet man 8 )

die einstellungen des terminals kann man z.b. mit dem program stty
veraendern:

stty raw crtscts ispeed 9600 ospead 9600 -F /dev/ttyS0

wuerde das port /dev/ttyS0 auf "raw" schalten, hardware hanshake
einschalten (crtscts), und die geschwindikgeit auf 9600 baud stellen.

direkt mit echo zu komunizieren ist einwenig muehsam. meist verwendet man
eher ein terminal programm. z.b. minicom:

minicom

starte minicom.

control-a o kommt man in in optionen menu wo man die terminal
einstellungen aendern kann.

control-a q beendet minicom wieder

ansonsten werden alle tasten eins zu eins an die schnittstelle
weitergegeben.

wenn die leitung z.b. mit einem anderen computer verbunden ist dann kann
man sich via serielle am anderen rechner einlogen..

will man selbst am eigenen rechner ein serielles port zu einer konsole
machen auf der man via serieller leitung arbeiten kann dann gibt man in
sein file /etc/inittab folgende zeile:

T1:23:respawn:/sbin/getty -L ttyS1 9600 vt100

und danach:

telinit Q

jetzt kann man von aussen auf das serielle port ttyS1 mit einem terminal
mit 9600 baud zugreiffen. (haengt ein modem an dem rechenr so sollte man
statt getty den mgetty verwenden. der kann auch das modem abheben etc..)
(achtung: solange der getty auf der leitung laueft kann man die leitung
nicht mit minicom oder aehnlichem benutzen da der getty das port
blockiert)


hat man auf der seriellen leitung ein modem haengen so kann man mit
minicom direkt mit dem modem sprechen. die meisten modems sprechen den AT
befehlssatz:

tippt man

AT

oder

at

so antowrte das modem mit:

OK

die wichtigsten AT befehle sind:

ATH1 ... hebt die leitung ab (haengt das modem am telefon hoert man dann
das freizeichen)

ATH0 ... legt auf

ATL1 oder

ATL2 stellt meist die lauststaerke ein.

ATDT1503;

... ruft die nummer 1503 an (in oesterreich die zeitansage) (der
strichpunkt am ende besagt dass das modem keine datenverbindung
aufbauen soll.. )

ATDT01404830

ruft die wiener VBS dialinnummer an. (das T steht uebrigens fuer
Tonwahl. ist man auf einem uuuuur alten telefonanschluss benoetigt man
eventuell pulswahl: P . weiters muss man natuerlich eventuelle
vorwahlen zum rauswaehlen auf einer telefonanlage beruecksichtigen.)

ATA wuerde einen datenanruf beantworten...

ATZ resetet das modem

AT&F0 bringt es in die firmen defaultconfiguration

hat man via ATDT (oder via ATA) eine datenverbindung aufgebaut so melde
das modem "CONNECT" und sagt eventuell die geschwindigkeit. danach ist man
mehr oder weniger transparent mit der gegenstelle verbunden... ist auf der
anderen seite ein getty am werk so kann man schon einlogen..

heute baut man ueber modem verbindungen aber meist keine direkten terminal
verbindungen auf sonder man will ins internet. zu diesem zweck faehrt man
auf der seriellen leitung mit dem PPP protokokoll.. das besagt wie man
interet packte auf dieser seriellen leitung transportieren soll..

wie das geht lenren wir demnaechst..

EXERCISES:

* sieh dir mit setserial die einstellungen deiner seriellen schnittstelle
an.

* wenn du 2 compuer hast so versuche diese via RS323 schnittstelle zu
verbinden. starte auf beiden seiten ein terminal programm (minicom
o.ae.).

* versuche mit stty die baudrate zu aendern und mit echo direkt auf das
port zu schreiben.

* installiere einen getty und versuche mit terminal darauf zuzugreifen.
danach deinstalliere den getty wieder

* haenge ein modem an das port und spiele einwenig mit den AT befehlen.

_______________________________________________
CD ist ein service von SILVER SERVER
der inhalt unterliegt der GFDL
_______________________________________________



[back to top]



Userdaten
User nicht eingeloggt

Gesamtranking
Werbung
Datenbankstand
Autoren:04511
Artikel:00815
Glossar:04116
News:13565
Userbeiträge:16552
Queueeinträge:06248
News Umfrage
Ihre Anforderungen an ein Online-Zeiterfassungs-Produkt?
Mobile Nutzung möglich (Ipone, Android)
Externe API Schnittstelle/Plugins dritter
Zeiterfassung meiner Mitarbeiter
Exportieren in CSV/XLS
Siehe Kommentar



[Results] | [Archiv] Votes: 1158
Comments: 0