什么是I2S协议
- I2S协议的介绍
- I2S协议有什么
这两天在搞ESP32的btAudio库,接触到了I2S,简单做个笔记。
I2S协议的介绍
I2S(Inter—IC Sound)总线, 又称集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准。
这里代入I2C总线来理解就可以了,说白了就是一种数据传输的通讯协议,基本上类似于I2C,只不过传输的是S(Sound)。
本质就是用数值的方式将模拟信号存储下来,再通过总线传输出去。
I2S协议有什么
在飞利浦公司的I2S标准中,既规定了硬件接口规范,也规定了数字音频数据的格式。
I2S总线的3个信号线:
SCK: (continuous serial clock) 串行时钟
串行时钟SCK,也叫位时钟BCLK。对应数字音频的每一位数据,SCK都有1个脉冲。SCK的频率 = 声道数 * 采样频率 * 采样位数。
WS: (word select) 字段(声道)选择
字段选择信号WS,也叫LRCLK,用于切换左右声道的数据。WS的频率 = 采样频率。 字段选择信号WS表明了正在被传输的声道。I2S
Philips标准WS信号的电平含义如下: WS为0,表示正在传输的是左声道的数据; WS为1,表示正在传输的是右声道的数据。
SD: (serial data) 串行数据
串行数据SD,就是用二进制补码表示的音频数据。I2S串行数据在传输的时候,由高位(MSB)到低位(LSB)依次进行传输。
I2S2ext_SD和I2S3ext_SD
用于控制I2S全双工模式的附加引脚。
主时钟MCLK
一般还有MCLK,主时钟。是采样频率的256倍或384倍。有时为了使系统间能够更好地同步,当I2S配置为主模式(并且SPI_I2SPR寄存器中的MCKOE位置1)时,使用此时钟,该时钟输出频率
256×fs,fs即音频信号采样频率(fs)。
即:
串行时钟SCLK,也叫位时钟(BCLK)
帧时钟LRCK,(也称WS),用于切换左右声道的数据
串行数据SDATA,音频数据。
参考自 I2S的理解
I2S 百度百科
I2S时序图看这