只要功能引脚没重合,或复用冲突之类的,几路uart是可以单独工作的,互不相关。所以多半是比程序有bug,你可以考虑从时钟、中断相关配置检查问题点。
应该是没有影响的,因为stm32的各个串口是独立工作的!不知道你的串口收发用的是什么机制,如果是中断的话应该没有问题,如果是查询的话可能会导致串口3正在收发数据无法执行其他程序,进而串口1接不到东西
只要配置好了能同时发送工作
也可以用杜邦线将两个USART的其中一个发送端连接到另一个的接收端,直接收发数据
stm32实现按键AD串口同时控制的方法如下
1、UART1和复用的IO都在时钟APB2上,所以先开启UART1和GPIOA时钟
2、对GPIO参数进行设置,注意发送和接收IO对应的工作模式
3、初始化UART参数,依次为波特率、数据长度、停止位、校验位、模式设置(全双工)、硬件数据流控制开关。
4、初始化GPIO与UART1
5、使能UART1发送数据可使用USART_SendData(USART1,DATA);使用while(USART_GetFlagStatus(USART1,USART_FLAG_TC)!=SET);查询数据是否发送完成。
两个usat全在初始化就可以了,中断中配置好中断函数处理就可以了。一般都开5个串口。
就是软件的问题,不是硬件的事儿。再好好看看程序。
把两个串口的设置不要有一点省略,设置重复了都没事儿,但少设置了就是出现问题。
本文标签:stm32同时两个串口