Arduino怎么完整读取GSM收到的短信,我缓冲区的大小也改了,但收到的短信还是不完整?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Arduino怎么完整读取GSM收到的短信,我缓冲区的大小也改了,但收到的短信还是不完整?相关的知识,希望对你有一定的参考价值。
#include <Arduino.h>#include <String.h>void setup() Serial.begin(9600); Set_Message();void loop() GetSMS(); Delete_message();void GetSMS() String inStr1=""; while (Serial.available()>0) char inChar1=Serial.read(); inStr1 += (char)inChar1; delay(2); while(inStr1.indexOf("+CMTI")!=-1) Read_Message(); break; void Read_Message() Serial.print("AT+CMGR=1\r\n"); delay(4000); String inString=""; while (Serial.available()>0) char inChar=Serial.read(); inString += (char)inChar; Serial.print(inChar); delay(2); if (inString.length()>0) Serial.println(inString); inString=""; Serial.flush(); void Set_Message() Serial.print("AT+CMGF=1\r\n"); Serial.print("AT+CNMI=2,1\r\n");void Delete_message() //Serial.print("AT+CMGD=1,4\r\n");
参考技术A 上arduino cn上去发个帖Android 手机作为 GSM 调制解调器在 PC 上发送/接收短信?
【中文标题】Android 手机作为 GSM 调制解调器在 PC 上发送/接收短信?【英文标题】:Android mobile as GSM Modem to send/receive SMS on PC? 【发布时间】:2013-07-10 17:38:22 【问题描述】:是否可以将 Android 移动设备用作 PC 的 GSM 调制解调器?
我正在.net 下开发应用程序来发送/接收短信等。 现在我想通过 USB 将我的 android 设备连接到我的 PC,并将其用作 GSM 调制解调器与之通信。
这里是Reference 站点,我正在关注该站点以为此目的创建 .NET 应用程序。
我在这里遇到了错误
try
Phone_Name.Text = comm.IdentifyDevice().Manufacturer.ToUpper().ToString();
Phone_Model.Text = comm.IdentifyDevice().Model.ToUpper().ToString();
Revision_Num.Text = comm.IdentifyDevice().Revision.ToUpper().ToString();
Serial_Num.Text = comm.IdentifyDevice().SerialNumber.ToUpper().ToString();
catch (Exception e50)
MessageBox.Show("Error Retriving COM Port Phone Information", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
显示“检索 COM 端口电话信息时出错”。
是否有任何类型的驱动程序/应用程序/等来处理它?
环境:要测试的 Windows XP/Windows 7 Mobile:Q Mobile Noir A-10
【问题讨论】:
【参考方案1】:是的,我认为你可以做到。只需安装您的手机驱动程序,然后将您的手机连接到 PC。 (通常移动包磁盘中有驱动程序。) 然后从 Windows 控制面板打开“电话和调制解调器”。 然后单击“调制解调器”选项卡。现在您可以看到所有调制解调器及其 COM 号。 在您的 .Net 应用程序中使用您的手机 COM。 如果您在“电话和调制解调器”中看不到您的手机名称作为调制解调器,则表示您不能将手机用作 GSM 调制解调器。 (对不起我的英语不好)
【讨论】:
【参考方案2】:如果您希望使用手机进行通信,可以在手机上安装一些应用程序并将其连接到您的 PC。
但是,如果您希望使用 GSM API 向您的手机发送指令,Arma 的回答是正确的,但理论上您可以使用智能手机应用程序来控制手机 USB 并模拟/模仿 GSM 调制解调器。
【讨论】:
以上是关于Arduino怎么完整读取GSM收到的短信,我缓冲区的大小也改了,但收到的短信还是不完整?的主要内容,如果未能解决你的问题,请参考以下文章
GSM SM5100B C M E E R R O R : 4 错误