Go Down

Topic: [Solved] ITEAD SIM900-GPRS-GSM-Modul an Arduino anschließen (Read 864 times) previous topic - next topic

Nathax

Jul 17, 2013, 06:24 pm Last Edit: Jul 23, 2013, 11:34 pm by Nathax Reason: 1
Hallo,

kann mir jemand sagen,
wie ich folgendes GPRS-Modul an meinem Mega2560 anschließen kann: http://www.exp-tech.de/Shields/ITEAD-SIM900-GPRS-GSM-minimum-system-module.html ?

Vielen Dank.

sth77

Ist doch alles in den verlinkten Dokumenten ersichtlich. Das Modul kommuniziert dann über die RX- und TX-Pins mit dem Mega. Diese Pins sind als Stiftleiste herausgeführt. RX vom Modul verbindest du mit TX1 am Arduino, TX des Moduls mit RX1 am Arduino. Spannung drauf, Masse verbinden, Testen. ;)
Eine passende Arduino-Bibliothek gibt es auch, in der Regel sind da auch Beispielprogramme enthalten.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Nathax

Ok, danke. Doch so einfach. Und was ist mit DT und DR?

sth77

Laut der Beschreibung sind diese fürs Debugging, die könnte man ebenso an eine freie UART des Arduino Mega2560 anschließen, auch wieder kreuzweise.
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

Nathax

#4
Jul 17, 2013, 08:24 pm Last Edit: Jul 18, 2013, 11:02 am by Nathax Reason: 1
Code: [Select]
/* GSM Shield example

created 2011
by Boris Landoni

This example code is in the public domain.


http://www.open-electronics.org
http://www.futurashop.it
*/

#include <SoftwareSerial.h>
#include <GSM_Shield.h>
//for enable disable debug rem or not the string       #define DEBUG_PRINT
// definition of instance of GSM class
GSM gsm;



void setup() {
  Serial.begin(9600);
  Serial.println("system startup");
  //gsm.InitSerLine(9600);   //initialize serial 1
  gsm.TurnOn(9600);              //module power on
  //gsm.InitSerLine(9600);   //initialize serial 1
  gsm.InitParam(PARAM_SET_1);//configure the module 
  gsm.Echo(1);               //enable AT echo
}


void loop()
{
 
    int reg;
    reg=gsm.CheckRegistration();
    switch (reg){   
      case REG_NOT_REGISTERED:
        Serial.println("not registered");
        break;
      case REG_REGISTERED:
        Serial.println("GSM module is registered");     
        break;
      case REG_NO_RESPONSE:
        Serial.println("GSM doesn't response");
        break;
      case REG_COMM_LINE_BUSY:
        Serial.println("comm line is not free");
        break;
    }
    delay(2000);
   
    reg=gsm.IsRegistered();
      Serial.print("Registration ");
      Serial.println(reg);
   
    delay(5000);
}
   


Ich bekomme beim Example-Sketch folgende Ausgabe:

"GSM doesn't response
Registration 0"

Dazu ein paar Fragen:

- Darf ich eine beliebige SIM-Karte nehmen?

Edit:

- LED blinkt alle 3000ms also "SIM900 registered to the network"

- In dem beigefügten Dokument steht: "This Library is derived from Hwkitchen's GSM Library http://www.hwkitchen.com and include the NewSoftSerial library to comunicate using the pin 4 (RX) and 5 (TX)."
Also sicher, dass ich nicht Pin 4 und 5 meines Megas nehmen muss, oder 2 und 3, wie es sich aus der .cpp der Library vermuten lässt?


Revox

Die Softwareserial funktioniert meines Wissens über alle normalen Digitalen Pins.

"for serial software in this new version we adopted pins 2 and 3"

Ist dort aber unter anderem zu lesen. 

Nathax

Pin 2 und 3 werden auch in der .cpp der Library definiert, aber funktionieren tuts trotzdem nicht.

Nathax

#7
Jul 23, 2013, 10:56 pm Last Edit: Jul 23, 2013, 11:34 pm by Nathax Reason: 1
Problem gelöst: Musste Pin 50 und 51 für rx und tx nehmen und in der GSM.cpp anpassen.

Go Up