【求解答】STM32向SIM900A模块发送串口信息无响应的问题

2019-07-21 04:50发布

我用的是MINI板,SIM900A模块板也是正点原子的。我想用串口发送AT指令让模块拨打电话,但总无反应。请高手帮我看看问题出在哪里,是否是printf函数的写法没写对。谢谢!

连接:RX(PA10)------------STXD(SIM模块)
         TX(PA9)------------- SRXD
主程序内容:


int main(void) { u16 times=0;   Stm32_Clock_Init(9);    /*系统时钟设置;72MHz */ delay_init(72);        /*延时初始化 */ uart_init(72,9600);    /*串口初始化为9600 */ LED_Init();      /*初始化与LED连接的硬件接口 */   
printf("ati "); /*ati初始化sim900模块  */ delay_ms(1000);
printf("ATE1 ");     delay_ms(1000); printf("AT+COLP=1 ");     delay_ms(1000); printf("ATD10086; ");       /*拨打号码10086*/
for(times=0;times<60;times++)  /*打通后延时1分钟*/ { LED0=0; /*指示灯亮*/ delay_ms(1000); }
printf("ATH "); /*挂断电话*/ LED0=1;              /*指示灯灭*/
while(1);   }




友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
正点原子
1楼-- · 2019-07-21 08:14
printf默认是通道串口1了。
你接线没接错吧?
然后,你可以先用电脑的串口调试助手测试下,模块没问题,再连接开发板测试。

或者先用我们标准例程测试下。
limosummer
2楼-- · 2019-07-21 09:40
谢谢解答。
我用电脑的串口助手一步一步给SIM模块发送AT指令可以实现通话。
但是用单片机写的串口指令发出去却没响应。

我把单片机的串口数据发到电脑上,内容如下:



格式应该没有问题吧?

我把STM32的PA10 连接到SIM模块的STXD
PA9连接到 SRXD上的连接有没有问题?




正点原子
3楼-- · 2019-07-21 10:13
回复【3楼】limosummer:
---------------------------------
就是你接线接反了...
海龟帅哥
4楼-- · 2019-07-21 12:44
回复【3楼】limosummer:
---------------------------------
我也是这种情况,你解决了吗?
夕颜
5楼-- · 2019-07-21 17:47
共地了没
kingsten
6楼-- · 2019-07-21 21:13
 精彩回答 2  元偷偷看……

一周热门 更多>