Buon giorno, è la prima volta che uso Arduino. Mi chiamo Marica mi sono appassionata ad Arduino per puro caso, Le mie conoscenze però del linguaggio di programmazione di Arduino sono pari a zero e tutto quel poco che so l'ho imparato girando su internet. .
Sto cercando di usare Arduino Nano e modulo gsm 800L per ricevere chiamate ed attivare un relè.
Sono riuscito a ricevere la chiamata ma non riesco ad attivare il relè. Lo schema è il seguente:
/*
* interruttore per chiamata GSM
*/
#include <SoftwareSerial.h>
SoftwareSerial SIM(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
#define rele 5
String dato;
void setup()
{
pinMode(rele,OUTPUT);
digitalWrite(rele,LOW);
Serial.begin(9600);
SIM.begin(9600);
delay(1000);
SIM.println("AT");
delay(500);
SIM.print("AT+CLIP=1\r\n"); //abilita identificazione di chiamata
delay(500);
}
void loop()
{
if(SIM.available()>0)///*
*/
#include <SoftwareSerial.h>
SoftwareSerial SIM(3, 2); //SIM800L Tx & Rx is connected to Arduino #3 & #2
#define rele 5
String dato;
void setup()
{
pinMode(rele,OUTPUT);
digitalWrite(rele,LOW);
Serial.begin(9600);
SIM.begin(9600);
delay(1000);
SIM.println("AT");
delay(500);
SIM.print("AT+CLIP=1\r\n"); //abilita identificazione di chiamata
delay(500);
}
void loop()
{
if(SIM.available()>0)//chiedi se la sim è disponibile
{
dato=SIM.readString();
delay(100);
Serial.println(dato);
delay(100);
if(dato.indexOf("RING") > -1)//Chiedi se viene trovato RING
{
Serial.println("chiamata rilevata");
delay(100);
if(digitalRead(rele)==HIGH)
{digitalWrite(rele,LOW);delay(100);}
else
{digitalWrite(rele,HIGH);delay(100);}
delay(1000);
SIM.println("ATH");
delay(1000);
dato="";
}
}
}
{
dato=SIM.readString();
delay(100);
Serial.println(dato);
delay(100);
if(dato.indexOf("RING") > -1)//Chiedi se viene trovato RING
{
Serial.println("chiamata rilevata");
delay(100);
if(digitalRead(rele)==HIGH)
{digitalWrite(rele,LOW);delay(100);}
else
{digitalWrite(rele,HIGH);delay(100);}
delay(1000);
SIM.println("ATH");
delay(1000);
dato="";
}
}
}
Questo è l'errore che mi da quando carico il programma.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x3c
Spero riusciate ad aiutarmi. Grazie e saluti a tutti.