硬汉嵌入式论坛

 找回密码
 立即注册
查看: 381|回复: 3
收起左侧

[STM32H7] 请教下大神目前捣鼓wm8978遇到比较奇怪的现象 ?

[复制链接]

610

主题

3061

回帖

4911

积分

至尊会员

积分
4911
发表于 2023-6-8 10:24:28 | 显示全部楼层 |阅读模式
请教下大神目前捣鼓wm8978遇到比较奇怪的现象 ?


也可能是自己的实力不够吧

具体如下:

1. 我吧 sai dma, 8978 都配置为统一的 16bit,立体声道,mclk 设置为 11289600 Hz
2. 播放 44.1k 的采样率,16bit数据格式,单双声道 都没有问题
3. 播放 44.1k 的采样率,24bit 数据格式(读取数据后转换为 16bit 进行播放),
    a. 双声道 播放正常
   b. 单声道播放时速度貌似正好时正常播放速度的一半很慢,当吧 mclk 主频频率 /2 才正常(如果不 /2 的话,播放速度贼慢 ),
   c. 为什么主频高了播放速度反而变慢了 ??

4. 播放 44.1k 的采样率,32bit 数据格式(读取数据后转换为 16bit 进行播放),
  a . 单双声道都需要吧 mclk 的频率 /2 后播放速度就都正常 ?? 也是主频高了反而播放速度变慢 ??


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106978
QQ
发表于 2023-6-8 10:53:17 | 显示全部楼层
是DMA双缓冲玩法吧,DMA中断里面直接寄存器操作,不要用DMA的HAL库管理方式了,是不是好点。
回复

使用道具 举报

610

主题

3061

回帖

4911

积分

至尊会员

积分
4911
 楼主| 发表于 2023-6-8 11:29:56 | 显示全部楼层
eric2013 发表于 2023-6-8 10:53
是DMA双缓冲玩法吧,DMA中断里面直接寄存器操作,不要用DMA的HAL库管理方式了,是不是好点。

在 dma 里面使用的是 寄存器的方法操作的,
回复

使用道具 举报

610

主题

3061

回帖

4911

积分

至尊会员

积分
4911
 楼主| 发表于 2023-6-8 20:29:11 | 显示全部楼层
eric2013 发表于 2023-6-8 10:53
是DMA双缓冲玩法吧,DMA中断里面直接寄存器操作,不要用DMA的HAL库管理方式了,是不是好点。

你好, 不好意思., 是我之前描述错了, 不是主频 减半, 而是主频需要提高一倍才可以,


如播放 24bit , 44.1k 采样率, 双声道主频需要 11.2896M , 而单声道则需要 11.2896*2 才可以, 怎么声道 少了,反而主频还需要提高啊 ?

这是神马逻辑呀 ??????
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-12 22:06 , Processed in 0.166787 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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