39
127
244
高级会员
使用道具 举报
1
10
13
新手上路
0
131
初级会员
xxm 发表于 2024-1-17 15:42 只配置长度
Edmund1964 发表于 2024-1-17 16:41 不需要再配置,只需要把DMA_SxCR.EN设为1 就可以传送余下的数据。
坚持再坚持 发表于 2024-1-18 08:16 就是在停止DMA_Cmd(DISABLE)的数据流后,如果要重启的话,只需要配置数据的多少就可以了,然后DMA就会填 ...
坚持再坚持 发表于 2024-1-18 08:18 我测试了,在没有配置循环模式的情况下,提前暂停DMA的传输,直接把DMA_SxCR.EN设为1后不起作用
Edmund1964 发表于 2024-1-18 13:32 清了完成标准位没有? 这个我之前做过, 步骤是 一 DMA_SxCR.EN = 0
xxm 发表于 2024-1-18 11:23 是的,流程:先DMA_Cmd(DISABLE),然后重新设置通道长度,最后DMA_Cmd(ENABLE)
坚持再坚持 发表于 2024-1-19 11:01 这种问题官方的参考手册里面也没有描述清楚,面对这种问题,请问只能自己慢慢摸索测试,或者发帖询问吗?
xxm 发表于 2024-1-19 13:08 先要搞清除一点dma工作在何种模式,既然已经说了非循环模式,那么传输结束就需要手动填充长度。
坚持再坚持 发表于 2024-1-19 10:59 请问,你是直接:1.DMA_Cmd(DISABLE);2.清除DMA_xISR.TC1FX;3.DMA_Cmd(ENABLE),只用了这三部,中间没 ...
Edmund1964 发表于 2024-1-19 23:41 2 是判断DMA_xISR.TC1Fx 用DMA_Cmd(Disable) 后DMA传送不是马上停止的, 所以DMA_Cmd(Disable) 后要判断 ...
本版积分规则 发表回复 回帖后跳转到最后一页
|小黑屋|Archiver|手机版|硬汉嵌入式论坛
GMT+8, 2025-8-12 09:26 , Processed in 0.051941 second(s), 26 queries .
Powered by Discuz! X3.4 Licensed
Copyright © 2001-2023, Tencent Cloud.