سلام.وقت بخیر دوباره دوستان
ی مشکل عجیب برای خواندن از روی پورت سریال میکرویی که متصل شده به یک 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
دیدگاه