اطلاعیه

Collapse
No announcement yet.

معمای دریافت پیام ناخوانا در SIM900

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

    #16
    پاسخ : معمای دریافت پیام ناخوانا در SIM900

    خواهش میکنم.
    ببینید همونطور که گفتم،وقتی شما یه کاراکتر رو میفرستید مثلا A، به جای اینکه خود کاراکتر رو به تنهایی بفرسته دو کاراکتر اضافه که بی معنی هم هست بهش اضافه میکنه،یعنی اگر بخواد A رو بفرسته(A به هگز میشه 41)، 004100 رو میفرسته. اگه توجه کنی اون کاراکتر های اضافه همون 00 ها هستند که در چپ و راست کاراکتر اصلی قرار داده شده.
    خوشبختانه چون کاراکتر های اضافه شده 00 میباشند به راحتی میتونی اونا رو برداری و به داده اصلی برسی.
    فرض کن که داده های دریافتی رو تو یه رشته ذخیره کردی مثل کد زیر:
    [code=c]buff[length] = 00410057003A0031003200330034005B004D003D0032003B00 52003D0034003B00490044003D0031003B00530054003D0030 003B005D000A[/code]
    حالا باید از تو این بافر کدهایی که 00 هستند رو حذف کنی، فقط این نکته مهمه که کد 00 رو که میخواهید حذف کنید مربوط به کاراکترهای سربار باشه نه داده های اصلی و چون الگوش مشخصه کار راحتیه،مثلا اگه بخوای A یا 41 رو پیدا کنی با اسکن کردن متغییر buff متوجه میشی که A تو خانه یک متغیر قرار داره یعنی:
    [code=c]buff[1] = 'A' [/code]
    و اگه بخوای W رو پیدا کنی میشه:
    [code=c]buff[3] = 'W'[/code]
    و برای بقیه هم به همین شکل میتونی عمل کنی.
    توجه کنید که این روش فقط برای الگو دادن به شما میباشد و میتونید با یک روش این عمل رو اتوماتیک انجام بدید.
    اگر بد توضیح دادم ببخشید.
    [img width=281 height=100]http://cdn.persiangig.com/preview/acPBCNLNNr/images.jpg[/img]

    دیدگاه


      #17
      پاسخ : معمای دریافت پیام ناخوانا در SIM900

      بازم سپاس.

      دیدگاه

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