PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RS232 auswerten: String enthält... Wie geht das??



dl1akp
20.09.2006, 08:48
Hallo Leute,

habe ein altes GSM Modem über rs232 mit M8 verbunden. Befehle, SMS senden, anrufen, geht alles super.

allerdings kann ich die Befhele VOM MODEM nicht auswerten.
Das anzeigen geht.
Hier mal ein Codeschnipsel:

Do
Lcd S
If S => "RING" Then
Print "ATA"
Cls
Lcd "angenommen"
End If
Waitms 300
Loop

Soll heißen: wenn über RS232 in den Daten die Zeichenkette "RING" enthalten ist, soll Modem rangehen (ATA). Das passiert aber nicht.

Ich denke meine Auswertung ist falsch, weil das RING mit anderen Zeichen zusammen ja angezeigt wird.

Weis jemand Rat, wie ich die Abfrage hinbekomme??

Danke, Andreas

unathome
20.09.2006, 09:20
Hallo,

ich gehe mal davon aus, das Dein Modem nicht nur den String "RING" zurückgibt, sondern das der String insgesamt länger ist.
Du musst nach dem String im String suchen.
Das geht mit dem Befehl

Pos = Instr(s , "RING")

In der Variablen Pos steht dann die Stelle im Modemstring and der RING steht. Ist "RING" nicht vorhanden, wird in Pos 0 stehen.

Ich hoffe das war das was Du gesucht hast.

Gruß
Uwe

dl1akp
20.09.2006, 09:37
@ unathome:

Ja, super, genau das wars!!!
Danke!

Und ja, es werden mehr Zeichen zurückgegeben.
Für mich sind aber immer nur bestimmte strings von Interesse, wie zum Beispiel "RING", "NO CARRIER" o.ä

Problem damit gelöst.
Andreas

Andree-HB
20.09.2006, 10:16
...darf ich mal fragen, was für ein Modem Du nimmst ?
Sendest Du, wie bei den Siemens-Geräten, nur vorgefertigte SMS im Ausgangskorb ?

...oder jeden beliebigen, vom AVR generierten Text ?

dl1akp
20.09.2006, 12:15
@Andree-HB

... ich nehme ca. 10 Jahre alte Modems FALCOM A1, die haben wir hier auf Arbeit noch rumliegen. Versuche gerade eine sinnvolle Verwendung dafür zu finden.

ich kann senden was ich will, an wen ich will.
Die Daten, sms, nummern etc. sende ich wie at-befehle an das modem.
Man kann so wirklich ALLES steuern.
Auch anrufen, Anrufe annehmen, Sprachspeicher-Ansagen etc. sind kein Problem.

beantwortet das deine Frage?

Gruß, Andreas