arduino - Sim800c 没有收到完整的短信
问题描述
我正在使用连接到 stm32“bluepill”开发板的 sim800c 模块。我正在尝试接收稍后解析的 SMS。这是我的代码:
while(sim800C.available()>0){
delay(1000);
Received_SMS=sim800A.readString();
Serial.print(Received_SMS);}
但是,“Received_SMS”字符串似乎不包含完整的消息,输出为:
+CMT: "(number hidden for privacy)","","20/12/03,08:08:54+14"
063306440627
发送的短信比显示的要长得多。我正在使用,AT+CSCS="IRA"
但即使我更改了这个 AT 命令,结果似乎也有一个恒定的长度,对于完整的短信来说是不够的。
感谢您阅读问题,问候。
解决方案
这就是我解决问题的方法:
if(sim800A.available()>0){
while(sim800A.available()>0){
Received_SMS=sim800A.readString();
}
}
所以,我们应该把我们的过程放在一个“if”中,然后是一个“while”。
推荐阅读
- javascript - 如何在媒体查询中避免 document.write
- php - 通过 WooCommerce 中的管理员编辑订单自动添加或更新自定义费用
- c# - 为 ShapeContainer 和 LineShape 引用 Visual Basic Power Pack
- java - 将录制的音频转换为数字数据
- ios - 使用组合网络 ios 刷新令牌
- ruby-on-rails - 如何从 Ruby On Rails 版本 6.0.3.2 更改为版本 5?
- excel - 重写 Sumproduct 公式。去除或忽略字母字符 - 插入 VBA
- azure-pipelines - Azure 管道 ArchiveFiles 存档创建失败
- xml - 如何修复“XSD 文件中的错误解析组件”?
- pine-script - 安全函数返回“不能使用可变变量作为参数”