نمایش نتایج: از 1 به 10 از 107
Like Tree36 لایک

موضوع: کد دریافت و ارسال sms بوسیله sim800L

Hybrid View

  1. #1
    مدیر گروه
    تاریخ عضویت
    Nov 2013
    محل سکونت
    ایران
    نوشته ها
    4,064
    کد کامل
    کد:
    #include <SoftwareSerial.h>
    SoftwareSerial mySerial(2, 3); // RX, TX
    #define GSMReset 5
    void setup() {
      Serial.begin(19200);  //Скорость порта для связи Arduino с компьютером
      Serial.println("Goodnight moon!");
      mySerial.begin(19200);  //Скорость порта для связи Arduino с GSM модулем
      pinMode(GSMReset, OUTPUT);
      digitalWrite(GSMReset, HIGH);
      delay(10);
      digitalWrite(GSMReset, LOW);
      delay(100);
      digitalWrite(GSMReset, HIGH);
      delay(7000);
     // sendCommand("AT+IPR=2400", 200);
     // mySerial.begin(2400);
      sendCommand("AT+CFUN=1", 2000);
      sendCommand("AT+CREG?", 100);
      //  sms("salam","+980000000000");
      sendCommand("ATD00000000000;", 100);
      //ensms();
      //delay(500);
      //farsisms();
    }
    
    void loop() {
      readSerial();
    
    }
    
    
    void readSerial() {
      while (mySerial.available())
        Serial.write(mySerial.read());
    
    }
    
    void sendCommand(String cmd, int t)
    {
      mySerial.println(cmd);
      delay(t);
      readSerial();
    }
    void ensms()
    {
      mySerial.println("AT+CSCS=\"IRA\"");
      delay(200);
      readSerial();  
      mySerial.println("AT+CMGF=1");
      delay(200);
      readSerial();
      mySerial.println("AT+CSMP=17,167,0,0");
      delay(200);
      readSerial();
      mySerial.println("AT+CMGS=\"+980000000000\""); 
      delay(500);
      readSerial();
      mySerial.print("Salam\r\n AftabRayaneh !\x1A");
    }
    
    void farsisms()
    {
      //mySerial.println("AT+CSCS=\"UCS2\"");
      mySerial.println("AT+CSCS=\"HEX\"");
      delay(100);
      readSerial();
      mySerial.println("AT+CMGF=1");
      delay(100);
      readSerial();
      mySerial.println("AT+CSMP=17,167,0,8");
      delay(100);
      readSerial();
      mySerial.println("AT+CMGS=\"+980000000000\""); 
      delay(500);
      readSerial();
      mySerial.print("0633064406270645060C002006220641062A0627062800200631062706CC062706460647\x1A");
    }
    ویرایش توسط magmagmary : 12-05-2015 در ساعت 01:33 PM

  2. #2
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24

    مشگل

    نقل قول نوشته اصلی توسط magmagmary نمایش پست ها
    کد کامل
    کد:
    #include <SoftwareSerial.h>
    SoftwareSerial mySerial(2, 3); // RX, TX
    #define GSMReset 5
    void setup() {
      Serial.begin(19200);  //Скорость порта для связи Arduino с компьютером
      Serial.println("Goodnight moon!");
      mySerial.begin(19200);  //Скорость порта для связи Arduino с GSM модулем
      pinMode(GSMReset, OUTPUT);
      digitalWrite(GSMReset, HIGH);
      delay(10);
      digitalWrite(GSMReset, LOW);
      delay(100);
      digitalWrite(GSMReset, HIGH);
      delay(7000);
     // sendCommand("AT+IPR=2400", 200);
     // mySerial.begin(2400);
      sendCommand("AT+CFUN=1", 2000);
      sendCommand("AT+CREG?", 100);
      //  sms("salam","+980000000000");
      sendCommand("ATD00000000000;", 100);
      //ensms();
      //delay(500);
      //farsisms();
    }
    
    void loop() {
      readSerial();
    
    }
    
    
    void readSerial() {
      while (mySerial.available())
        Serial.write(mySerial.read());
    
    }
    
    void sendCommand(String cmd, int t)
    {
      mySerial.println(cmd);
      delay(t);
      readSerial();
    }
    void ensms()
    {
      mySerial.println("AT+CSCS=\"IRA\"");
      delay(200);
      readSerial();  
      mySerial.println("AT+CMGF=1");
      delay(200);
      readSerial();
      mySerial.println("AT+CSMP=17,167,0,0");
      delay(200);
      readSerial();
      mySerial.println("AT+CMGS=\"+980000000000\""); 
      delay(500);
      readSerial();
      mySerial.print("Salam\r\n AftabRayaneh !\x1A");
    }
    
    void farsisms()
    {
      //mySerial.println("AT+CSCS=\"UCS2\"");
      mySerial.println("AT+CSCS=\"HEX\"");
      delay(100);
      readSerial();
      mySerial.println("AT+CMGF=1");
      delay(100);
      readSerial();
      mySerial.println("AT+CSMP=17,167,0,8");
      delay(100);
      readSerial();
      mySerial.println("AT+CMGS=\"+980000000000\""); 
      delay(500);
      readSerial();
      mySerial.print("0633064406270645060C002006220641062A0627062800200631062706CC062706460647\x1A");
    }

    با سلام
    من هرچی تلاش میکنم نمیتونم از این برنامه جواب بگیرم وقتی سریال مانیتور میکنم بعد از پیغام hello moon نرم افزار پیغام دیگه ای نمیده به عبارتی فکر مینم نمیتونه با gsm ارتباط برقرار نمیکنه لطفا راهنمایی کنید ممنون.

  3. #3
    Senior Member
    تاریخ عضویت
    Oct 2014
    محل سکونت
    ایران
    نوشته ها
    178
    از دستور at استفاده کن ببین ارتباط با ماژول خود دارید؟!
    دستور at را تایپ کنید و اینتر بزنید اگه درست باشه ok میده پس نباید مشکلی باشه و وقتی سیم کارت خود را قرار می دهید و زنگ بزنید شماره را توی سریال مانیتور نشون میده.

    برای تست و اینکه یقین کنید برد gsm شما سالمه اول از یک برد مبدل ttl to serial استفاده کنید

    بردgsm خود را سریال به برد مبدل خود وصل کنید


    بعد تو سریال مانیتور بیاید و دستور at را تایپ و اینتر بزنید اگر ok داد یعنی برد سالمه و ارتباط شما هم سالمه بعد اقدام کنید دستورات at را پیدا کنید و اون دستور مقدار نمایش شارژ سیم کارت را بزنید ببینید سیم کارت را شناخته یا از دستور at 09190000000 ; را تایپ کنید دقت کنید ; بعد از شماره قراره می گیره وقتی اینتر را بزنید شروع به تماس گرفتن میکنه
    درود بر کسانی که دعا دارند و ادعا ندارند
    نیایش دارند و نمایش ندارند
    حیا دارند و ریا ندارند
    رسم دارند و اسم ندارند…

  4. #4
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    FONA basic test
    Initializing....(May take 3 seconds)
    Attempting to open comm with ATs
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    Timeout: No response to AT... last ditch attempt.
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> AT
    <--- ÿÿÿÿÿÿÿÿÿÿ
    ---> ATE0
    <--- ÿÿÿÿÿÿÿÿÿÿÿÿ
    ---> ATE0
    <--- ÿÿÿÿÿÿÿÿÿÿÿÿ
    Couldn't find FONA
    سلام من از کتابخونه fona استفاده میکنم که خودش نمونه تست هم داره ولی با at همون جوری که تو پیغام بالا هست اکی نمیده
    لینک کتابخونه هم:https://learn.adafruit.com/adafruit-...e/arduino-test
    پین کد و برداشتم و اینکه زنگ هم میخوره واقعا اعصابمو خورد کرده اگه چیزی به ذهنتون میرسه لطف میکنید اگه راهنماییم کنید بازم ممنون که وقت گذاشتین

  5. #5
    Senior Member
    تاریخ عضویت
    Oct 2014
    محل سکونت
    ایران
    نوشته ها
    178
    اگه دستور at را بهش می دیدید و این ÿÿÿÿÿÿÿÿÿÿ را به شما میده ممکنه سرعت سریال را درست تنظیم نکردید!!!

    ببین اول با یه مبدل یو اس بی به تی تی ال استفاده کن و از دستورات AT

    مقدار سرعت سریال را تو سریال مانیتور روی 9600 بزار و دستور را بنویس و اینتر بزن بعد جواب را بهمون بگو
    درود بر کسانی که دعا دارند و ادعا ندارند
    نیایش دارند و نمایش ندارند
    حیا دارند و ریا ندارند
    رسم دارند و اسم ندارند…

  6. #6
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    نقل قول نوشته اصلی توسط tanha71 نمایش پست ها
    اگه دستور at را بهش می دیدید و این ÿÿÿÿÿÿÿÿÿÿ را به شما میده ممکنه سرعت سریال را درست تنظیم نکردید!!!

    ببین اول با یه مبدل یو اس بی به تی تی ال استفاده کن و از دستورات AT

    مقدار سرعت سریال را تو سریال مانیتور روی 9600 بزار و دستور را بنویس و اینتر بزن بعد جواب را بهمون بگو
    سلام بازم از جوابتون ممنون
    والا اگه ایراد از تنظیم سرعت سریال بود فقط فونت پاسخ ok ایراد پیدا میکرد ولی کلا وصل نمیشه به gsm ولی بازم من اون کاری که شما گفتید و انجام میدم حالا شما بازم فکر کنید روش بازم ممنونم از شما تشکر

  7. #7
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    نقل قول نوشته اصلی توسط hasanzare66 نمایش پست ها
    سلام بازم از جوابتون ممنون
    والا اگه ایراد از تنظیم سرعت سریال بود فقط فونت پاسخ ok ایراد پیدا میکرد ولی کلا وصل نمیشه به gsm ولی بازم من اون کاری که شما گفتید و انجام میدم حالا شما بازم فکر کنید روش بازم ممنونم از شما تشکر
    راستی من usb to com دارم با همونم میشه چک کرد نه؟

  8. #8
    Senior Member
    تاریخ عضویت
    Oct 2014
    محل سکونت
    ایران
    نوشته ها
    178
    ببینید اگه بخواهم دقیق مشکلتون را بگم باید خودم پیش شما باشم تا مشکل کارتون را بگم.
    اول تغذیه مناسب را چک کنید ببینید بهش دادید؟! ماژول های gsm به خاطر توان بالا جریان زیادی می خواهند.
    دوم اتصالات را چک کنید یعنی tx و rx را چک کنید ببینید درست نصب کردید! tx به rx مبدل با میکرو متصل میشه و بلعکس
    مرحله سوم روشن کردن ماژول هست بعضی از ماژول ها دکمه power دارن که به هسته مرکزی وصل می باشد و با زدن اون ماژول در حالت مد فعال قرار می گیرد.
    مرحله چهارم. تست با دستورات at هست. اگه تو این مرحله جواب نده مشکل های زیر را مجدد برسی کنید!

    یک :روشن بودن ماژول
    دوم: ارتباط درست سریال ماژول با مبدل یا پردازشگر که بهتره برای تست اول با مبدل کار کنید
    سوم: سرعت سریال

    در غیر این صورت ممکنه ماژول سوخته باشه!!!

    این نکات هم رعایت کنید: هیچ وقت ماژول را بدون سیم کارت و مخصوصا آنتن روشن نکنید!!! تو بعضی از ماژول ها باعث سوختن میشه.
    لایک کردن
    درود بر کسانی که دعا دارند و ادعا ندارند
    نیایش دارند و نمایش ندارند
    حیا دارند و ریا ندارند
    رسم دارند و اسم ندارند…

  9. #9
    Junior Member
    تاریخ عضویت
    Aug 2016
    نوشته ها
    1

    مشکل sim800l

    با سلام و عرض خسته نباشید.
    من ماژول SIM800L رو تهیه کردم و با استفاده از یه کد ساده دستورات At رو بهش ارسال میکنم. At==>OK و کامندهای مربوط به بدست آوردن IMEI و.. که خیلی راحت و درست جواب میده. ولی کامندهای مربوط به بررسی نام اپراتور شبکه و از این دست با ERROR مواجه میشم و وقتی تماس میگیرم با شماره اعلام میشه که شماره خاموش هستش. آنتن فنری شکل موجود در بسته رو به نقطه NET لحیم کردم. و بر روی LED موجود در بور با 7 چشمک و یه مکث 3 ثانیه ای و بازهم 7 چشمک مواجه میشم.
    عکسهای مربوطه رو هم ضمیمه کردم به پستم. کسی میتونه راهنمایی کنه لطفا؟

    این هم خروجی های At بر روی سریال مانیتور:
    برای دیدن سایز بزرگ روی عکس کلیک کنید

نام: 1.jpg
مشاهده: 276
حجم: 84.6 کیلو بایتبرای دیدن سایز بزرگ روی عکس کلیک کنید

نام: 2.jpg
مشاهده: 278
حجم: 63.6 کیلو بایت

  10. #10
    Junior Member
    تاریخ عضویت
    Oct 2016
    نوشته ها
    1

    Sim800

    نقل قول نوشته اصلی توسط hasanzare66 نمایش پست ها
    سلام بازم از جوابتون ممنون
    والا اگه ایراد از تنظیم سرعت سریال بود فقط فونت پاسخ ok ایراد پیدا میکرد ولی کلا وصل نمیشه به gsm ولی بازم من اون کاری که شما گفتید و انجام میدم حالا شما بازم فکر کنید روش بازم ممنونم از شما تشکر

    سلام دوست عزیز دوتا مشکل میتونه باشه به نظرم چون منم قبلا این مشکلو داشتم یا پایه های rx , tx رو جابجا وصل میکنین . یعنی در سیم 800 پایه های 1و 2 هستن و اینکه ترتیبو رعایت کنین و دوم اینکه احتمال داره مبدل یو اس بی به ttl مشکل داره

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •  

SEO by vBSEO