你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

关于stm32f051r8 spi dma RX请教

[复制链接]
sinc_mark 提问时间:2014-7-8 08:26 /
 
在使用stm32f051r8 进行2.4G芯片调试,在发送端发送一帧固定的数据,接收端去进行接收,使用MDK调试,将收到的数据放入一个内存数组中观察,使用普通的SPI模式从DR接收数据时,可以看到数组收到的数据基本正确的,后来为提高速度,使用SPI DMA模式去读DR,发现一开始时,收到的数据正确,但运行一段时间后,收到的整帧数据右移了三个字节(发送的数据前三字节为0),再运行一段时间,数据右移两个字节(发送的数据前两个字节为0),之后再运行一段时间,数据右移一个字节(类似前一个字节为0),之后数据基本正常,此后反复此过程,我也注意到以下几点:
            1:每次重新打开DMA之前再设置发送的数据长度;
            2:在中断函数中,发送完毕后清除发送中断,接收完毕清除接收中断;
            除此之外还有其它的原因导致我的问题吗?
            这个问题找了几天的原因,还是没找出问题的所在,请各位指导,谢谢!
收藏 评论9 发布时间:2014-7-8 08:26

举报

9个回答
废鱼 回答时间:2014-7-8 10:01:47

RE:关于stm32f051r8 spi dma RX请教

发送完毕后关闭中断,下次发送的时候再开启。这样测试一下。
sinc_mark 回答时间:2014-7-8 12:14:47

回复:关于stm32f051r8 spi dma RX请教

 在发送结束中断中清除发送中断,接收完成中清除接收中断,已经做了这个操作了!
废鱼 回答时间:2014-7-8 14:38:07

RE:关于stm32f051r8 spi dma RX请教

发送完清除发送中断还是会进入一次中断。建议是关闭中断。
sinc_mark 回答时间:2014-7-8 14:40:56

回复:关于stm32f051r8 spi dma RX请教

回复第 4 楼 于2014-07-08 14:38:07发表:
发送完清除发送中断还是会进入一次中断。建议是关闭中断。 

使用TX推动RX,当tx发送完毕数据,关闭TX,当RX接收完一帧数据,再关闭RX
if(DMA_GetFlagStatus(DMA1_FLAG_TC4) == SET)
 {
  DMA_ClearITPendingBit(DMA1_FLAG_TC4 | DMA1_FLAG_HT4 |DMA1_FLAG_TE4);  //DMA1_FLAG_TC2 | DMA1_FLAG_HT2 | DMA1_FLAG_TE2
  DMA_Cmd(DMA1_Channel4, DISABLE);
  SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Rx, DISABLE);
 }
 //发送完成
 if(DMA_GetITStatus(DMA1_IT_TC5) == SET)
 {
  DMA_ClearITPendingBit(DMA1_FLAG_TC5 | DMA1_FLAG_HT5 |DMA1_FLAG_TE5);
  DMA_Cmd(DMA1_Channel5, DISABLE);
  SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Tx, DISABLE);
  
 }
废鱼 回答时间:2014-7-8 17:10:37

RE:关于stm32f051r8 spi dma RX请教

接收可以不用关,发送关了就可以了。
sinc_mark 回答时间:2014-7-8 18:30:59

回复:关于stm32f051r8 spi dma RX请教

 不明白版主的意思?你是说只是在tx完成中断处清除其中断,然后RX就不管了?
废鱼 回答时间:2014-7-9 09:45:15

RE:关于stm32f051r8 spi dma RX请教

TX发送完成以后关闭发送中断,接收中断可以不用去处理。
有缘于你 回答时间:2014-7-12 17:13:46

RE:关于stm32f051r8 spi dma RX请教

用接收中断就行,发送中断不用,你两个都开就得进两次中断
aaa999kk 回答时间:2014-7-17 16:59:16

RE:关于stm32f051r8 spi dma RX请教

中断程序可以检查一些最基本的漏洞

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版