STM32F4的SPI用DMA发送数据不对

2019-07-21 00:57发布

没图说个啥,上图



上图为用示波器的单次触发模式捕捉的波形,DMA1的SPI2—TX通道,DMA_InitStructure.DMA_Mode = DMA_Mode_Circular;改成normal模式,坛友说改成normal模式每发送一次数据要启动一次DMA,撇开这不谈。
单片机每复位一次就进行一次DMA配置,配置完后就会发送数据,数据是发送了,但是貌似只发了8个数据,0xAA,0x00,0x00,0xAA, 0x55,0x55,0x55,0x55,后面的24个数据没有发送了。DMA配置如下:


请问大神是怎么回事?

问题2是,我在程序的主函数的while循环里加入了这两句:

 DMA_Cmd(DMA_STREAM, ENABLE);
  SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Tx, ENABLE);//重新启动DMA

也没看到波涛汹涌的数据发送出来,求赐教!










友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
10条回答
yongyooh
1楼-- · 2019-07-22 01:22
 精彩回答 2  元偷偷看……
林子
2楼-- · 2019-07-22 01:34
 精彩回答 2  元偷偷看……
yang627468471
3楼-- · 2019-07-22 04:33
大神能否把你的工程代码发出来看下啊
gr383448572
4楼-- · 2019-07-22 08:52
回复【8楼】yongyooh:
---------------------------------
你好 大神 能把你的这个源程序我给我学习下吗 我搞了一个礼拜了就是不对 我邮箱383448572@qq.com 拜托了 谢谢

一周热门 更多>