通过串口接收字符并转换为字符串

时间:2013-03-20 20:56:48

标签: c++ c serial-port arduino gsm

一些背景: 我正在为Uno项目在Uno和GSM模块之间编写一些Arduino代码。 GSM模块的想法将在触发时呼叫或短信。我处于高级阶段,让我的项目完成了我想做的大部分工作,我想要实现的是当我向GSM模块(TC35开发板)发送短信时,它会收到消息,如果是包含术语“设置”,然后它将拨出号码设置为这个新号码。

Arduino和GSM模块之间有一个软件串行连接,可以读取GSM输出并将其显示在串行监视器上:

if(gsmSerial.available()>0){
        gsm_char_send = gsmSerial.read();
        Serial.print(gsm_char_send);

GSM模块由AT命令控制,告诉它拨打电话,短信等。

例如AT命令:

gsmSerial.println("AT+CMGR=1");  // Read SMS at position 1.

返回:

+CMGR: "REC READ","+353xxxxxxxxx",,"13/03/20,19:3þ49715",,"13/03/20,19:35:02+00"
set number

我尝试在有界数组[50]中捕获整个gsmSerial.read()并转换为String然后执行strstr来检查'set number',但是有太多其他无关的字符来自gsmSerial。

我是一个相对新手的程序员,所以我毫不怀疑有一些简单的东西,我缺少或者可以实现,并且会欣赏任何指针。

0 个答案:

没有答案