初级会员

- 积分
- 155
- 金钱
- 155
- 注册时间
- 2016-11-18
- 在线时间
- 55 小时
|
10金钱
先上代码//sim900a初始化void sim900a_init(void)
{
if( sim900a_send_cmd("AT","OK",200)==0)
{
if(sim900a_send_cmd("ATE0","OK",200)==0)//不回显
{
if(sim900a_send_cmd("AT+CMGF=1","OK",200)==0)//设置文本模式
{
sim900a_send_cmd("AT+CSCS=\"GSM\"","OK",200);//设置GSM字符集
sim900a_send_cmd("AT+CNMI=2,1","OK",200);//设置新消息提示
}
}
sim900a_send_cmd这个函数是原子哥的代码,发送函数也是原子哥的,问题是,现在 if( sim900a_send_cmd("AT","OK",200)==0)这个代码进不去,所以后面无法运行,经过调试发现,当stm32发送第一个指令AT的时候,第一次回复ok没有反应(其实回复什么都一样,只要任何东西都行),第二次回复ok程序就继续执行了,后面的指令也都只要回复一次OK,为什么这样啊,困扰好久了,麻烦各位大神帮帮忙。PS:后面的程序都可以完美运行,因为在串口助手上已经实现功能。
|
|