配置TDM格式
什么是TDM?
TDM是一种多路复用技术,允许多个数据流通过单个总线传输。在数字音频应用中,TDM允许多个音频通道通过单个数据线传输。TDM格式通常用于连接多个音频设备,例如音频编解码器和数字信号处理器。
详细的说明请参考I2S/TDM接口说明,XMOS默认可以通过宏定义XUA_PCM_FORMAT = XUA_PCM_FORMAT_TDM以支持TDM8格式,本文中主要介绍如何配置不同的TDM格式以支持多个音频通道。
如何在XMOS中配置TDM格式
由于XMOS芯片的灵活性,可以通过软件配置来支持不同的TDM格式。对于lib_xua的v3.5.1版本,配置TDM格式的步骤非常简单:
- XMOS通过
I2S_CHANS_PER_FRAME定义每个TDM帧中的音频通道数,因此只要修改该宏的值即可。 - 可以在
xua_conf.h中或者在Makefile中定义I2S_CHANS_PER_FRAME的值。
xua_conf.h
#define I2S_CHANS_PER_FRAME 4 // 修改为TDM4格式
Makefile
XCC_FLAGS_2AMi4o4xxxxxx_tdm += -DI2S_CHANS_PER_FRAME=4 # 推荐在编译选项中定义
常见问题和解决方案
- 配置例如TDM4,TDM16格式时,需要确保已经定义了
XUA_PCM_FORMAT = XUA_PCM_FORMAT_TDM,使得时序和数据格式正确。 - 对于TDM时序问题,可以参考修改时序以配置TDM。