OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2775|回复: 0

关于wm8978双通道改为单通道的简单解决方法

[复制链接]

0

主题

0

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2019-3-28
在线时间
23 小时
发表于 2019-11-14 16:38:49 | 显示全部楼层 |阅读模式
本帖最后由 ouwen 于 2019-11-15 11:21 编辑

当前在做一个关于语音传输的项目,在大文件传输的要求下,传输速率尤其重要,尽量是越快越好,当然还有一种方法就是减少数据量,但是原子的程序虽然硬件接口左右通道连在一起而且双通道使能,但项目中单通道是更省数据量和资源的,所以就想办法改为单通道,但是看网上提问这个问题的很多,但是解决方法都没有,所以就只能自己看I2S的通信,和PCM的编码。来改单通道。
1.先看初始化wav头
这里需要改的channel,SampleRate和BlockAlign即可
2.再看PCM的编码格式
原子是双通道16位PCM,就是第四种写入方式,我们要改成第三种,至于你选择哪个通道这里就随意了

3.定位到I2SDMA接收中断,这里选择的是双缓冲接受,但是最终会写到pbuf数组中,所以我只要把这个数组重写,即将偶数位的数据取出或者把奇数位的数据取出即可。

。。。。。。上传不了图片,不知道为啥。。。。。。





正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 22:08

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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