اطلاعیه

Collapse
No announcement yet.

کمک فوری درباره استفاده از دیتای خروجی سریال ماژول sim300

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

    کمک فوری درباره استفاده از دیتای خروجی سریال ماژول sim300

    سلام دوستان من میخام خروجی ماژول sim300 که همه دیتاهارو تونستم بگیرم و تقریبا همه چیز اوکی ولی موقعی که میخام اطلاعات رو بگیرم ومثلا یه دستور if مقایسش کنم با مقدار مطلوب و فرضا یه رله رو روشن کنم
    خروجی مودمم وقتی که اس ام اس میدم بهش یه همچین چیزی میده
    +CMT: "+98911.....46","no name","12/08/23,0004+14"
    1
    همینطور که میبینید اول یسری اطلاعات از شماره و اسم و ساعت و تاریخ میده بعدش یه خط پایین تر کاراکتری رو که ارسال کردیم نشون میده
    مثلا من عدد یک رو ارسال کردم
    اما تو برنامه نویسیم مشکل دارم طوری که بعضی وقتا رله روشن میشه بعضی اوقات نه
    اینم برنامش

    $regfile = "m8def.dat"
    $crystal = 8000000
    $baud = 9600

    '~~~~~~~~~~~~~~~~~~~~~~~~~~ Configurations ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db7 = Portb.1 , Db6 = Portb.2 , Db5 = Portb.3 , Db4 = Portb.4 , E = Portb.5 , Rs = Portc.0

    Config Pind.2 = Input
    Config Portc.3 = Output
    Config Portc.4 = Output
    Config Portc.5 = Output
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Variable ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Dim B As Byte
    Dim Sms As String * 250 : Sms = ""
    Dim Smsf As String * 250 : Smsf = ""
    Dim S As Byte
    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ initionaliz ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    S = 0
    Cls
    Cursor Off
    Home
    Lcd "Get SMS..."

    Waitms 1000

    Cls

    '~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Main program ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    Do

    If Pind.2 = 0 Then

    Print "AT+CMGR=1"

    Sms = ""

    Do

    B = Inkey()

    Select Case B

    Case 0:

    Case 13 :

    If Sms <> "" Then Exit Do

    Case 10 :

    If Sms <> "" Then Exit Do

    Case Else

    Sms = Sms + Chr(b)
    Sms = Right(sms , 1)


    '***************************************
    If Sms = "3" Then
    Set Portc.3
    Lcd "3"
    Wait 1
    Cls
    End If


    If Sms = "2" Then
    Set Portc.4
    Lcd "2"
    Wait 1
    Cls
    End If


    If Sms = "1" Then
    Set Portc.5
    Lcd "1"
    Wait 1
    Cls
    End If
    '***************************************

    End Select

    Loop

    End If


    Loop

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