溜溜丶 发表于 2016-5-28 12:19:19

短信接收问题SIm900A

void setup()
{
Serial.begin(9600);
Serial.print("AT+CNMI=2,2,0,1,1\r\n");//新短息来到,直接打印出来
}
void loop(){
String inString="";
while (Serial.available()>0){ //串口有没有数据
    char inChar=Serial.read();//将串口数据读出来
    inString += (char)inChar;
    delay(200);
}
if (inString.indexOf("CMT")!=-1)
{
    Serial.print(inString);//打印短信内容
    delay(5000);
    while(Serial.available() > 0){
    Serial.read();}
}
}
串口监视器的结果是:不管发多少次短信,前面发的短信也会打印出来,read有移除的功能,那为什么第二次发短信的时候,也会把第一次的短信读出来呢。好烦。。。。

溜溜丶 发表于 2016-5-28 12:24:24

现在不知道是字符串的问题,还是串口缓存的问题。
页: [1]
查看完整版本: 短信接收问题SIm900A