Bom Dia Pessoal!
Queria ajuda no gsm, pretendo quando pressionar um botão ele liga um led e de seguida envia mensagem para telemóvel que ligou o led.
Cumprimentos
Pedro Branco
Tags:
vc já aprendeu a usar o shield gsm pra enviar mensagem para algum destinatário?
#include "SIM900.h"
#include <SoftwareSerial.h>
#include "inetGSM.h"
#include "sms.h"
SMSGSM sms;
int numdata;
boolean started=false;
char smsbuffer[160];
char n[20];
char phone_num[20]; // array for the phone number string
char sms_text[160]; // array for the SMS text string
char position;
String numeros;
String numero;
String msg;
String aux;
void setup(){
//Serial connection.
Serial.begin(9600);
Serial.println("GSM Shield testing.");
//Start configuration of shield with baudrate.
//For http uses is raccomanded to use 4800 or slower.
if (gsm.begin(9600)){
Serial.println("\nstatus=READY");
started=true;
}else{
Serial.println("\nstatus=IDLE");
}
if(started){
//Enable this two lines if you want to send an SMS.
// if (sms.SendSMS("9090981014676", "Teste SMS Arduino!"))
// Serial.println("\nSMS sent OK");
}
pinMode(10,OUTPUT);
};
void loop(){
if(started){
//Read if there are messages on SIM card and print them.
position = sms.IsSMSPresent(SMS_UNREAD);
if(position){
if(sms.GetSMS(position, phone_num, sms_text, 160)){
numero = phone_num;
msg = sms_text;
if(msg == "bombaon"){
Serial.println("\n Ligou a bomba de agua");
digitalWrite(10,HIGH);
}else if(msg == "bombaoff"){
Serial.println("\n Desligou a Bomba de agua");
digitalWrite(10,LOW);
}else if(msg == "bombac"){
digitalWrite(10,HIGH);
Serial.println("\n Ligou o led");
delay(4000);
digitalWrite(10,LOW);
sms.SendSMS(phone_num, "Arduino Fez o clico da Bomba!");
}
Serial.println(phone_num);
Serial.println(sms_text);
//sms.SendSMS(phone_num, sms_text);
}
sms.DeleteSMS(position);
memset(&sms_text,NULL,sizeof(sms_text));
}
delay(1000);
}
};
Neste programa não estou a conseguir adicionar o que perguntei.
Não está conseguindo enviar porque teu programa não foi configurado corretamente. Veja que é essa linha que deveria enviar a mensagem:
sms.SendSMS(phone_num, "Arduino Fez o clico da Bomba!");
Mas em nenhum momento foi definido o "phone_num"
É por isso que te perguntei se vc já conseguiu alguma vez enviar mensagem para algum destinatário. Se vc aprender a fazer isso, aprenderá a identificar onde está ocorrendo o erro no teu sketch
Creio que ai no final do tutorial tem o codigo que precisas, bem como um video...
http://tronixstuff.com/2014/01/08/tutorial-arduino-and-sim900-gsm-m...
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por