نقل قول نوشته اصلی توسط feredy2011 نمایش پست ها
مهندس این جواب داد . خیلی ممنوووووووووووووووووووووو ن
حالا فقط یه کمک دیگه واسه برعکس این قضیه
مثل اون rf چطوری میتونم یه رشته رو به عنوان رمز به ماژولم سند کنم اون اگر اون کد مخصوص رو دریافت کرد یه خروجی رو فعال کنه ؟
واقعا ممنون کمک بزرگی بهم کردید
خدارو شکر
قدم اول اینه که بتونی اس ام اس که برات ارسال میشه رو ببینی .
یه مدل ساده کد نویسیش میشه این:
کد:
#include <SoftwareSerial.h>




SoftwareSerial mySerial(9, 10); //tx gsm = 9 rx arduino , rx gsm = 10 tx arduino
int pir = 3;
void setup()
{
  mySerial.begin(9600);
  Serial.begin(9600);
  delay(1000);
  pinMode(pir, INPUT);
  gsmConfig() ;
  Serial.println("start");
}
void loop()
{




  int a = digitalRead(pir);
  if ( a == 1)
  {
    Serial.println("motion");
    ensms();
  }
  else {
    mySerial.println("AT+CMGD=1,2\r");
    delay(1000);
  }
  showSms() ;
}
void gsmConfig() {
  mySerial.println("AT+CMGF=1\r"); // set SMS mode to text
  delay(100);
  mySerial.println("AT+CNMI=2,2,0,0,0\r");
  delay(100);
  mySerial.println("AT+CFUN=1");
  delay(2000);
  mySerial.println("AT+CREG?");
  delay(1000);
}




void ensms()
{
  mySerial.println("AT+CSCS=\"IRA\"");
  delay(200);
  mySerial.println("AT+CMGF=1");
  delay(200);
  mySerial.println("AT+CSMP=17,167,0,0");
  delay(200);
  mySerial.println("AT+CMGS=\"09...\"");
  delay(500);
  mySerial.println("Motion Alarm\x1A");
  delay(2000);
}


void showSms() {
  char incoming_char = 0;
  if (mySerial.available() > 0)
  {
    incoming_char = mySerial.read(); //Get the character from the cellular serial port.
    Serial.print(incoming_char); //Print the incoming character to the terminal.
  }
}
الان با این کد ممکنه یه سری چیزهای اضافی هم ببینی که مهم نیست .
چک کن با این کد میتونی متن sms رو ببینی