项目要求用喇叭播MP3音频,我选用的方案是MCU+TLV320DAC3120,计划按以下步骤进行:
1. MCU通过I2C来配置TLV320DAC3120
2. MCU负责读取EEPROM中MP3数据帧
3. 就像播放wav文件那样, MCU按MP3数据帧中的采样率向TLV320DAC3120发送MP3音频数据(没有解压的原始音频数据)
请问:
1. 我的步骤是否有问题,如果只用TLV320DAC3120的默认配置可以播MP3文件吗?
2. 我使用了TLV320DAC3120测试板,然后看完该芯片的datasheet后有些疑问(功力太浅,海涵啊):测试板连接PC后既可播wav文件又可播MP3文件。理应都是通过TLV320DAC3120实现DA的转换。wav是不用解码的,MP3是必须解码的,TLV320DAC3120是怎样识别I2S来的数据是否需要解码?是否有专门针对解码MP3数据的配置项?(可通过I2C配置的项目太多了,我通过MP3、MPEG检索datasheet没发现)
Jacky Wang(QD):
DAC3120就是一颗DAC,输入是I2S格式的音频信号,然后还原为模拟信号。DAC3120本身不能做解码,解码操作都是由PC上的播放软件或MCU完成。
DAC3120EVM板上有一颗USB转I2S的芯片(TAS1020B),可以将PC端解码出来的音频流通过USB端口送给DAC3120。
在你的项目应用中只要确认MCU有标准硬件I2S接口给DAC3120送数据,采样速率,数据格式设置正确(例如48kHz/24bit/I2S格式),就可以播放任何音源的声音。说白了播放什么样格式的音源文件不是由DAC3120决定的,而是由你的MCU解码能力决定的。
Carter Liu:
在步骤2之后加入解压程序就对了