0
Καλημέρα Μάνο , αυτός που δεν δούλεψε είναι αυτός που μου έστειλες,αυτός δηλαδήκαι αυτός που δοκίμασα να κάνει μία κλήση είναι αυτόςΚώδικας:#include <Wire.h> #include "SIM900.h" #include <SoftwareSerial.h> #include "sms.h" //=========================================== #define relay_1 5//DIGITAL PIN D5 #define relay_2 6//DIGITAL PIN D6 #define relay_3 7//DIGITAL PIN D7 #define relay_4 8//DIGITAL PIN D8 #define A6_POWER_PIN 9//DIGITAL PIN D9 for power up modem //=========================================== SMSGSM sms; //instance for the modem //=========================================== boolean started = false; char telnumber_1[] = "+306999999999"; //ΕΔΩ ΤΟΝ ΑΡΙΘΜΟ ΤΗΛΕΦΩΝΟΥ ΣΟΥ char pos; char *p; char phone_number[20]; // array for the phone number string char message[250]; int i = 0; //=========================================== void setup() { Wire.begin(); Serial.begin(9600); pinMode(relay_1, OUTPUT); pinMode(relay_2, OUTPUT); pinMode(relay_3, OUTPUT); pinMode(relay_4, OUTPUT); pinMode(A6_POWER_PIN, OUTPUT); digitalWrite(relay_1, LOW); digitalWrite(relay_2, LOW); digitalWrite(relay_3, LOW); digitalWrite(relay_4, LOW); digitalWrite(A6_POWER_PIN, LOW); A6Power(); if (gsm.begin(9600)) { started=true; } } //=========================================== void loop() { if(started) { pos = sms.IsSMSPresent(SMS_UNREAD); if((int)pos > 0 && (int)pos <= 20) { sms.GetSMS(pos, phone_number, message, 100); if(strcmp(phone_number,telnumber_1) == 0)// ΔΕΧΕΤΑΙ ΜΟΝΟ ΑΠΟ ΤΟ ΔΙΚΟ ΣΟΥ ΝΟΥΜΕΡΟ ΤΗΛΕΦΩΝΟΥ { chooseRelayOutput(); } pos = sms.IsSMSPresent(SMS_READ); } delay(1000); } } //=========================================== void A6Power() { digitalWrite(A6_POWER_PIN, LOW); delay(1000); digitalWrite(A6_POWER_PIN, HIGH); delay(2000); digitalWrite(A6_POWER_PIN, LOW); } //=========================================== void chooseRelayOutput() { if(p == strstr(message,"RE1 ON"))//Πρέπει να στείλεις μήνυμα με το περιεχόμενο "RE1 ON" { digitalWrite(relay_1, HIGH); } else if(p == strstr(message,"RE1 OFF")) { digitalWrite(relay_1, LOW); } else if(p == strstr(message,"RE2 ON")) { digitalWrite(relay_2, HIGH); } else if(p == strstr(message,"RE2 OFF")) { digitalWrite(relay_2, LOW); } else if(p == strstr(message,"RE3 ON")) { digitalWrite(relay_3, HIGH); } else if(p == strstr(message,"RE3 OFF")) { digitalWrite(relay_3, LOW); } else if(p == strstr(message,"RE4 ON")) { digitalWrite(relay_4, HIGH); } else if(p == strstr(message,"RE4 OFF")) { digitalWrite(relay_4, LOW); } sms.DeleteSMS((int)pos); } //=========================================== //=========================================== //=========================================== //===========================================
Κώδικας:char phone_no[]="6955108660"; void setup() { Serial.begin(9600); delay(200); Serial.println("AT"); delay(1000); Serial.print("ATD"); Serial.println(phone_no); //Serial.println(";"); delay(10000); Serial.println("ATH"); } void loop() { }