OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2904|回复: 4

DMA接收问题

[复制链接]

3

主题

9

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2016-4-22
在线时间
7 小时
发表于 2016-5-26 15:32:13 | 显示全部楼层 |阅读模式
5金钱
本帖最后由 ksdokso 于 2016-5-26 15:36 编辑


用DMA双循环接收大量数据,可以接收到数据,但是加上串口空闲中断来判定这一贞接收已经结束后,就不能接收数据了,也不能进入DMA中断。大家帮帮忙看看,已经纠结好久了。

DMA接收.rar

4.14 MB, 下载次数: 870

这是源程序

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

18

主题

79

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
283
金钱
283
注册时间
2015-11-12
在线时间
54 小时
发表于 2016-5-26 15:38:06 | 显示全部楼层
什么意思? 你开了DMA,还开了中断么?    接收到数据要么产生DMA请求,要么就允许中断。
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2016-4-22
在线时间
7 小时
 楼主| 发表于 2016-5-26 15:49:07 | 显示全部楼层
pthread 发表于 2016-5-26 15:38
什么意思? 你开了DMA,还开了中断么?    接收到数据要么产生DMA请求,要么就允许中断。

我看论坛里有人说可以用串口空闲中断来判断是否接收结束了吗?
回复

使用道具 举报

18

主题

79

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
283
金钱
283
注册时间
2015-11-12
在线时间
54 小时
发表于 2016-5-26 16:13:19 | 显示全部楼层
ksdokso 发表于 2016-5-26 15:49
我看论坛里有人说可以用串口空闲中断来判断是否接收结束了吗?

这是两种方式。 接收的话,如果能确定接收多少字节,可以用DMA。 不确定多少字节的话,就只能用中断了, 然后通过串口中断空闲时间来确定是否结束。   
回复

使用道具 举报

3

主题

9

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2016-4-22
在线时间
7 小时
 楼主| 发表于 2016-5-26 21:31:24 | 显示全部楼层
yklstudent 发表于 2016-5-26 20:11
USART+DMA接收发送中断+USART空闲中断完全可以实现任何数据的接收与发送

但是我的代码就是不能用呢,就是按照这种方法来的,你能不能看一下我的代码,看问题出在哪里
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-8 17:31

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表