被F407的I2S3搞疯了啊

2019-07-20 06:57发布

最近做了一个音频传输的项目,需要同时传输两个WM8978的音频数据。用I2S2没什么大问题,但是用I2S3接收数据时发现不能接受全部,比如16位数据,它只能接8位;24位数据只能接收后16位,像0X3400这样。我的I2S3直接参照原子I2S2的程序改的?好心人帮帮忙,这个问题已经困扰我好久了,不知道是F4本身有问题还是程序有问题。两个I2S都是主动模式,而且输出为时钟,帧时钟都对,wm8978输出的数据波形也没问题。对了,请问两个I2S是共用一个PLLI2S的吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
正点原子
1楼-- · 2019-07-20 12:55
 精彩回答 2  元偷偷看……
duckliang
2楼-- · 2019-07-20 12:59
正点原子 发表于 2016-11-20 19:16
帮顶

原子哥不解答一下吗?话说F4的I2S3硬件本身有没有问题?
正点原子
3楼-- · 2019-07-20 14:09
 精彩回答 2  元偷偷看……
abdfgh
4楼-- · 2019-07-20 19:06
硬件一般是没有问题的 建议先只用I2S3调通,因为是修改来的程序,筛选看看是不是修改寄存器值的时候没有送I2S2改成I2S3
不良苏
5楼-- · 2019-07-20 20:46
兄弟你程序上传一下
lsx19
6楼-- · 2019-07-21 01:42
 精彩回答 2  元偷偷看……

一周热门 更多>