2. I2S接口

作者: 郑行_aover | 来源:发表于2019-03-21 11:55 被阅读0次

1. I2S接口概述

I2S全称Inter-IC Sound, Integrated Interchip Sound,或简写IIS,是飞利浦在1986年定义(1996年修订)的数字音频传输标准,用于数字音频数据在系统内部器件之间传输,例如编解码器CODEC、DSP、数字输入/输出接口、ADC、DAC和数字滤波器等。除了都是由飞利浦定义外,I2S和I2C没有任何关系。

I2S硬件接口定义

  • 串行时钟SCLK,也叫位时钟(BCLK),即对应数字音频的每一位数据,SCLK都有1个脉冲,SCLK的频率=2采样频率采样位数。

  • 帧时钟LRCK,用于切换左右声道的数据,1为左声道,0为右声道,LRCK频率等于采样频率。

  • 串行数据SD,就是用二进制补码表示的音频数据。

有时为了使系统能够更好地同步,还需要另外一个信号MCLK,称为主时钟,也叫系统时钟(sys clock),一般是采样频率的256倍或是384倍。切记,MCLK并不是必须的。可有可无,看设计要求。
电气连接

  • IIS是比较简单的数字接口协议,没有地址或设备选择机制。

  • 在IIS总线上,只能同时存在一个主设备和发送设备。

  • 主设备可以是发送设备,也可以是接收设备,或是协调发送设备和接受设备的其它控制设备。

在IIS系统中,提供时钟的设备为主设

image.png

传输速率

传输速率一般为,32k、 44.1k、 48k、 96k,时钟一般为128或192或256或384或512倍速率。

I2S特点

  • ①,支持全双工和半双工通信。

  • ②,支持主/从模式。

I2S初始化配置

  • ①,i2s的时钟使能和GPIO口配置

  • ②,配置为i2s模式

  • ③,i2s标准,包括左对齐,右对齐,i2s标准,即数据的最高位总是出现在WS变化(也就是一帧开始)后的第2个CK脉冲处。

  • ④,i2s数据长度,包括16位,16位扩展(16位数据以32位包发送),24位,32位。

  • ⑤,设置i2s时钟

  • ⑥,设置i2s空闲状态下时钟电平

  • ⑦,i2s使能

  • ⑨,设置I2S的采样率。采样率一般在8K-192K之间。

I2S的读写流程

  • ①,WS时钟线用于切换左右声道,在该时钟的同一周期内的高电平和低电平应发送相同的数据,然后左右声道的声音才会一样。
  • ②,CK时钟用于启动传输每一位音频数据,单声道音频数据转双声道音频数据

把单声道数据转换成双声道数据传输时,可作如下数据转换:

for(res=0;res<DATA_LEN;res++){
        buf2[res*4]=buf1[res*2];
        buf2[res*4+1]=buf1[res*2+1];
        buf2[res*4+2]=buf1[res*2];
        buf2[res*4+3]=buf1[res*2+1];
}

相关文章

  • 2. I2S接口

    1. I2S接口概述 I2S全称Inter-IC Sound, Integrated Interchip Soun...

  • I2S接口

    I2S总线I2S(InterIC Sound Bus)是飞利浦公司针对数字音频设备之间的音频数据传输而制定的一种总...

  • 十一 . 树莓派A20 i2s接口

    1 i2s介绍 2 A20 i2s接口 2.1 寄存器 DA0与DA1对应IIS-0与IIS-1,手册上写的IIS...

  • Arduino 常用mems麦克风

    SPM1423 M5的stick上用了这个芯片,i2S接口 INMP441 这个是淘宝上最常见的mems麦克风模块...

  • 运动控制器20:STM32的SPI模块

    SPI简介 大容量的SPI接口支持I2S,默认为SPI 全双工,半双工,同步和串行通信四种方式 主模式为从设备提供...

  • MSM8976平台配置PCM1 接口为slave模式

    由以上资料可知,MSM8976平台支持2组PCM接口,PCM0和PCM1,分别与QUAT I2S和QUIN I2S...

  • I2S注意事项

    关于I2S,wikipedia上介绍的比较全面。这里记录一些容易出错的点。 启用I2S 以Linux/Androi...

  • 2. 4 接口

    Java 接口 接口(英文:Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合,接口通常以...

  • 更新接口

    1.新建接口 2.接口实现 3.接口实体

  • 如何做接口测试

    一、接口测试关注点 ·1功能 2.性能 3.安全 二、接口测试流程 1.熟悉接口文档 2.根据接口文档编写测试用例...

网友评论

    本文标题:2. I2S接口

    本文链接:https://www.haomeiwen.com/subject/helqvqtx.html