Arduino GSM SHİELD İLE ISI SENSÖRÜNDEKİ BİLGİYİ GÖNDERME
  • Merhaba.

    Bir proje üzerinde çalışıyorum.
    Elimde Arduino ve SIM900R'li bir GSM SHİELD var.

    Ancak hiç bir AT komutuna cevap verdiremedim. Bu konularda da tecrübesiz bir kardeşinizim. Kullanmaya çalıştığım kod şu şekilde:

    #include < SoftwareSerial.h>
    #include < String.h>

    SoftwareSerial gprsSerial(8,7);


    void setup()
    {
    gprsSerial.begin(19200); // GPRS kalkanı baud hızı.
    Serial.begin(19200);
    delay(500);
    }

    void loop()
    {

    if (Serial.available()) // Gelen seri veri varsa.
    switch(Serial.read()) // Karakterleri oku.
    {
    case 't': // Karakter "t" ise
    SendTextMessage(); // SMS gönder.
    break;
    case 'd': // Karakter "d" ise
    DialVoiceCall(); // Numarayı ara.
    break;


    }

    if (gprsSerial.available()){ // Eğer konum için söyleyecek bir şey varsa.
    Serial.write(gprsSerial.read()); // Konumu göster.
    }
    }



    void SendTextMessage()
    {
    Serial.println("Sending Text...");
    gprsSerial.print("AT+CMGF=1\r"); // GSM SMS MODU
    delay(100);
    gprsSerial.println("AT+CMGA = \"+905359010000\",145");
    delay(100);
    gprsSerial.println("AT+CMGS = \"+905424565194\"");
    delay(100);
    gprsSerial.println("How are you today?"); //Mesajın içeriği.
    delay(100);
    gprsSerial.print((char)26);//Ctrl+Z'nin ASCII kodu 26'dır (veri sayfasına göre gereklidir))
    delay(100);
    gprsSerial.println();
    Serial.println("Text Sent.");
    }




    void DialVoiceCall()
    {
    gprsSerial.println("ATD+905424565194;");//Numarayı çevirin, ülke kodunu içermelidir.
    delay(100);
    gprsSerial.println();
    }





    Bu arada 9V-1A lik bir beslemeyle denedim, olmadı.
    USB +9V-1A lik beslemeyle denedim, olmadı.
    USB ile denedim olmadı.

    Bu kodu sadece sms atabilmek için denedim. Başaramadım. Yardımlarınıza talibim.
  • bu gsm modul neyse onunla ılgılı bazı ınıt durumları olması lazım sanki
  • ınıt durumları derken, kavrayamadım? ınıt orneklerden bahsederseniz çok makbule geçer.
  • sim900 kutuphanesi veya datasheetıne bakın bu moduller boyle fıse tak çalışsın şeklınde olmaz.
  • Kodu denemeden önce modül çalışıyor mu onu test etmeniz gerekmekte.
    herhangi usb-ttl aracılığı ile , modüle bağlantı sağlayıp AT komutunu gönderdiğiniz de OK cevabını alabildiğinizden emin olun.

    Daha sonra hazır kütüphane yerine modülün AT komutlarını inceleyip daha rahat şekilde yapabilirsiniz diye düşünüyorum.
  • Sorunun neyden kaynaklandığını buldum. Elimdeki ürün Arduino Uno'nun Atmegal16U2 çiplisiydi. Bu çipin SIM900R modülünü desteklemediğini farkettim. SIM900R yalnızca FT232 çipine sahip Arduino Mega ve Unolarda tam kapasiteyle çalışabiliyormuş. Benim için kötü bir tecrübe oldu. İlgilenecek arkadaşların dikkat etmesini tavsiye ederim.
  • elinizdeki uno klon değil yani bu yüzden çalışmadı anladığım kadarı ile. Vay be çin malı çin malı ile konuşuyo yani :)

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Login with Facebook

Tagged

Açık kaynak kültürü gereği, çözdüğünüz problemlerin çözümlerini paylaşmayı lütfen unutmayın.