Navigation: Befehlsübersicht >

Seriell-IO

Diese Seite drucken
Vorherige Seite Nächste Seite
Zurück zur Kapitelübersicht

FG Mit diesem Befehl können Daten über die serielle Schnittstelle ausgetauscht werden.

 

Die gewünschte Schnittstelle und Übertragungsgeschwindigkeit können beim Aufruf dieses Befehls definiert werden, wobei die in der Systemsteuerung vorgegebenen Standardwerte verwendet werden, wenn keine andere Baudrate definiert wird.

Im Eintrag Baudrate können zudem noch optional weitere Angaben zur Übertragungsart angegeben werden, wobei die Einträge mit Komma getrennt werden und einzelne Einträge beliebig weggelassen werden. Die Angaben in diesem Feld können folgendermaßen lauten: <Baudrate>,<Parity>,<Bits>,<Stoppbits>, die übliche Einstellung ist 9600,n,8,1. Die Einträge bedeuten:

<Baudrate>Bits pro Sekunde
<Parity>Parität: n=keine, o=Odd (ungerade), e=Even (gerade), s=Space
<Bits>Datenbits pro Zeichen
<Stoppbits>Länge des Stoppbits: 1, 1.5 oder 2

 

Wird die Angabe der Schnittstelle weggelassen, wird COM1 verwendet.

 

Empfang:

Bei Angabe einer Empfangslänge wird diese Anzahl Zeichen eingelesen, andernfalls eine ganze Zeile.

Wird unter Warten auf ein Text eingetragen, wird so lange empfangen, bis der angegebene Text empfangen wurde.

Es kann auch eine Timeout-Zeit in Sekunden angegeben werden, die maximal auf den Empfang der gewünschten Daten gewartet werden soll. Nach Ablauf dieser Zeit wird der Empfang abgebrochen und als Ergebnis ein leerer Text in die Variable gesetzt. Dies kann dann abgefragt werden.

 

Senden:

Gesendet wird der als Sendetext eingetragene Text. Optional kann durch Aktivieren des Schalters CR/LF anhängen ein Zeilenendezeichen hinter dem Text gesendet (entspricht ^M am Ende). Dies muss beispielsweise bei der Übertragung eines AT-Befehls für Modems am Ende der Kommandozeile eingesetzt werden.

 

Die Option Erst in Modem-Befehlsmodus schalten! bewirkt das Umschalten während einer Datenübertragung in den Befehlsmodus des Modems (1 Sekunde Pause, "+++", 1 Sekunde Pause). Dies ist etwa notwendig, wenn während der Verbindung per ATH0-Befehl aufgelegt werden soll.

 

Beim Senden bzw. Warten auf kann das Zeilenende-Steuerzeichen (CR/LF) auch durch die Zeichenkombination ^M, TAB durch ^T oder Escape durch ^E in den Text eingefügt werden.

Weitere Sonderzeichen können mit dem Platzhalter [cX.ASCII(x)] eingesetzt werden.

 

Kombination:

Es kann auch ein Text gesendet und (unmittelbar danach) empfangen werden. Hierdurch kann eine schnell erfolgende Antwort direkt eingelesen werden.

 

Port

Normalerweise wird nach jedem Senden/Empfangen der serielle Port wieder geschlossen. Mit den untersten Optionen kann dies verhindert bzw. nach Abschluss mehrerer Operationen bei offenem Port dieser wieder explizit geschlossen werden. Dieses Offenhalten der Ports kann für einige Zielgeräte erforderlich sein.

Bei Abbruch bzw. Beenden des Skripts wird die serielle Schnittstelle automatisch geschlossen.

 

Ist unter Aufruf bei Empfang eine Marke angegeben, wird dieses Unterprogramm beim Empfang von Daten aufgerufen.

 

Platzhalter

Über die SeriellIO-Platzhalter kann auch auf die Kommunikation zugegriffen werden.

 

Beispiel:

 

***  Modem an COM-Ports suchen

Fehler/Debug  Fehler ignorieren

Schleife Ab   ([Port]  von 1  bis 4)

Status  "Suche Modem an COM[Port]:"

 

***  "Attention" senden und Antwort abwarten

   Seriell-IO  Senden: 'AT'; Empfang in [Daten] (COM[Port]:, Warten auf 'OK', Timeout in 3 Sek., CR/LF anhängen)

 

Wenn  Unwahr:  Text leer '[Daten]'

     Seriell-IO  Senden: 'AT+GMM'; Empfang in [Daten] (COM[Port]:, Warten auf 'OK', Timeout in 3 Sek., CR/LF anhängen)

Meldung  "Modem gefunden an COM[Port]:¶[Daten]" (Titel: 'Info', 'OK')

Beende  Skript

Ende Wenn

 

Schleife Bis

Meldung  "Es konnte kein Modem gefunden werden!" (Titel: 'Achtung!', 'OK')

Status  Fenster entfernen

 

Dieses Beispielskript sucht an den COM-Ports nach einem Modem. Während der Suche wird der Benutzer durch eine Statusanzeige informiert. Das Suchergebnis wird durch eine Meldung angezeigt.

 

 

 


cX-Webseite: http://www.clickexe.net