微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > STM32控制SIM900A模块发送短信的问题

STM32控制SIM900A模块发送短信的问题

时间:10-02 整理:3721RD 点击:
stm32与sim900a模块串口三线连接,程序如下,极度简化了程序。结果单步调试的时候短信能发出去,让它自己跑就不行,是什么问题?
                USART1_Puts("at+cops?\r");//发送指令查询当前服务状态                               
                Delayms(500);                          //等待响应
                USART1_Puts("AT+CMGF=1\r");//设置英文方式发送
                Delayms(500);
                               
                USART1_Puts("AT+CMGS=\"150****7285\"\r");//发送的号码               
                Delayms(500);
                               
                USART1_Puts("HELLO! Chan.");//发送的内容
                Delayms(500);
                USART1_PutHex(0x1A);//以0x1a来结束,表示内容结束,发送短信       
                while(1);                       

需要初始化接口吧。

返回延时的问题,给sim900发送不同的指令,返回的时间不同,你应该在代码里面做一个判断,判断返回的数据是不是你想要的,如果是的程序就继续往下执行,这种代码实现起来还是比较简单的。

这程序不就只能执行一次吗?你要什么效果呢?

你不要直接延迟,最好根据返回值来决定下一步的操作,不过这样做比较麻烦。
或者将每一步之间的延时时间再调大些,再加个串口,观察SIM900返回的数据,可以分析出哪步出问题了

学习了,多谢分享

学习了,多谢分享

研究出来了吗,想要买一台,推送信息

学习学习,谢谢分享!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top