F103和F4串口通信问题

2019-07-20 13:32发布

就是用F103发送一个简单的数字给F4,用串口调试助手测试F103可以发出数据,但是接了F4,F4就收不到,仿真测试了一下,F4收不到任何数据。

发送数据:           USART1->DR=0x34;
                          while((USART1->SR&0X40)==0);

接收数据:        if(USART_RX_STA&0x8000)
                      {                       
                                 len=USART_RX_STA&0x3fff;//得到此次接收到的数据长度
                                 printf(" 您发送的消息为: ");
                                 for(t=0;t<len;t++)
                                 {
                                             USART_SendData(USART1, USART_RX_BUF[t]);  
                                             while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);
                                             a=USART_RX_BUF[t];
                                             if(a==0x31)
                                             {
                                                    audio_play(1);
                                             }

初始化分别是:      发送:uart_init(115200);    //F103     给了一样的波特率,用串口调试助手测试发送是正常的
                           接收: uart_init(115200);   //F4   

驱动函数直接用了原子哥的例程,连线应该没有错,F103的PA9接F4的PA10,F103的PA10接F4的PA9。就是R接T,T接R

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