[STM32F0] 关于stm32f051 uart用DMA接收问题

[复制链接]
4792|20
 楼主| racinglam 发表于 2015-8-19 17:02 | 显示全部楼层 |阅读模式
本帖最后由 racinglam 于 2015-8-19 17:22 编辑

我发现用dma接收uart数据的时候,同时打开RXNE中断时,RXNE中断没有触发,但关闭dma,只开RXNE中断可以触发,这是否正常?我主要想用RXNE中断计算接收了多少个数据,实现用dma接收未知长度数据。
cat_li 发表于 2015-8-19 17:06 | 显示全部楼层
没有用DMA接受过,不清楚
aundry 发表于 2015-8-19 17:28 | 显示全部楼层
用了DMA的时候,就不会进入RXNE中断了

评分

参与人数 1威望 +3 收起 理由
racinglam + 3 赞一个!

查看全部评分

 楼主| racinglam 发表于 2015-8-19 17:29 | 显示全部楼层
aundry 发表于 2015-8-19 17:28
用了DMA的时候,就不会进入RXNE中断了

确定吗,那我只能想其它办法了,谢谢
mmuuss586 发表于 2015-8-19 19:06 | 显示全部楼层
没试过呢;
不过你可以用DMA计算接收了多少数据啊;
songchenping 发表于 2015-8-19 20:19 | 显示全部楼层
用DMA的时候RXNE就不起作用了。
aundry 发表于 2015-8-19 20:42 来自手机 | 显示全部楼层
其实如果你想统计数据,还不如直接用中断接收,自己存放在ram,主循环再处理帧
或许根据dma读取的时候统计数量
 楼主| racinglam 发表于 2015-8-20 09:02 | 显示全部楼层
aundry 发表于 2015-8-19 20:42
其实如果你想统计数据,还不如直接用中断接收,自己存放在ram,主循环再处理帧
或许根据dma读取的时候统计 ...

本来想用dma提高效率,因为中断接收接一字节都要中断一次,如果stm32的串口有FIFO就好了,看来还是用中断接收算了。
aundry 发表于 2015-8-20 10:15 | 显示全部楼层
racinglam 发表于 2015-8-20 09:02
本来想用dma提高效率,因为中断接收接一字节都要中断一次,如果stm32的串口有FIFO就好了,看来还是用中断 ...

其实单单中断进去接收数据,然后直接放在自己模拟的FIFO
在main中循环读FIFO就可以了,这样也耗不了多少时间,而且FIFO还可以根据资源来设置
记得ST的,STR7的串口是带FIFO的,没记错貌似是32Byte吧
像STM32这种高性价比的,都是内部共用很多资源,最不爽就是USB与CAN混到一块去
 楼主| racinglam 发表于 2015-8-20 17:56 | 显示全部楼层
aundry 发表于 2015-8-20 10:15
其实单单中断进去接收数据,然后直接放在自己模拟的FIFO
在main中循环读FIFO就可以了,这样也耗不了多少 ...

USB和CAN混一起?这个我没用过,就不发表评论了,不过研究了一下stm32cube的uart驱动,感觉写得不怎么好用!
 楼主| racinglam 发表于 2015-8-20 18:01 | 显示全部楼层
怎么结贴,一直显示分配分数不对
天灵灵地灵灵 发表于 2015-8-21 11:16 | 显示全部楼层
DMA搬移的时候是不是可以统计?
可可球 发表于 2015-8-27 16:04 | 显示全部楼层
用DMA的时候,不会进入RXNE中断,是这样吗
尤彼卡 发表于 2015-8-27 16:19 | 显示全部楼层
模拟的FIFO行吗
734774645 发表于 2015-8-28 09:12 | 显示全部楼层
论坛处处有高人啊,看了大家的回复,感觉自己 太笨了。
598330983 发表于 2015-8-28 12:49 | 显示全部楼层
这个uart,如何跟DMA合作工作,还是需要好好研究一下的。
mintspring 发表于 2015-8-29 16:24 | 显示全部楼层
串口到DMA,不知道楼主要把数据放哪儿去
玛尼玛尼哄 发表于 2015-8-29 16:42 | 显示全部楼层
我做过通过串口和DMA把数据写入到SD卡。
 楼主| racinglam 发表于 2015-8-31 11:56 | 显示全部楼层
mintspring 发表于 2015-8-29 16:24
串口到DMA,不知道楼主要把数据放哪儿去

放到环形buffer里
mintspring 发表于 2015-9-4 22:03 | 显示全部楼层
原来Buffer是环形的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

89

帖子

0

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