Guidobald
08.08.2007, 18:44
Hallo
Ich hoffen jemand kann mir sagen was ich falsch mache. Ich will mit einem GSM Modem SMS verschicken. Senden geht auch alles ganz prima ich möchte nun aber gerne die Antwort des Modems auswerten. Ich habe den Großteil aus einem Buch abgeschrieben muss aber noch ein Fehler drinn sein es geht einfach noch nicht.
Vielen dank
$crystal = 4000000
$baud = 9600
$regfile "m16def.dat"
Declare Function Read_gsm(byval Mask As String) As Byte
Config Serialin = Buffered , Size = 40
Enable Interrupts
Dim Status As Byte
Config Porta = Output
Config Portc = Output
Toggle Porta.0 'GSM Modem einschalten
Waitms 1000
Toggle Porta.0
Do
Print "AT"
Status = Read_gsm( "OK")
If Status <> 0 Then
Portc.6 = 1
Wait 1
Portc.6 = 0
Else
Portc.7 = 1
Wait 1
Portc.7 = 0
End If
Wait 4
Loop
End
Function Read_gsm(byval Mask As String) As Byte
Local In$ As String * 20
Local C As Byte
In$ = ""
Wait 1
While Ischarwaiting() <> 0
C = Inkey()
In$ = In$ + Chr(c)
Wend
Read_gsm = Instr(in$ , Mask)
End Function
Ich hoffen jemand kann mir sagen was ich falsch mache. Ich will mit einem GSM Modem SMS verschicken. Senden geht auch alles ganz prima ich möchte nun aber gerne die Antwort des Modems auswerten. Ich habe den Großteil aus einem Buch abgeschrieben muss aber noch ein Fehler drinn sein es geht einfach noch nicht.
Vielen dank
$crystal = 4000000
$baud = 9600
$regfile "m16def.dat"
Declare Function Read_gsm(byval Mask As String) As Byte
Config Serialin = Buffered , Size = 40
Enable Interrupts
Dim Status As Byte
Config Porta = Output
Config Portc = Output
Toggle Porta.0 'GSM Modem einschalten
Waitms 1000
Toggle Porta.0
Do
Print "AT"
Status = Read_gsm( "OK")
If Status <> 0 Then
Portc.6 = 1
Wait 1
Portc.6 = 0
Else
Portc.7 = 1
Wait 1
Portc.7 = 0
End If
Wait 4
Loop
End
Function Read_gsm(byval Mask As String) As Byte
Local In$ As String * 20
Local C As Byte
In$ = ""
Wait 1
While Ischarwaiting() <> 0
C = Inkey()
In$ = In$ + Chr(c)
Wend
Read_gsm = Instr(in$ , Mask)
End Function