如何在 Arduino 上捕获 AT 命令的输出?
我正在使用带有 GSM 屏蔽的 Arduino Uno R3。我有所有的 AT 命令(可以在这里看到),如果我使用终端并获得输出,我可以很好地输入它们。但是如何通过代码捕获结果输出?下面的代码显示了我尝试过的内容,但它不起作用。特别是在我尝试获取模拟输入然后打印出结果的地方。
#include <SoftwareSerial.h>
SoftwareSerial mySerial(7, 8);
void setup()
{
char sensorValue[32] ="";
Serial.begin(9600);
mySerial.begin(9600);
Serial.println("\r");
//Wait for a second while the modem sends an "OK"
delay(1000);
//Because we want to send the SMS in text mode
Serial.println("AT+CMGF=1\r");
delay(1000);
mySerial.println("AT+CADC?"); //Query the analog input for data
Serial.println(Serial.available());
Serial.println(Serial.read()); //Print out result???
//Start accepting the text for the message
//to be sent to the number specified.
//Replace this number with the target mobile number.
Serial.println("AT+CMGS=\"+MSISDN\"\r");
delay(1000);
Serial.println("!"); //The text for the message
delay(1000);
Serial.write(26); //Equivalent to sending Ctrl+Z
}
void loop()
{
/*
if (mySerial.available())
Serial.write(mySerial.read());
if (Serial.available())
mySerial.write(Serial.read());
*/
}
我得到输出:
AT+CMGF=1
AT+CADC?21 13
或者
AT+CMGF=1
AT+CADC?18 65
不管我的模拟信号源有什么变化