为什么我给SIM900A发送AT指令它只返回AT不返回OK?

2019-07-20 13:11发布

本帖最后由 飞过漠北的蓝天 于 2016-3-30 21:05 编辑

为什么我给SIM900A发送AT指令它只返回AT不返回OK?
如同发送AT+APIN?也只会返回AT+APIN?,那为什么不返回其他数据呢?
是不是发送完指令后还要发送点其他什么指令?
程序是我自己写的。。。



                while(!(USART3_RX_STA&0x8000))//如果串口3没有接收到数据就发送AT指令
                {        
                        u3_printf("%s ","AT");//发送AT指令
                        delay_ms(200);//延时200MS
                        while((USART3->SR&0X40)==0);//等待发送完成
                }                                
                if(USART3_RX_STA&0x8000)//如果接收到了数据
                {
                        USART3_RX_BUF[USART3_RX_STA&0X7FFF]=0;//添加结束符
                        fn = (u8*)USART3_RX_BUF;//指针fn取串口接收到的数据               
                        USART3_RX_STA=0;        //给USART3_RX_STA清零                                
                        Show_Str(100,650,200,24,fn,24,0);//将接收到的数据显示到液晶上                                
                }结果就只能接收到AT,不能接收到OK
你们看看是不是程序没有写对?
谢谢咯


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。