Hola de nuevo:
Me he puesto nuevamente a intentar sacar provecho al modulo GSM Efcom v1.2.
http://www.elecfreaks.com/3080.html
En principio y por lo que fui haciendo durante unos meses, se hacer una llamada y enviar un sms con un texto preestablecido.
Otro gallo cantaría, que me tenga que enviar un SMS, indicandome el valor de una variable.
Os pongo los códigos:
LLAMADA DE TELEFONO.
#include <SoftwareSerial.h>
SoftwareSerial SIM900 ( 0 , 1 ) ; // Configurar los puertos de comunicacion serie
void setup ( )
{
SIM900 . begin ( 19200 ) ;
SIM900power ( ) ;
delay ( 20000 ) ; // Dar tiempo para iniciar y conseguir RED.
}
void SIM900power ( )
// Softwatre equivalente a presionar en el escudo GSM el botón "Power"
{
digitalWrite ( 6 , HIGH ) ;
delay ( 1000 ) ;
digitalWrite ( 6 , LOW ) ;
delay ( 5000 ) ;
}
void callSomeone ( )
{
SIM900 . println ( "ATD + +34612345678;" ) ; // Número de telefono. Formato Internacional
delay ( 100 ) ;
SIM900 . println ( ) ;
delay ( 30000 ) ; // Esperar 30 segundos...
SIM900 . println ( "ATH" ) ; // Colgar
}
void loop ( )
{
callSomeone ( ) ; // Llama
SIM900power ( ) ; // Apaga el telefon
do { } while ( 1 ) ; // Hazlo
}
ENVIO DE SMS:
#include <SoftwareSerial.h>
SoftwareSerial SIM900 ( 0 , 1 ) ;
void setup ( )
{
SIM900 . begin ( 19200 ) ;
SIM900power ( ) ;
delay ( 20000 ) ; // give time to log on to network.
}
void SIM900power ( )
// Secuencia equivalente a darle al Botón "Power" del GSM ---- Un pulso mediante el pin6
{
digitalWrite ( 6 , HIGH ) ;
delay ( 1000 ) ;
digitalWrite ( 6 , LOW ) ;
delay ( 5000 ) ;
}
void sendSMS ( )
{
SIM900 . print ("AT+CMGF=1\r"); // AT command para enviar SMS
delay ( 100 ) ;
SIM900 . println ("AT + CMGS = \"+34612345678\""); // Numero de telefono con numeracIon internacional
delay ( 100 ) ;
SIM900 . println ("Hola Mundo. Mensaje desde Arduino"); // mensaje a enviar
delay ( 100 ) ;
SIM900 . println ( ( char ) 26 ); // Fin Comando AT con un ^Z, ASCII code 26
delay ( 100 ) ;
SIM900 . println ( );
delay ( 5000 ); // Tiempo del módulo para enviar el SMS
SIM900power ( ); // Lo mandamos de nuevo a SIM900Powe para apagar el modulo GSM
}
void loop ( )
{
sendSMS ( ) ;
do { } while ( 1 ) ;
}
Ahora lo que pretendo es:
1.- Enviar un mesaje y que encienda o apague un LED en el PIN13.
2.- Que me envíe un valor de una variable.
Para estos ejemplos, encuentro documentación por internet, pero son demasiado complejos como para conocer la base de la programación.
Unos encienden LED´s a patadas, o simplemente el módulo GSM no es el mismo, y en el otro caso no encontré mucho.
Espero que entre todos podamos hacer una Guia practica de este Módulo.
Graciñas.
Seguiré investigando