WM8978简介
WM8978是一个低功耗、高质量的立体声多媒体数字信号编译码器,它结合了一个高质量的立体声音频DAC和ADC,带有灵活的音频线输入、麦克风输入和音频输出处理。
其主要应用于便携式应用,可以应用到可携式数码摄像机或数码相机等设备。
控制接口
WM8978内部有58个寄存器。每个寄存器的地址位为7位,数据位为9位。可通过控制接口配置相应的寄存器以打开相应的通道或使能相应的功能。
控制接口是一个可选的2线或3线结构。通过MODE引脚选择(MODE引脚接高电平时为3线接口模式、低电平时为2线接口模式)。
当控制接口为2线接口模式时,其时序图如下图所示。
数据传输
WM8978可通过IIC或PCM音频接口与FPGA进行音频数据传输。
IIS总线,又称集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准。
数据时序
WM8978支持主从两种工作模式,主从工作模式的区别在于BCLK和LRC由谁控制。
在主模式下,WM8978作为主控设备,产生BCLK和LRC信号并传输;
在从模式下,BCLK和LRC信号由外部设备提供;
MCLK为主时钟输入接口,MCLK的频率为256*fs。
fs为音频的采样率,一般为48KHZ,所以MCLK为256x48=12288kHz=12.288MHz。我们一般使用FPGA内部的PLL分频得到12MHz的时钟信号,然后通过配置WM8978内部的寄存器使其PLL输出12.288MHz的时钟信号。