OpenEdv-开源电子网

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

STM32F429 DMA疑惑

[复制链接]

18

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
350
金钱
350
注册时间
2016-8-2
在线时间
78 小时
发表于 2018-8-10 09:11:33 | 显示全部楼层 |阅读模式
本帖最后由 ajianyes 于 2018-8-10 09:14 编辑

最近在使用F429的DMA时发现一个问题,我使用了USART6的TX、RX与TIM1的CC1、CC2、CC3、CC4捕获
配置了同样的DMA2_Strem6、DMA2_Strem1,当配置了USART6之后,在配置TIM1,USART6就不工作了
使用上为何会产生这种冲突呢?会不会是DMA的BUG?


微信图片_20180810090230.jpg

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

使用道具 举报

18

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
350
金钱
350
注册时间
2016-8-2
在线时间
78 小时
 楼主| 发表于 2018-8-10 09:16:23 | 显示全部楼层
公司不让上网,文件传输也不行,只能拍一张手册的照片了! USART6使用的通道是5、TIM1使用的通道是6,这个不应该会产生任何冲突的啊,求助各位大神
回复 支持 反对

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-8-10 10:19:57 | 显示全部楼层
帮顶
回复 支持 反对

使用道具 举报

18

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
350
金钱
350
注册时间
2016-8-2
在线时间
78 小时
 楼主| 发表于 2018-8-10 12:10:30 | 显示全部楼层

谢谢,这个DMA应该是有办法兼顾使用的
回复 支持 反对

使用道具 举报

60

主题

409

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2814
金钱
2814
注册时间
2012-10-17
在线时间
653 小时
发表于 2018-8-10 13:58:35 | 显示全部楼层
ajianyes 发表于 2018-8-10 12:10
谢谢,这个DMA应该是有办法兼顾使用的

來猜猜~~
你的DMA2_Strem6與DMA2_Strem1 分別都被初始化2次
第一次給USART6用去, 第二次給TIM1用去,(之前的設置值被覆寫了)
試試把初始化流程對調 會不會變成配置了USART6後TIM1就不工作了

看表TIM1_CH1可以選DMA2_Strem3阿...


回复 支持 反对

使用道具 举报

18

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
350
金钱
350
注册时间
2016-8-2
在线时间
78 小时
 楼主| 发表于 2018-8-10 15:11:53 | 显示全部楼层
civic7366 发表于 2018-8-10 13:58
來猜猜~~
你的DMA2_Strem6與DMA2_Strem1 分別都被初始化2次
第一次給USART6用去, 第二次給TIM1用去,(之 ...

是,现在就是想如何才能让USART6与TIM1_CH1都使用DMA2_Stream6不冲突,如果连接的外设多的情况下,想避估计也不好避开
回复 支持 反对

使用道具 举报

60

主题

409

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2814
金钱
2814
注册时间
2012-10-17
在线时间
653 小时
发表于 2018-8-10 15:32:12 | 显示全部楼层
ajianyes 发表于 2018-8-10 15:11
是,现在就是想如何才能让USART6与TIM1_CH1都使用DMA2_Stream6不冲突,如果连接的外设多的情况下,想避估 ...

除非應用上有其它條件可以用來判斷切換DMA2_Stream6通道時機(搞分時複用)

但基本上....RX跟捕获都不能自己決定使用時間

幹嘛不中斷就好...RX很頻繁 + TIM頻率很高?

回复 支持 反对

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-8-10 15:45:20 | 显示全部楼层
DMA_SxCR 控制数据流到底使用哪一个通道,每个数据流有 8 个通道可
供选择,每次只能选择其中一个通道进行 DMA 传输
你怎么不开启通道5呢
业精于勤荒于嬉;行成于思毁于随!
回复 支持 反对

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-8-10 21:05:06 | 显示全部楼层
例如通道 1 的几个 DMA1 请求(ADC1、 TIM2_CH3、 TIM4_CH1),
这几个是通过逻辑或到通道 1 的,这样我们在同一时间,就只能使用其中的一个。
其他通道也是类似的
业精于勤荒于嬉;行成于思毁于随!
回复 支持 反对

使用道具 举报

18

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
350
金钱
350
注册时间
2016-8-2
在线时间
78 小时
 楼主| 发表于 2018-8-13 08:41:06 | 显示全部楼层
1208 发表于 2018-8-10 21:05
例如通道 1 的几个 DMA1 请求(ADC1、 TIM2_CH3、 TIM4_CH1),
这几个是通过逻辑或到通道 1 的,这样我们 ...

usart6 dma必须要开启通道5才能工作,已经打开了的,TIM1—DMA是通道6,但是初始化的时候软件都是DMA2_STREAM的,所以只能够初始化一个外设。
回复 支持 反对

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-8-13 10:10:08 | 显示全部楼层
嗯嗯!原来是这样的,那你问题不是解决不了
业精于勤荒于嬉;行成于思毁于随!
回复 支持 反对

使用道具 举报

18

主题

103

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
350
金钱
350
注册时间
2016-8-2
在线时间
78 小时
 楼主| 发表于 2018-8-15 08:27:37 | 显示全部楼层
1208 发表于 2018-8-13 10:10
嗯嗯!原来是这样的,那你问题不是解决不了

算是,得出 不能同时使用一个DMA数据流
回复 支持 反对

使用道具 举报

57

主题

1680

帖子

3

精华

资深版主

Rank: 8Rank: 8

积分
4306
金钱
4306
注册时间
2018-6-30
在线时间
808 小时
发表于 2018-8-15 09:31:16 | 显示全部楼层
嗯嗯!也算有所了解
业精于勤荒于嬉;行成于思毁于随!
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

新手上路

积分
29
金钱
29
注册时间
2022-6-8
在线时间
7 小时
发表于 2022-7-23 11:31:13 来自手机 | 显示全部楼层
为什么我429dma传输tim的ccr会卡死在传输完成标志哪里
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-25 12:34

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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