为什么我给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
你们看看是不是程序没有写对?
谢谢咯


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
login_FAE
1楼-- · 2019-07-20 17:37
指令没有添加回车符?
飞过漠北的蓝天
2楼-- · 2019-07-20 22:43
login_FAE 发表于 2016-3-30 18:05
指令没有添加回车符?

这样算吗
u3_printf("%s ","AT");这样发送只返回了AT
login_FAE
3楼-- · 2019-07-21 03:39
 精彩回答 2  元偷偷看……
飞过漠北的蓝天
4楼-- · 2019-07-21 05:52
login_FAE 发表于 2016-3-30 21:31
直接电脑的串口调试助手测试呢

连接不了,已经焊接到了电路板里了
能打电话,模块没有问题
login_FAE
5楼-- · 2019-07-21 09:05
那可能是你代码的问题了    仿真看下
飞过漠北的蓝天
6楼-- · 2019-07-21 14:29
 精彩回答 2  元偷偷看……

一周热门 更多>