0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

I2S音频总线基本知识科普

零是起源 来源:零是起源 作者:零是起源 2022-04-12 07:48 次阅读

I2S(Inter—IC Sound)总线, 又称集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准。

I2S主要有三个信号

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

2、帧时钟LRCK(也称WS),用于切换左右声道的数据。LRCK为‘1’表示传输右声道数据,为“0”则是左声道。LRCK的频率 = 采样频率

3、串行数据(SDATA),就是用二进制补码表示的音频数据,(MSB ---> LSB:数据由高位到低位依次传输)

4、有时为了使系统间能够更好地同步,还需要另外传输一个信号MCLK,称为主时钟,也叫系统时钟(Sys Clock),是采样频率的256倍或384倍。(但不是必要的)

I2S音频总线基本知识科普

声音数字化理论

现实生活中的声音是通过一定介质传播的连续的波,它可以由周期和振幅两个重要指标描述。正常人可以听到的声音频率范围为 20Hz~20KHz。现实存在的声音是模拟量,这对声音保存和长距离传输造成很大的困难,一般的做法是把模拟量转成对应的数字量保存,在需要还原声音的地方再把数字量的转成模拟量输出如下图所示:

I2S音频总线基本知识科普

模拟量转成数字量一般可以分为三个过程,分别为采样、量化、编码,如下图所示。

用一个比源声音频率高的采样信号去量化源声音,记录每个采样点的值,最后如果把所有采样点数值连接起来与源声音曲线是互相吻合的,只是它不是连续的。在图中,两条蓝色虚线距离就是采样信号的周期,即对应一个采样频率(FS),可以想象得到采样频率越高最后得到的结果就与源声音越吻合,但此时采样数据量越越大,一般使用44.1KHz采样频率即可得到高保真的声音。每条蓝色虚线长度决定着该时刻源声音的量化值,该量化值有另外一个概念与之挂钩,就是量化位数。量化位数表示每个采样点用多少位表示数据范围,常用有16bit、24bit或32bit,位数越高最后还原得到的音质越好,数据量也会越大。

I2S音频总线基本知识科普

声音数字化三要素

采样频率:每秒钟抽取声波幅度样本的次数。采样频率越高,声音质量越好,数据量也越大。常用的采样频率有11.025KHz,22.05KHz,44.1KHz,48KHz,96KHz等。

量化位数:每个采样点用多少二进制位表示数据范围。量化位数也叫采样位数。量化位数越多,音质越好,数据量也越大。常用的采样位数有8位,16位,24位,32位等。

声道数:使用声道的个数。立体声比单声道的表现力丰富,但是数据量翻倍。常用的声道数有单声道,立体声(左声道和右声道)。

音频数据量=采样频率(Hz) * 量化位数 * 声道数 / 8,单位:字节/秒。

如下图,黄色波形是LRCK,其频率是44.1KHz,即采样频率是44.1KHz。是立体声的话,一个周期需要传输左右声道的数据。

蓝色波形是BCLK,其频率是2.8MHZ左右。由SCLK的频率=2 * 采样频率 * 采样位深,可以计算出这个数据的采样位深为32位。

I2S音频总线基本知识科普

把波形拉开可以看到一个声道传输了多少位数据,一个脉冲代表一位。

I2S音频总线基本知识科普

下图可清晰的看到位时钟和数据的对应关系:对应数字音频的每一位数据,SCLK都有一个脉冲。

I2S音频总线基本知识科普  

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 音频
    +关注

    关注

    27

    文章

    2588

    浏览量

    79864
  • 总线
    +关注

    关注

    10

    文章

    2680

    浏览量

    87048
  • I2S
    I2S
    +关注

    关注

    1

    文章

    59

    浏览量

    41432
收藏 人收藏

    评论

    相关推荐

    I2S总线原理及应用实例

    I2S总线原理及应用实例
    发表于 08-20 11:25

    请问CC3200 I2S总线如何正确播放单声道音频数据?

    本帖最后由 一只耳朵怪 于 2018-6-8 10:11 编辑 如题,现在我用CC3200的I2S总线播放单声道音频数据,用DMA将数据直接配置到了I2S_TX_DMA_PORT
    发表于 06-07 07:17

    音频I2S

    作者:Dafydd Roche,德州仪器 传统I2S—为何要包括系统时钟?过去,我们在讨论音频话题时,偶尔会提及 I2S。我在以前的一些文章中提到过 I2S,其他人在做
    发表于 09-19 14:17

    怎么设置I2S

    问候语,我在协调I2S音频协议方面遇到了一些麻烦。我所能找到的所有帮助文件都显示I2S应该是驱动程序下的选项,但是它不在那里。但是,在SPI驱动程序下,I2S使用的是什么,我可以将它设
    发表于 10-22 15:07

    I2S总线规范

    I2S总线规范.pdf(98.71 KB)
    发表于 04-25 06:34

    I2S有哪些信号?

    传统 I2S—为何要包括系统时钟?过去,我们在讨论音频话题时,偶尔会提及 I2S。我在以前的一些文章中提到过 I2S,其他人在做音频研究时也
    发表于 08-14 06:49

    PIC32 MX170F256能使用I2S ADC和I2S DAC吗?

    嗨,我有这个芯片:PIC32 MX170F256B,它有I2S音频。我能在这个芯片中使用I2S ADC和I2S DAC吗?我注意到它总是立体声这个i
    发表于 03-09 09:52

    I2S总线是怎样驱动WM8978的

    背景为了了解I2S总线所对应的硬件设计,下文转载了《STM32:I2S驱动WM8978》。以加深对I2S总线的了解。正文最近项目中使用STM
    发表于 01-05 07:10

    AT32 SPI和I2S入门指南

    Sound)总线,又称集成电路内置音频总线,是Philips为数字音频设备之间的音频数据传输而制定的一种
    发表于 03-14 19:49

    使用DMA和PWM、DAC或I2S音频总线

    使用 DMA/PWM, DAC or I2S的Kinetis MCU上的音频输出
    发表于 12-08 07:18

    使用FlexIO模块模拟I2S总线主机的教程

    使用FlexIO模块模拟I2S总线主机
    发表于 12-08 07:24

    使用FlexIO模块模拟I2S总线主机的过程

    用FlexIO模块模拟I2S总线
    发表于 12-09 06:42

    Kinetis MCU上的I2S应用资料分享

    Kinetis MCU上的I2S (片间音频总线)应用
    发表于 12-09 06:17

    AT32 MCU SPI/I2S入门指南

    (Inter-IC Sound)总线,又称集成电路内置音频总线,是 Philips 为数字音频设备之间的音频数据传输而制定的一种
    发表于 10-25 08:26

    电气基本知识科普

    电气基本知识科普
    的头像 发表于 09-09 10:23 3926次阅读
    电气<b class='flag-5'>基本知识</b><b class='flag-5'>科普</b>