NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3965 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 2 از 2

موضوع: کمک فوری،ارتباط با ماژول sim900

  1. #1
    تازه وارد
    تاریخ عضویت
    May 2013
    نوشته ها
    1
    تشکر
    0
    تشکر شده 1 بار در 1 پست

    پیش فرض کمک فوری،ارتباط با ماژول sim900

    سلام دوستان
    پروژه پایان ترمم کنترل لوازم با اس ام اس هس با ماژول sim900 برنامه اش رو هم نوشتم اما اس ام اس اول رو که میفرستم میگیره و انجام میده اما دیگه مسیجا بعدی رو که میفرسم عکس العملی نشون نمیده ، برنامه ام رو میزارم از عزیزان خواهش میکنم یه نگاهیش بندازن ببینن مشکل از کجا میتونه باشه
    برنامه ام تو فایل پیوست هم هس
    $regfile = "m16def.dat"
    $crystal = 8000000
    $baud = 9600
    '================================================= ===================================
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.1 , Db4 = Portc.2 , Db5 = Portc.3 , Db6 = Portc.4 , Db7 = Portc.5
    '================================================= ===================================
    Enable Interrupts
    Enable Urxc
    '================================================= ====================================
    On Urxc Uart0
    Declare Sub Getsms
    Declare Sub Del
    Declare Sub Sendon
    Declare Sub Sendoff
    '================================================= ====================================
    Dim Text As String * 100 : Text = ""
    Dim Baf As String * 10 : Baf = ""
    Dim Reg As String * 40 : Reg = ""
    Dim H As String * 1 : H = ""
    Dim Tool As Byte : Tool = 0
    Dim A(100) As Byte
    Dim B As Byte : B = 0
    Dim C As Byte : C = 0
    Dim D As Byte : D = 0
    Dim E As Byte : E = 0
    Dim F As Byte : F = 0
    Dim G As Byte : G = 0
    Dim Flag As Byte : Flag = 0
    '================================================= ===================================
    Config Portd = Output
    '================================================= ===================================
    Cursor Off
    Cls
    '================================================= ===================================
    Main:
    Call Del
    Select Case Flag
    Case 1 :
    Locate 1 , 1
    Lcd " MOTOR IS ON"
    Locate 2 , 1
    Lcd " Waiting For SMS"
    Case 2 :
    Locate 1 , 1
    Lcd " MOTOR IS OFF"
    Locate 2 , 1
    Lcd " Waiting For SMS"
    Case Else :
    Locate 1 , 1
    Lcd " Waiting For SMS"
    End Select
    '================================================= ===================================
    Do
    Print "AT+CMGR=1"
    Waitms 400
    Call Getsms
    Tool = Len(text)
    Baf = ""
    For B = 1 To Tool
    H = Mid(text , B , 1)
    If H = "M" Then
    Baf = Baf + H
    C = B + 1
    H = Mid(text , C , 1)
    If H = "=" Then
    Baf = Baf + H
    D = C + 1
    H = Mid(text , D , 1)
    If H = "O" Then
    Baf = Baf + H
    E = D + 1
    H = Mid(text , E , 1)
    If H = "N" Then
    Baf = Baf + H
    End If
    End If
    End If
    End If
    Next B
    If Baf = "M=ON" Then
    Cls
    Locate 1 , 1
    Lcd "MOTOR ON"
    Set Portd.6
    Call Sendon
    Flag = 1
    Exit Do
    End If
    '================================================= ==================================
    Baf = ""
    For B = 1 To Tool
    H = Mid(text , B , 1)
    If H = "M" Then
    Baf = Baf + H
    C = B + 1
    H = Mid(text , C , 1)
    If H = "=" Then
    Baf = Baf + H
    D = C + 1
    H = Mid(text , D , 1)
    If H = "O" Then
    Baf = Baf + H
    E = D + 1
    H = Mid(text , E , 1)
    If H = "F" Then
    Baf = Baf + H
    F = E + 1
    H = Mid(text , F , 1)
    If H = "F" Then
    Baf = Baf + H
    End If
    End If
    End If
    End If
    End If
    Next B
    If Baf = "M=OFF" Then
    Cls
    Locate 1 , 1
    Lcd "MOTOR OFF"
    Reset Portd.6
    Call Sendoff
    Flag = 2
    Exit Do
    End If
    '================================================= ===================================
    Loop
    Waitms 250
    Goto Main
    End 'end program
    '================================================= ===================================
    Uart0:
    Incr G
    A(g) = Udr
    Return
    '================================================= ===================================
    Sub Getsms
    Text = ""
    For G = 1 To 100
    Text = Text + Chr(a(g))
    Next G
    End Sub
    '================================================= ===================================
    Sub Del
    Reg = "AT+CMGDA=" + Chr(34) + "DEL ALL" + Chr(34)
    Print Reg
    Waitms 500
    While G = 0
    nop
    Wend
    Call Getsms
    Locate 1 , 1
    Lcd Text
    Locate 2 , 1
    Lcd "DELLET ALL SMS"
    Wait 5
    Cls
    End Sub
    '================================================= ====================================
    Sub Sendon
    Print "AT"
    Waitms 500
    Print "AT+CMGF=1"
    Waitms 500
    Print "AT+CMGS=" ; Chr(34) ; "093********" ; Chr(34)
    Print "AT+CMGS=" ; Chr(34) ; "093********" ; Chr(34)
    Waitms 500
    Print " MOTOR IS ON"
    Waitms 600
    End Sub
    '================================================= ===================================
    Sub Sendoff
    Print "AT"
    Waitms 500
    Print "AT+CMGF=1"
    Waitms 500
    Print "AT+CMGS=" ; Chr(34) ; "093********" ; Chr(34)
    Print "AT+CMGS=" ; Chr(34) ; "093********" ; Chr(34)
    Waitms 500
    Print " MOTOR IS OFF"
    Waitms 600
    End Sub
    فايل هاي پيوست شده فايل هاي پيوست شده

  2. تشکرها از این نوشته :


  3. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  4. #2
    کاربر فعال
    تاریخ عضویت
    Mar 2013
    نوشته ها
    136
    تشکر
    87
    تشکر شده 70 بار در 47 پست

    پیش فرض

    دوست عزیز مشکل اینجاست که شما اول بیاید سلول های حافظه سیم کارت رو پاک کنید بعد دریافت کنید امکان داره شما وقتی دفعه اول برای ماژول SMS می فرستی ماژول SMS رو دریافت و در خانه یک حافظه ذخیره می کنه و شما داده ها رو از خانه شماره یک می خونی و متناظر با اون یه کاری انجام میدی دفعه بعد هم که شما برای ماژول SMS میفرستی در خانه شماره 2 ذخیره می شه و الی اخر ...
    دستور پاک کردن حافظه سیم کارت توسط ماژول :
    [PHP]

    print("AT+CMGD=0,4")
    [/PHP]

  5. تشکرها از این نوشته :


موضوعات مشابه

  1. نیاز به راهنمایی برای راه اندازی sim900 یا PIc
    توسط meysam.z در انجمن ماژول ها و دستگاه های مخابراتی
    پاسخ: 36
    آخرين نوشته: 24-10-2013, 21:33
  2. ارسال sms گروهی با sim900
    توسط x_vahid در انجمن ماژول ها و دستگاه های مخابراتی
    پاسخ: 2
    آخرين نوشته: 07-10-2013, 00:55

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •