[STM32F4] stmf4中同时使用两个串口有冲突?

[复制链接]
3378|20
 楼主| 地瓜patch 发表于 2018-7-19 21:07 | 显示全部楼层 |阅读模式
同时使能uart2和uart3及两者的DMA功能,发现使能uart3的时候。uart2的dma接收数组数据全为零,但是用库函数 USART_ReceiveData(USART2)可以收到数据。将uart3的接收gpio的初始化 GPIO_InitStructure.GPIO_Pin   = GPIO_Pin_11去掉,uart2的dma可以接收数据。

评论

补充一下库函数是用RXNE中断,DMA是用IDLE中断。两个uart都是这么配置的  发表于 2018-7-20 11:01
labasi 发表于 2018-7-20 08:13 | 显示全部楼层
别用dma试试 我感觉没压力啊

评论

库函数 USART_ReceiveData(USART2)可以收到数据  发表于 2018-7-20 10:59
lixmlxm 发表于 2018-7-20 08:34 | 显示全部楼层
STM103中,我没有用DMA,我测试过5串口同时用,没有问题。

评论

库函数 USART_ReceiveData(USART2)可以收到数据  发表于 2018-7-20 11:00
wowu 发表于 2018-7-20 08:40 | 显示全部楼层
恩 我用普通的也没啥问题
yklstudent 发表于 2018-7-20 11:32 来自手机 | 显示全部楼层
四个串口+DMA工作都没问题,两个更不会存在问题了,还是多检查自己写的代码哪里有问题

评论

四个串口都是用dma? 每个串口如何配置的?有例程看看么?  发表于 2018-7-20 13:56
lixmlxm 发表于 2018-7-21 06:29 | 显示全部楼层
labasi 发表于 2018-7-20 08:13
别用dma试试 我感觉没压力啊

  那应该就是设置问题了,因为我没有使用过DMA,所以对后面的设置不了解,不敢乱发言。
 楼主| 地瓜patch 发表于 2018-7-22 09:40 | 显示全部楼层
lixmlxm 发表于 2018-7-21 06:29
那应该就是设置问题了,因为我没有使用过DMA,所以对后面的设置不了解,不敢乱发言。 ...

目测就是程序上的问题。没找到原因
lixmlxm 发表于 2018-7-23 08:41 | 显示全部楼层
地瓜patch 发表于 2018-7-22 09:40
目测就是程序上的问题。没找到原因

很正常的,我一个Keil设置问题,搞了很多天。
Richardd 发表于 2018-7-23 18:41 | 显示全部楼层
多检查自己写的代码哪里有问题吧
wakayi 发表于 2018-7-24 13:03 | 显示全部楼层
我很少用dma 但是普通情况下么以偶出现过这种现象
小灵通2018 发表于 2018-7-24 16:51 | 显示全部楼层
看来32的DMA比较难搞啊。
 楼主| 地瓜patch 发表于 2018-7-24 18:00 | 显示全部楼层
Richardd 发表于 2018-7-23 18:41
多检查自己写的代码哪里有问题吧

把两个uart的rxne禁用了,反正也不需要帧长度
 楼主| 地瓜patch 发表于 2018-7-24 18:01 | 显示全部楼层
wakayi 发表于 2018-7-24 13:03
我很少用dma 但是普通情况下么以偶出现过这种现象

目测是我程序的问题
wakayi 发表于 2018-7-25 08:34 | 显示全部楼层
地瓜patch 发表于 2018-7-24 18:01
目测是我程序的问题

请问楼主找到哪里的设置有问题了么
 楼主| 地瓜patch 发表于 2018-7-25 08:45 | 显示全部楼层
wakayi 发表于 2018-7-25 08:34
请问楼主找到哪里的设置有问题了么

dma用idle中断就可以,把RXNE中断关掉了
wakayi 发表于 2018-7-26 09:03 | 显示全部楼层
地瓜patch 发表于 2018-7-25 08:45
dma用idle中断就可以,把RXNE中断关掉了

哦哦哦  感谢解惑啊
Erichk 发表于 2018-7-30 15:43 | 显示全部楼层
很可能是程序上的问题,检查一下配置
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2004

主题

15440

帖子

31

粉丝
快速回复 在线客服 返回列表 返回顶部