ehsanocx
چهارشنبه 30 تیر 1389, 17:00 عصر
سلام
دوستان من برنامه نوشتم که با modem GSM SIM300C
هم بتونم sms ارسال کنم , و هم دریافت کنم sms
اما مشکل اینجاست که اس ام اس دریافت نمی کنه . اول خیال می کردم که مشکل از GSM اما GSM رو با hyperterminal تست کردم هم ارسال می کنه و همی دریافت و هیچ مشکلی نداره. حالا می خوام بدونم ایراد کار از کجاست؟ بعضی وقت ها هی ارتباط با دستگاه رو وصل می کنم و همو ن لحظه قطع می کنم یک تیکه از متن اس ام اس دریافتی رو نمایش میده . اما اینم یک در 1000 نمایش میده و فایده ای نداره. ایراد کار کجاست؟
ارتباط با پورت :
()Private Sub CmdEtesalPort_Click
On Error Resume Next
If ClosePort Then
"قطع"=CmdEtesalPort.Caption
Combo1.Text & "اتصال به پورت"= lblEtesal.Caption
Frame1.Enabled = True
Frame2.Enabled = True
MSComm1.PortOpen = False
(("","MSComm1.CommPort = Val(Replace(LCase$(Combo1.Text), "com
MSComm1.PortOpen = True
ClosePort = Not ClosePort
"MSComm1.Settings = "19200,n,8,1
MSComm1.Handshaking = comNone
Else
"اتصال"=CmdEtesalPort.Caption
MSComm1.PortOpen = False
ClosePort = Not ClosePort
Frame1.Enabled = False
Frame2.Enabled = False
"قطع از پورت"=lblEtesal.Caption
End If
End Sub
دریافت SMS
MSComm1.Output = "at" & Chr(13) & vbCrLf
MSComm1.Output = "at+cmgf=1" & Chr(13) & vbCrLf
MSComm1.Output = "AT+CSCA=" & Chr(34) & "09350001400" & Chr(34) & Chr(13) & Chr(10) & vbCrLf
Recieved = ""
MSComm1.Output = "at+cmgl=all" & Chr(13) & vbCrLf ' & 'Chr(34) & "ALL" & Chr(34) & Chr(13) & Chr(10) & vbCrLf 'List Messages
MSCOMM
Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
Recieved = Recieved + MSComm1.Input
Text1.Text = Recieved
End If
End Sub
فرم Load
Private Sub Form_Load()
'********* Date & Time ****************
lblDate.Caption = To_Hejri(Date, 3)
lblTime.Caption = Time
'********** Show Name Port ************
ClosePort = True
'******* Connection Port *************
Dim i%
On Error Resume Next
For i = 1 To 255
Err.Clear
MSComm1.CommPort = i
MSComm1.PortOpen = True
If Err = 0 Then Combo1.AddItem "COM" & CStr(i)
MSComm1.PortOpen = False
Next
'**************************************
Combo1.ListIndex = 0
End Sub
دوستان من برنامه نوشتم که با modem GSM SIM300C
هم بتونم sms ارسال کنم , و هم دریافت کنم sms
اما مشکل اینجاست که اس ام اس دریافت نمی کنه . اول خیال می کردم که مشکل از GSM اما GSM رو با hyperterminal تست کردم هم ارسال می کنه و همی دریافت و هیچ مشکلی نداره. حالا می خوام بدونم ایراد کار از کجاست؟ بعضی وقت ها هی ارتباط با دستگاه رو وصل می کنم و همو ن لحظه قطع می کنم یک تیکه از متن اس ام اس دریافتی رو نمایش میده . اما اینم یک در 1000 نمایش میده و فایده ای نداره. ایراد کار کجاست؟
ارتباط با پورت :
()Private Sub CmdEtesalPort_Click
On Error Resume Next
If ClosePort Then
"قطع"=CmdEtesalPort.Caption
Combo1.Text & "اتصال به پورت"= lblEtesal.Caption
Frame1.Enabled = True
Frame2.Enabled = True
MSComm1.PortOpen = False
(("","MSComm1.CommPort = Val(Replace(LCase$(Combo1.Text), "com
MSComm1.PortOpen = True
ClosePort = Not ClosePort
"MSComm1.Settings = "19200,n,8,1
MSComm1.Handshaking = comNone
Else
"اتصال"=CmdEtesalPort.Caption
MSComm1.PortOpen = False
ClosePort = Not ClosePort
Frame1.Enabled = False
Frame2.Enabled = False
"قطع از پورت"=lblEtesal.Caption
End If
End Sub
دریافت SMS
MSComm1.Output = "at" & Chr(13) & vbCrLf
MSComm1.Output = "at+cmgf=1" & Chr(13) & vbCrLf
MSComm1.Output = "AT+CSCA=" & Chr(34) & "09350001400" & Chr(34) & Chr(13) & Chr(10) & vbCrLf
Recieved = ""
MSComm1.Output = "at+cmgl=all" & Chr(13) & vbCrLf ' & 'Chr(34) & "ALL" & Chr(34) & Chr(13) & Chr(10) & vbCrLf 'List Messages
MSCOMM
Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = comEvReceive Then
Recieved = Recieved + MSComm1.Input
Text1.Text = Recieved
End If
End Sub
فرم Load
Private Sub Form_Load()
'********* Date & Time ****************
lblDate.Caption = To_Hejri(Date, 3)
lblTime.Caption = Time
'********** Show Name Port ************
ClosePort = True
'******* Connection Port *************
Dim i%
On Error Resume Next
For i = 1 To 255
Err.Clear
MSComm1.CommPort = i
MSComm1.PortOpen = True
If Err = 0 Then Combo1.AddItem "COM" & CStr(i)
MSComm1.PortOpen = False
Next
'**************************************
Combo1.ListIndex = 0
End Sub