صفحه 1 از 2 12 آخرینآخرین
نمایش نتایج: از 1 به 10 از 107
Like Tree36 لایک

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

Hybrid View

  1. #1
    Senior Member
    تاریخ عضویت
    Oct 2014
    محل سکونت
    ایران
    نوشته ها
    178
    توکل کنید به خدا و تلاش کنید. خب باید تخصصی تر نگاه کنیم به این موضوع. شما 2 تا عکس با کیفیت از روی برد و پشت برد بگیرید جوری که بشه قطعات را خوند. بزارید تا کمکتون کنم


    نقل قول نوشته اصلی توسط hasanzare66 نمایش پست ها
    درسته با max هم جواب نداد واقعا دیگه هیچ ایده ای ندارم برا راه اندازیه یه ماژول ساده 3 ردز من و علاف کرده جدا
    یه جوری هم کار میکنه ادم مطمن نمیشه سوخته که عوضش کنه
    درود بر کسانی که دعا دارند و ادعا ندارند
    نیایش دارند و نمایش ندارند
    حیا دارند و ریا ندارند
    رسم دارند و اسم ندارند…

  2. #2
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    نقل قول نوشته اصلی توسط tanha71 نمایش پست ها
    توکل کنید به خدا و تلاش کنید. خب باید تخصصی تر نگاه کنیم به این موضوع. شما 2 تا عکس با کیفیت از روی برد و پشت برد بگیرید جوری که بشه قطعات را خوند. بزارید تا کمکتون کنم
    از وقتی که میذارید ممنونم
    عکسای ماژول تو لینک زیر هست کیفیتشم خوبه
    ماژول GSM چهار باند SIM800L با قابلیت GPRS / GSM / SMS

  3. #3
    Member
    تاریخ عضویت
    Feb 2016
    نوشته ها
    41
    نقل قول نوشته اصلی توسط hasanzare66 نمایش پست ها
    از وقتی که میذارید ممنونم
    عکسای ماژول تو لینک زیر هست کیفیتشم خوبه
    ماژول GSM چهار باند SIM800L با قابلیت GPRS / GSM / SMS
    آقای زارع عزیز برادر من جهت تست سالم بودن ماژول از یه تبدیل TTL به usb استفاده کن. وقتت رو هدر نده منم همین مشکل رو داشتم حتی رفتم یه ماژول دیگه خریدم مشکلم برطرف نشد حالا دارم رو کد نویسی کار میکنم. یا اینکه کدی که دوست عزیزمون magmag گذاشت به عنوان کد بالا من تست کردم با همین ماژول هم تماس خروجی داشته هم ارسال پیامک اگر مشکل داشتی تو اینها با یک ماژول دیگه تست کن.

  4. #4
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    یعنی ایراد از ماژول بود ؟ چند مورد دار داشتین

  5. #5
    Senior Member
    تاریخ عضویت
    Oct 2014
    محل سکونت
    ایران
    نوشته ها
    178
    مهندس جان این ماژول رگولاتور نداره پس باید از منبع تغذیه 3.3 و با جریان حداقل 1 و حداکثر 2 استفاده کنید. مراقب باش اشتباهی هم نزنی چون دیود محافظ نداره. بعد tx ماژول را به rx مبدل یو اس و بلعکس وصل کن
    سپس ماژول را به کامیپوتر متصل کند و زمین منبع تغذیه را با زمین یو اس بی یکی کن و +3.3 منبع تغذیه را به vcc ماژول
    یادت باشه قبل از هرچیز آنتن به ماژولت بزنی... بعد که این کار ها را کردی برنامه آردوینو را باز کن و برو تو تنظیمات قسمت پورت ، پورت کام که مبدل بهش وصله را مشخص کن و انتخاب کن سپس برو قسمت ترمینال مانیتور آردوینو و دستور AT را بزن اگه جواب ok داد سالمه اگه نوشته دیگه که قابل خواندن بود داد سرعت سریال را تغییر بده و تست کن .
    اگه منبع 3.3 با جریان 1 تا 2 نداری می تونی از 3.3 خود مبدل استفاده کنی تو سیم 900 جواب داد . تو سیم 800 را باید تست کنید



    نقل قول نوشته اصلی توسط hasanzare66 نمایش پست ها
    از وقتی که میذارید ممنونم
    عکسای ماژول تو لینک زیر هست کیفیتشم خوبه
    ماژول GSM چهار باند SIM800L با قابلیت GPRS / GSM / SMS
    درود بر کسانی که دعا دارند و ادعا ندارند
    نیایش دارند و نمایش ندارند
    حیا دارند و ریا ندارند
    رسم دارند و اسم ندارند…

  6. #6
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    دوستان مسایلی که فرمودید رو قبلا چک کردم البته ماژول من از3,7 تا4,2 روشن میشه البته جوری که تو data sheet نوشته اگرم بیشتر بدی تا 5v الارم میده ولی من تو رنج تغذیش کردم در مورد usb to com هم یه بار دیگه چک کردم دستور AT رو که میزنم همون AT رو میاره پایین مینویسه و جواب نمیده دوستان اگه تست خاص سخت افزاری یا سیگنال چک هم به ذهنتون میرسه بفرمایید انجام بدم وسایل تکمیل همه چیز دارم من خودم مغزم هنگ کرده میترسم یکی دیگه هم بخرم مشکل از خودم باشه نتونم جواب بگیرم در مورد سیم بندی rx tx هم خیالتون راحت چون من اگر درست هم زده باشم وقتی جواب نده برعکس میکنم تست میگیرم

  7. #7
    Junior Member
    تاریخ عضویت
    Mar 2016
    نوشته ها
    24
    البته یه نکته ای ماژول رو که برام فرستادن دو تا انتن داشت یدونه با کانکتور متصل میشد یدونه هم حالت فنری مونتاژ میشه من فقط کانکتوری رو متصل کردم

  8. #8
    Member
    تاریخ عضویت
    Feb 2016
    نوشته ها
    41
    نقل قول نوشته اصلی توسط tanha71 نمایش پست ها
    مهندس جان این ماژول رگولاتور نداره پس باید از منبع تغذیه 3.3 و با جریان حداقل 1 و حداکثر 2 استفاده کنید. مراقب باش اشتباهی هم نزنی چون دیود محافظ نداره. بعد tx ماژول را به rx مبدل یو اس و بلعکس وصل کن
    سپس ماژول را به کامیپوتر متصل کند و زمین منبع تغذیه را با زمین یو اس بی یکی کن و +3.3 منبع تغذیه را به vcc ماژول
    یادت باشه قبل از هرچیز آنتن به ماژولت بزنی... بعد که این کار ها را کردی برنامه آردوینو را باز کن و برو تو تنظیمات قسمت پورت ، پورت کام که مبدل بهش وصله را مشخص کن و انتخاب کن سپس برو قسمت ترمینال مانیتور آردوینو و دستور AT را بزن اگه جواب ok داد سالمه اگه نوشته دیگه که قابل خواندن بود داد سرعت سریال را تغییر بده و تست کن .
    اگه منبع 3.3 با جریان 1 تا 2 نداری می تونی از 3.3 خود مبدل استفاده کنی تو سیم 900 جواب داد . تو سیم 800 را باید تست کنید
    مهندس تنهای عزیز من ماژول رو وصل میکنم به اردوینو وقتی کامند میدم عدد میده ولی وقتی با سریال وصل میکنم به کامپیوتر کامندها درست و کامل انجام میشه. میشه لطف کنید بفرمایید چیه مشکل؟ ضمنا بااین کد که magmag mary زحمتشو کشیدن تماس و اس ام اس خروجی دارم . ولی دریافت اس ام اس ندارم. ایا تابعی دارید که مطمین باشین دریافت اس ام اس رو درست انجام میده؟
    ویرایش توسط hamed82 : 04-05-2016 در ساعت 05:35 PM

  9. #9
    Senior Member
    تاریخ عضویت
    Oct 2014
    محل سکونت
    ایران
    نوشته ها
    178
    سلام. با سریال وقتی at می نویسی و اینتر می زنی جواب ok را مشاهده می کنید؟!
    برنامه را مجدد بزار ببینم


    نقل قول نوشته اصلی توسط hamed82 نمایش پست ها
    مهندس تنهای عزیز من ماژول رو وصل میکنم به اردوینو وقتی کامند میدم عدد میده ولی وقتی با سریال وصل میکنم به کامپیوتر کامندها درست و کامل انجام میشه. میشه لطف کنید بفرمایید چیه مشکل؟ ضمنا بااین کد که magmag mary زحمتشو کشیدن تماس و اس ام اس خروجی دارم . ولی دریافت اس ام اس ندارم. ایا تابعی دارید که مطمین باشین دریافت اس ام اس رو درست انجام میده؟
    درود بر کسانی که دعا دارند و ادعا ندارند
    نیایش دارند و نمایش ندارند
    حیا دارند و ریا ندارند
    رسم دارند و اسم ندارند…

  10. #10
    Member
    تاریخ عضویت
    Feb 2016
    نوشته ها
    41
    نقل قول نوشته اصلی توسط tanha71 نمایش پست ها
    سلام. با سریال وقتی at می نویسی و اینتر می زنی جواب ok را مشاهده می کنید؟!
    برنامه را مجدد بزار ببینم
    مهندس جان اول اینکه با سریال تونستم اس ام اس هم دریافت کنم با هون کامندی که تو کد دریافت نمیکنه. دوم اینکه این هم خدمت شما کدی که مگ مگ ماری عزیز زحمتشو کشیدن. البته تو این کد به نظرم هیچ کامندی برای دریافت به ماژول ارسال نمیشه.
    #include <SoftwareSerial.h>
    SoftwareSerial SIM900(2, 3);
    #define GSMReset 5




    void setup() {
    Serial.begin(9600); // for serial monitor
    SIM900.begin(9600); // for GSM shield
    gsmPower();
    gsmConfig();
    }


    void loop() {
    commandDetect();
    smsProcess();
    }
    //************************************************** *******************************
    void gsmConfig() {
    pinMode(GSMReset, OUTPUT);
    sendCommand("AT+CMGF=1\r", 100); // set SMS mode to text
    sendCommand("AT+CNMI=2,2,0,0,0\r", 100);
    sendCommand("AT+CFUN=1", 2000);
    sendCommand("AT+CREG?", 1000);
    Serial.println("The end of Config process");
    Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms");
    }
    //************************************************** ********************************
    void showSms() {
    char incoming_char = 0;
    if (SIM900.available() > 0)
    {
    incoming_char = SIM900.read(); //Get the character from the cellular serial port.
    Serial.print(incoming_char); //Print the incoming character to the terminal.
    }
    }
    //************************************************** *********************************
    void smsProcess() {
    char incoming_char = 0;
    if (SIM900.available() > 0)
    {
    incoming_char = SIM900.read();
    if (incoming_char == 'H')
    {
    delay(10);
    Serial.print("horaaaaaaaaaaaaaaaaaaay");
    }
    }
    }
    //************************************************** *********************************
    void gsmPower() {
    Serial.println("Turning GSM ON");
    digitalWrite(GSMReset, HIGH);
    delay(10);
    digitalWrite(GSMReset, LOW);
    delay(100);
    digitalWrite(GSMReset, HIGH);
    delay(7000);
    Serial.println("config process...");
    }


    //************************************************** ********************************


    void sendCommand(String cmd, int t)
    {
    SIM900.println(cmd);
    delay(t);
    readSerial();
    }


    //************************************************** ************************************
    void readSerial() {
    while (SIM900.available())
    Serial.write(SIM900.read());
    }


    //************************************************** *********************************


    void dialNumber(String number) {
    Serial.println("Dialing...");
    sendCommand("ATD" + number + ";", 100);
    Serial.println("End of Dial process");
    delay(2000);
    Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms");
    }
    //************************************************** **********************************
    void ensms()
    {
    Serial.println("Sending SMS");
    sendCommand("AT+CSCS=\"IRA\"", 200);
    sendCommand("AT+CMGF=1", 200);
    sendCommand("AT+CSMP=17,167,0,0", 200);
    sendCommand("AT+CMGS=\"09331424592\"", 500);
    sendCommand("Salam\r\n AftabRayaneh !\x1A", 0);
    Serial.println("End of English SMS process");
    delay(2000);
    Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms");
    }
    //************************************************** **************************************
    void farsisms()
    {
    Serial.println("Sending SMS");
    sendCommand("AT+CSCS=\"HEX\"", 100);
    sendCommand("AT+CMGF=1", 100);
    sendCommand("AT+CSMP=17,167,0,8", 100);
    sendCommand("AT+CMGS=\"+09331424592\"", 500);
    sendCommand("0633064406270645060C002006220641062A0 627062800200631062706CC062706460647\x1A", 0);
    Serial.println("End of Persian SMS process");
    delay(2000);
    Serial.println("Ensert\n 'd' for dial \n 'e' for english sms \n 'f' for farsi sms");
    }
    //************************************************** *****************************************
    void commandDetect() {
    if (Serial.available() > 0)
    {
    char data = Serial.read();
    switch (data)
    {
    case 'd' : dialNumber("09331424592");
    break;


    case 'e' : ensms();
    break;


    case 'f' : farsisms();
    break;
    }
    }
    }
    ولی کامندی که من فرستادم تو سریال و جواب دادAT+CNMI=1,2,0,0,0 بود. حالا میشه ازتون خواهش کنم با ارتباط سریال نرم افزاری یه تابع دریافت اس ام اس برام بنویسید؟ ولی قبلش خودتون تست کنید و اینجا تو تنجمن پست بگذارید که همه استفاده کنن؟

صفحه 1 از 2 12 آخرینآخرین

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

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

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

SEO by vBSEO