Problema modulo gsm

Ciao, ho acquistato da poco un modulo gsm sim900.Sono riuscito a mandare sms,ricevere sms e fare delle chiamate.Ora però vorrei che il modulo inviasse un mesaggio di risposta,non sempre allo stesso numero ma al numero che invia il comando.Mi spiego:Se un numero A manda un mesaggio al modulo,il modulo deve rispondere al numero A e non al numero fisso scritto nella normale funzione di invio sms.E' possibile fare ciò? Potete darmi una mano per favore? Grazie mille in anticipo

Benvenuto. :slight_smile:
Ti invitiamo a presentarti qui: Re: Presentazioni nuovi iscritti, fatevi conoscere da tutti! (Part 1) - Generale - Arduino Forum
e a leggere il regolamento: [REGOLAMENTO] Come usare questa sezione del forum - Italiano - Arduino Forum

Nessuno sa aiutarmi??

Non conosco il modulo, ma magari se posti il programma (... mi raccomando, racchiuso tra i tag CODE che, in fase di edit, ti inserisce il bottone # ... terzultimo della seconda fila) gli si può dare un'occhiata e capire se è possibile fare quello che chiedi :slight_smile:

Guglielmo

Questo è il semplicissimo programma che ho utlizzato per ricevere un sms.
Non riesco a compilare il programma.Ho provato oltre che scrivere sim900.remoteNumber(remote,20); ho provato con SMS.remoteNumber(remote,20);.Ma non compila,qualche aiuto?

// Example 55.4
#include "SIM900.h"
#include <gsm.h>
#include <SoftwareSerial.h>
SoftwareSerial SIM900(7, 8);

char incoming_char=0;
char remote[20];
void setup()
{
  Serial.begin(19200); // for serial monitor
  SIM900.begin(19200); // for GSM shield
  SIM900power();  // turn on shield
  delay(20000);  // give time to log on to network.

  SIM900.print("AT+CMGF=1\r");  // set SMS mode to text
  delay(100);
  SIM900.print("AT+CNMI=2,2,0,0,0\r"); 
  // blurt out contents of new SMS upon receipt to the GSM shield's serial out
  delay(100);
}

void SIM900power()
// software equivalent of pressing the GSM shield "power" button
{
  digitalWrite(9, HIGH);
  delay(1000);
  digitalWrite(9, LOW);
  delay(7000);
}

void loop()
{
  // Now we simply display any text that the GSM shield sends out on the serial monitor
  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.
sim900.remoteNumber(remote,20);
   Serial.print(remote);
  }
}

Quale errore ti segnala l'IDE? Riportalo magari riusciamo a capire cosa significa.

nid69ita:
Quale errore ti segnala l'IDE? Riportalo magari riusciamo a capire cosa significa.

L'errore che mi da è questo(se la funzione è sim900.remoteNumer(number,20): sim900 was not decleared in this scope
L'errore che mi da è questo(se la funzione è sms.remoteNumer(number,20): sms was not decleared in this scope

Certo che usare il nome di una lib ...

#include SIM900.h

anche come nome di una SoftwareSerial ...

SoftwareSerial SIM900(7, 8);

... non è una grande idea, quindi, per prima cosa, comincia a cambiare nome a quella SoftwareSerial e dagli un nome più consono, esempio "serialGSM900".

poi, dove hai preso la lib SIM900 (includi SIM900.h) ? E dove hai preso la lib gsm (includi gsm.h) ?

Senza i link è difficile avere tutto sottomano per vedere cosa c'è ... e comunque, non vedo istanziata nessuna delle due ... :roll_eyes:

Guglielmo