首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用STM32l152和SIM900发送短信

用STM32l152和SIM900发送短信
EN

Stack Overflow用户
提问于 2015-07-16 12:51:18
回答 1查看 252关注 0票数 0

我发送短信"Hello“,但在我的手机上,我得到了这个消息ATAT+CMGS="xxxxxx">HelloWorld。是什么导致了这一切?

代码语言:javascript
复制
 void controlAT()
{ 
 clearString();  
     wait_ms(100);      
    SIM900.printf("AT\r");
      wait_ms(1000);
if(result=="\r\nOK\r\n") {
 pc.printf("\r\n----OK AT----\r\n");
}else {
     pc.printf("-- ERROR AT --");           
}
pc.printf("%s",result.c_str());     
 }
 /*send SMS */
void sendSMS_Raw()
{
clearString();
SIM900.printf("AT+CMGS=");
SIM900.printf("\"");
SIM900.printf("+xxxxxxxxxxxxx");    
SIM900.printf("\"");
SIM900.printf("\r");
SIM900.printf("Hello World");
SIM900.printf("\r");
SIM900.putc(0x1A); 
wait_ms(200);
pc.printf("%s",result.c_str());     
clearString();  
})
 /**MAIN**/
 int main() {
pc.printf("\r\n GSM 900 TEST\n"); 
SIM900.attach(&callback_rx);    
SIM900.baud(9600); 
wait_ms(100);
      while(1) {

    wait(1.0); // 1 sec
   pc.printf("\r\n---MAIN---\n"); 
    controlAT();            
    sendSMS_Raw();  
        pc.printf("\r\n---FINE---\n"); 

     wait(2.0); // 1 sec

    }
} 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-16 13:35:57

在这个metod中修复它:

代码语言:javascript
复制
   void sendSMS_Raw()
 {
 pc.printf("\r\n----sendSMS2----\r\n");  
 clearString();
 SIM900.printf("AT+CMGS=");
 SIM900.printf("\"");
 SIM900.printf("+xxxxxxxxx");   
 SIM900.printf("\"");
 SIM900.printf("\r");
 wait_ms(200);      // this create the problem
 SIM900.printf("Hello");
 SIM900.printf("\r");
 SIM900.putc(0x1A); 
 wait_ms(200);
  pc.printf("%s",result.c_str());       
 clearString();                 
 }

谢谢大家。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31454683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档