اطلاعیه

Collapse
No announcement yet.

ماژول sim 548

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    #16
    پاسخ : ماژول sim 548

    ببخشید این دیود زنرها واسه simholder نیازه؟
    5 ولت باید باشه؟

    دیدگاه


      #17
      پاسخ : ماژول sim 548

      با سلام اینم مدار, به زنرها احتیاجی نیست اما اگر بذاری بد نیست
      http://www.persiangig.com/pages/download/?dl=http://zavar.persiangig.com/document/Sim548.pdf

      دیدگاه


        #18
        پاسخ : ماژول sim 548

        خیلی ممنون جناب زوار

        دیدگاه


          #19
          پاسخ : ماژول sim 548

          سلام
          جناب زوار تو نقشه برای مدار 4 ولت مقدار مقاومت های R4,R5,R7 و ندادین
          همچنین دو مدار دیگه ای که واسه 3.3 و 5 ولت طراحی کردین مقدار بعضی مقاومت ها رو ندادین
          ممنون

          دیدگاه


            #20
            پاسخ : ماژول sim 548

            سلام
            خروجی gsm و gps رو مستقیم بدم به میکرو؟؟
            البته ماژول من sim548c هست که 60 pin داره.
            ممنون

            دیدگاه


              #21
              پاسخ : ماژول sim 548

              ماژول من 80 پایه بود بله مستقیم بدید به میکرو باود ریت را هم 4800 در نظر بگیرید سوالی باشه در خدمتم

              دیدگاه


                #22
                پاسخ : ماژول sim 548

                یعنی منطق sim548 ttl هست؟
                پس این برنامه رو که از دوست خوبمون epauon هست رو پروگرم کردم اما هیچ sms دریافت نکردم. مشکل کجا می تونه باشه؟
                در ضمن من قسمت gps و gsm رو جداگانه با پورت com جواب گرفتم. (قسمت شماره هم تو برنامه درست نوشتم.)

                $regfile = "m32def.dat" ' specify the used micro
                $crystal = 11000000
                $baud = 9600 ' used crystal frequency ' use baud rate

                Config Pinb.0 = Output
                Portb.0 = 0

                Wait 2
                Portb.0 = 1
                Wait 2
                Portb.0 = 0

                Dim C As Word
                Dim B As Word
                Dim B1 As Byte
                Dim S As Byte
                Dim S1 As Byte
                Dim R As Byte
                Dim U As Byte
                Dim N As String * 20
                Dim N1 As String * 20
                Dim N2 As String * 6
                Dim N3 As String * 10
                Dim N4 As String * 10
                Dim Mn As String * 30
                Dim Nm As String * 55
                Dim Cc As String * 10
                Dim Ccc As String * 10
                Dim A As Single
                Dim N5 As String * 3
                Dim N6 As String * 3
                Dim N11 As String * 5
                Dim N22 As String * 5
                Dim N10 As String * 1
                Dim N20 As String * 1



                Do
                J:
                Portb.0 = 0
                Input Mn
                N = Mid(mn , 2 , 5)
                If N = "+CLIP" Then
                N1 = Mid(mn , 19 , 4)
                B = Val(n1)
                If B = 3903 Then
                Portb.0 = 1
                Wait 3
                Open "coma.0:4800,8,n,1" For Input As #1
                U = 0
                Do 'gps
                U = U + 1
                Input #1 , Nm
                N = Mid(nm , 2 , 6)
                If N = "$GPRMC" Then N4 = Mid(nm , 47 , 5)
                If N = "$GPGSV" Then N6 = Mid(nm , 13 , 2)
                If N = "$GPGGA" Then
                N1 = Mid(nm , 20 , 4)
                N11 = Mid(nm , 25 , 4 )
                N10 = Mid(nm , 30 , 1) 'N
                C = Val(n11)
                A = C * 0.006
                Cc = Fusing(a , "#.##&quot
                N2 = Mid(nm , 32 , 5)
                N22 = Mid(nm , 38 , 4 )
                N20 = Mid(nm , 43 , 1) 'E
                C = Val(n22)
                A = C * 0.006
                Ccc = Fusing(a , "#.##&quot
                N5 = Mid(nm , 47 , 2)
                A = Val(n4)
                A = A * 1.852
                B = Round(a)
                End If
                Loop Until U > 25
                Close #1

                Print "at+cmgs=" ; Chr(34) ; "091xxxxxxx" ; Chr(34)
                Wait 2
                Print N1 ; Chr(39) ; Cc ; Chr(34) ; N10 ; Spc(2) ; N2 ; Chr(39) ; Ccc ; Chr(34) ; N20 ; Spc(2) ; N5 ; Spc(2) ; N6 ; Spc(2) ; B ; "km/h Google Earth" ; Chr(26)
                Wait 12

                Goto J
                Else
                Goto J
                End If
                End If
                If N = "+CMTI" Then
                N1 = Mid(mn , 14 , 2)
                Wait 1
                S1 = 0
                Jjj:
                S = 0
                S1 = S1 + 1
                If S1 > 2 Then Goto J
                Print "AT+CMGR=" ; N1
                Portb.0 = 0
                Jj:
                Input N3
                S = S + 1
                If S > 5 Then Goto Jjj
                N4 = Mid(n3 , 2 , 2)
                If N4 = "64" Then
                N2 = Mid(n3 , 4 , 1)
                '648
                B = Val(n2)
                For R = 1 To B
                Wait 1
                Portb.0 = 1
                Wait 1
                Portb.0 = 0
                Next
                Print "at+cmgd=" ; N1
                Wait 1
                Goto J
                Else
                Print "at+cmgd=" ; N1
                Wait 1
                Goto Jj
                End If
                Else
                Goto J
                End If

                Loop

                دیدگاه


                  #23
                  پاسخ : ماژول sim 548

                  اجازه بدید بررسی کنم البته من خودمم در گرفتن sms مشکل داشتم

                  دیدگاه


                    #24
                    پاسخ : ماژول sim 548

                    با سلام اگر میخواهید sms را بگیرید باید از وقفه سریال استفاده کنید تا دیتا از دست نره این دستور را هم اینجوری تست کنید ببینید چی میشه
                    کد:
                    Print "AT+CMGR= N1"

                    دیدگاه


                      #25
                      پاسخ : ماژول sim 548

                      مطمئن هستین نباید از max232 استفاده نکنم؟
                      در مورد برنامه اینقد سربسته جواب ندین لطفا من به برنامه نویسی مسلط نیستم.

                      دیدگاه


                        #26
                        پاسخ : ماژول sim 548

                        نوشته اصلی توسط hamids24
                        مطمئن هستین نباید از max232 استفاده نکنم؟
                        در مورد برنامه اینقد سربسته جواب ندین لطفا من به برنامه نویسی مسلط نیستم.
                        من خودم از max232 استفاده نکردم فکر نکنم احتیاج باشه شما الان دقیقا بگو از کدوم قسمتها جواب گرفتی و درکدوم قسمت مشکل داری و مشکلت چیه من خودمم درگیر کارم اما سعی میکنم کمکت کنم

                        دیدگاه


                          #27
                          پاسخ : ماژول sim 548

                          الان من با پورت کامپیوتر تونستم sms بفرستم.
                          همچنین از قسمت gps دیتا گرفتم.
                          حالا می خوام اطلاعات که از gps گرفتم(مختصات) رو به شماره sms کنم.
                          حالا باید از میکرو استفاده کنم.
                          حالا کمک؟

                          دیدگاه


                            #28
                            پاسخ : ماژول sim 548

                            تونستید با میکرو sms بفرستید؟

                            دیدگاه


                              #29
                              پاسخ : ماژول sim 548

                              نه یک برنامه تو سایت نوشته بود پروگرم کردم جواب نداد
                              نمیدونم با max بدون max بازم جواب نداد.
                              شما برنامه sms ندارین که جواب گرفته باشین؟

                              دیدگاه


                                #30
                                پاسخ : ماژول sim 548

                                اینم برنامه
                                کد:
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\/
                                $regfile "m8def.dat"
                                $crystal = 11059200
                                $baud #1 = 9600
                                $baud #2 = 9600
                                $baud = 4800
                                Open "comb.0:9600,8,n,1" For Output As #1
                                Open "comb.1:9600,8,n,1" For Input As #2
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| SUBs ----------------------------------------------------------->>>>>>>>>>>>>>
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                'Declare Sub Anim
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| CONFIGURATIONs ------------------------------------------------->>>>>>>>>>>>>>
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                Config Lcd = 16 * 2
                                Config Lcdpin = Pin , Db7 = Portc.0 , Db6 = Portc.1 , Db5 = Portc.2_
                                              , Db4 = Portc.3 , E = Portc.4 , Rs = Portc.5
                                'Config Porta.2 = Output
                                Config Timer1 = Timer , Prescale = 8
                                'Start Timer1
                                
                                Cursor Off Noblink
                                Cls
                                
                                Config Single = Scientific , Digits = 2
                                
                                Config Pind.2 = Input
                                Config Int1 = Falling
                                
                                
                                
                                
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| INTRRUPTs ------------------------------------------------------>>>>>>>>>>>>>>
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                Enable Interrupts
                                Enable Urxc
                                On Urxc Serial_data
                                
                                ' ///////////////////////////////////////////////////////////////////////////////
                                
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| DIMANSIONs ----------------------------------------------------->>>>>>>>>>>>>>
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                Dim Flag As Bit , Flag_sms As Bit
                                Dim Data_s As Byte
                                Dim Char As String * 1
                                Dim Gps_data As String * 100
                                Dim Gps As String * 100
                                Dim A As Bit , B As Bit , C As Bit , D As Bit , E As Bit , F As Bit , G As Bit , Cl1 As Bit , Cl2 As Bit
                                Dim Utc As String * 10
                                Dim Lat As String * 9 , North As String * 20
                                Dim Lon As String * 10 , East As String * 20
                                Dim Sms As String * 250 : Sms = ""
                                Dim Sms1 As Byte
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| MACROS --------------------------------------------------------->>>>>>>>>>>>>>
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                
                                Macro Split_data
                                If Flag = 0 Then
                                  Utc = Mid(gps , 2 , 9)
                                  'Locate 1 , 1
                                  'Lcd Utc
                                  Lat = Mid(gps , 14 , 9)
                                  Locate 2 , 1
                                  Lcd Lat
                                  Lon = Mid(gps , 26 , 9)
                                  Locate 1 , 1
                                  Lcd Lon
                                 End If
                                End Macro
                                
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| MAIN ----------------------------------------------------------->>>>>>>>>>>>>>
                                
                                Cls
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                Flag = 0
                                Do :
                                   Split_data
                                   'Home
                                   If Pind.2 = 0 Then
                                Disable Urxc
                                Print #1 , "at"
                                Waitms 500
                                Print #1 , "at+cmgf=1"
                                Waitms 500
                                Print #1 , "AT+CMGS=" ; Chr(34) ; "0912*******" ; Chr(34)
                                Waitms 500
                                Print #1 , Lat ; Chr(26)
                                Waitms 500
                                Print #1 , "AT+CMGS=" ; Chr(34) ; "0912*******" ; Chr(34)
                                Waitms 500
                                Print #1 , Lon ; Chr(26)
                                Flag = 1
                                End If
                                
                                If Flag = 1 Then
                                Wait 10
                                'Print #1 , "AT+CMGR=1"
                                Sms = ""
                                
                                  Do
                                  Disable Urxc
                                  If Sms = "" Then Print #1 , "AT+CMGR=1"
                                    'Waitms 500
                                   Data_s = Inkey(#2)
                                
                                   Select Case Data_s
                                
                                     Case 0:
                                
                                     Case 13 :
                                      If Sms <> "" Then Exit Do
                                     Case 10 :
                                      If Sms <> "" Then Exit Do
                                      Case Else
                                      Sms = Sms + Chr(data_s)
                                   End Select
                                  Loop
                                  Sms1 = Len(sms)
                                
                                If Len(sms) > 30 Then
                                      Locate 1 , 1
                                      Cls
                                      Lcd "lock"
                                      If Sms <> "" Then Print #1 , "AT+CMGD=1"
                                      Flag_sms = 0
                                      Sms = ""
                                     End If
                                     'Enable Urxc
                                End If
                                Loop
                                End
                                
                                ' ///////////////////////////////////////////////////////////////////////////////
                                '| SUB ROUTINE ---------------------------------------------------->>>>>>>>>>>>>>
                                ' \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
                                '----------------=============== CHECK POSITION ===============-----------------
                                
                                '--------================= GET $GPGGA DATA FROM MODULE =================--------
                                Serial_data:
                                  Char = Chr(udr)
                                  If Char <> "" Then
                                   If A = 0 And Char = "$" Then A = 1
                                   If A = 1 And Char = "G" Then B = 1
                                   If B = 1 And Char = "P" Then C = 1
                                   If C = 1 And Char = "G" Then D = 1
                                   If D = 1 And Char = "G" Then E = 1
                                   If E = 1 And Char = "A" Then F = 1
                                   If A = 1 And B = 1 And C = 1 And D = 1 And E = 1 And F = 1 Then
                                     If Len(gps_data) < 72 Then
                                      Gps_data = Gps_data + Char
                                     Elseif Len(gps_data) = 72 Then
                                      Gps = Left(gps_data , 71)
                                     End If
                                   End If
                                  End If
                                  If F = 1 And Udr = 13 Then
                                   A = 0 : B = 0 : C = 0 : D = 0 : E = 0 : F = 0 : Gps_data = ""
                                  End If
                                Return

                                دیدگاه

                                لطفا صبر کنید...
                                X