我的代码遇到麻烦,当气体值超过400时,它读取的气体值很好,并且蜂鸣器打开,我的问题是它没有像预期的那样发送SMS,我需要在明天之前解决这个问题。
#include <SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);
int buzzer = 12;
int GASA0 = A5;
int gasvalue;
void setup() {
mySerial.begin(9600);
Serial.begin(9600);
pinMode(buzzer, OUTPUT);
delay(500);
}
void loop() {
int analogSensor = analogRead(GASA0);
int gasvalue = (analogSensor);
Serial.print("Gas: ");
Serial.println(gasvalue);
delay(500);
if (gasvalue > 400) {
SendTextMessage();
tone(buzzer, 1000);
} else {
noTone(buzzer);
}
delay(500);
}
void SendTextMessage() {
mySerial.println("AT+CMGF=1"); //To send SMS
delay(1000);
mySerial.println("AT+CMGS=\"+***********\"\r"); //phone number
delay(1000);
mySerial.println("ALERTA: SE HA DETECTADO UNA FUGA DE GAS."); // content of the message
delay(200);
mySerial.println((char) 26);
delay(1000);
}