STM32的dma能不能实现传输中,字节之间有间隔?

2019-12-20 21:30发布

本帖最后由 zxq6 于 2018-4-13 19:41 编辑

如题,谢谢!
因为外设要求,传输的时候,每2个字节之间,需要一定的时间间隔。
请问下,DMA能不能实现这个需求?
如果不能的话,有没有简单的办法,能够实现类似的,cpu占用率低的大量数据传输?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
主楼一区401
1楼-- · 2019-12-21 01:40
定时器出触发是否可行?
zxq6
2楼-- · 2019-12-21 03:35
主楼一区401 发表于 2018-4-13 19:47
定时器出触发是否可行?

是中断后设置dma么?
如果是的话,cpu占用估计比查询输出还低吧?
如果不是的话,请指教一下如何操作?谢谢!
gao_hailong
3楼-- · 2019-12-21 03:43
 精彩回答 2  元偷偷看……
SUPER_CRJ
4楼-- · 2019-12-21 07:21
2个字节还要用DMA?可不可以用一个DMA控制另外一个DMA?
zxq6
5楼-- · 2019-12-21 11:10
SUPER_CRJ 发表于 2018-4-13 19:54
2个字节还要用DMA?可不可以用一个DMA控制另外一个DMA?

不是只有2个字节,而是每2个字节。

每次传输有1k字节,每3-5ms左右要传一次。
如果用查询方式,占用cpu比较多,所以想到用dma
但是设备那边又不支持1k 连续的时钟输入,所以有此一问。
wshtyr
6楼-- · 2019-12-21 12:45
zxq6 发表于 2018-4-13 20:08
不是只有2个字节,而是每2个字节。

每次传输有1k字节,每3-5ms左右要传一次。

具体是什么外设?
按LZ的要求可以用一个定时器,比如TIM1,使能2路比较输出通道的DMA,计数周期为要求的间隔,2路匹配的间隔根据实际情况计算

用哪2路要看手册,比如STM32F2系列的DMA2,以下圈出来的就可以用

dma.png (419 KB, 下载次数: 0)

下载附件

2018-4-13 21:40 上传

一周热门 更多>