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

STM32L496外设SAI采用DMA驱动方式问题反馈

[复制链接]
深圳市峰实电子技术有限公司 提问时间:2019-6-27 10:46 /
项目情况:硬件采用STM32开发板NUCLEO-L496ZG
1、SAI采用TDM方式采集语音传感器信号,4个数字音频采集传感器;
2、总线上有4个传感器;
3、单个循环采集传感器数据8192个;
4、DMA方式,直接把外设数据搬运到内存中;
问题:配置好四个通道,开始采集数据,理论采集的数据第一个通道数据在4的倍数(0,4,8类推),第二个通道数据在4的倍数加1(1,5,9类推),第三个通道数据在4的倍数加2(2,6,10类推),第四个通道数据在4的倍数加3(3,7,11类推),实际采样存放数据会出现第一通道数据不再4的倍数位置,可能在4的倍数加1,然后整体通道数据就向后移了(2通道数在4的倍数加2,3通道数据在4的倍数加3,4通道数据在4的倍数),第一通道数据也可能在4的倍数加2和4的倍数加3,以此类推。
1、请问为什么存储数据没有按照规律来存放?
收藏 评论3 发布时间:2019-6-27 10:46

举报

3个回答
wenyangzeng 回答时间:2019-6-27 11:33:35
本帖最后由 wenyangzeng 于 2019-6-27 11:35 编辑

好像应该先配置完成DMA后再配置SAI,同时使用二维数组的数据缓冲区
深圳市峰实电子技术有限公司 回答时间:2019-6-27 13:32:42
wenyangzeng 发表于 2019-6-27 11:33
好像应该先配置完成DMA后再配置SAI,同时使用二维数组的数据缓冲区

谢谢您的回复,先使能DMA在使能SAI,这种方式我试过,效果是一样的,您试下您说的二维数字的方法,谢谢你的回复!
深圳市峰实电子技术有限公司 回答时间:2019-6-27 13:43:27
sanjuncsw 发表于 2019-6-27 13:32
谢谢您的回复,先使能DMA在使能SAI,这种方式我试过,效果是一样的,您试下您说的二维数字的方法,谢谢你 ...

刚把接收内存改成二维数组,我这边观察到位置还是会变动,有没有可能SAI采用DMA的方式底层会曾在问题?
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版