سلام.وقت بخیر دوباره دوستان
ی مشکل عجیب برای خواندن از روی پورت سریال میکرویی که متصل شده به یک SIM900 برام پیش اومده :
پیش توضیحات : 1. برنامه نویسی بیسک
2. میکرو meg128
3. تغذیه lm317
4.وقفه ی سریال
حالا مشکل از اینجا شروع میشه که وقتی پیام میاد برای ماژول ، گاهی اوقات مثلا به جای اینکه متن CMTI کامل بیاد ، یا ناقص میاد و یا اینکه بین حروفش سیمبل هایی مثه قلب و ...
اینطور چیزا میاد و باتوجه به اینکه من با توجه به متن دقیق +CMTI چک می کنم و شرط دارم گاهی اوقات پیام ها رو از دست می دم
این بخاطر نویزه ؟ برنامه نویسیه ؟
اینم بگم وقتی پیغام CMTI کامل و دقیق میاد ومن متنو میخونم مشکلی اصلا به وجود نمیاد
اینم برنامه
اینم وقفه ی سریال
ی مشکل عجیب برای خواندن از روی پورت سریال میکرویی که متصل شده به یک SIM900 برام پیش اومده :
پیش توضیحات : 1. برنامه نویسی بیسک
2. میکرو meg128
3. تغذیه lm317
4.وقفه ی سریال
حالا مشکل از اینجا شروع میشه که وقتی پیام میاد برای ماژول ، گاهی اوقات مثلا به جای اینکه متن CMTI کامل بیاد ، یا ناقص میاد و یا اینکه بین حروفش سیمبل هایی مثه قلب و ...
اینطور چیزا میاد و باتوجه به اینکه من با توجه به متن دقیق +CMTI چک می کنم و شرط دارم گاهی اوقات پیام ها رو از دست می دم
این بخاطر نویزه ؟ برنامه نویسیه ؟
اینم بگم وقتی پیغام CMTI کامل و دقیق میاد ومن متنو میخونم مشکلی اصلا به وجود نمیاد
اینم برنامه
کد:
If Risim900 = 0 Then
Stop Timer0
If L = 1 Then
Wait 1
If Risim900 = 0 Then
Print #1 , "ATH"
Cls
Home
Lcd "ATH"
Initval = ""
Else
If Instr(initval , "+CDS") = 0 Then
Home
Cls
Lcd "Omad SMS"
Locate 2 , 1
Lcd Initval
Wait 1
Counterv(3) = 0 : Initval = ""
Hexinitval = 1
Gosub Smsreading
Counterv(3) = 0 : Initval = ""
Hexinitval = 1
M = 1
Else
Initval = ""
End If
End If
L = 0
End If
Else
Start Timer0
Initval = ""
If M = 1 Then
Lcd "Deletting Message Now "
M = 0
For C = 1 To 50 Step 1
Print #1 , "at+cmgd=" ; C
Waitms 100
Next
Lcd "Delete Message Ok"
Cls
Home : Lcd "**Ready To Use**"
End If
End If
کد:
Serrecieve:
L = 1
Raw = Waitkey(#1)
Initval = Initval + Chr(raw)
If Raw = 10 Then Incr I
If J = 1 Then
Initval1 = Initval1 + Chr(raw)
End If
If I = 2 And K = 1 Then J = 1
Return







دیدگاه