一、I2S介绍

I2S(Inter—IC Sound)总线, 又称 集成电路内置音频总线,是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专门用于音频设备之间的数据传输,广泛应用于各种多媒体系统。它采用了沿独立的导线传输时钟与数据信号的设计,通过将数据和时钟信号分离,避免了因时差诱发的失真,为用户节省了购买抵抗音频抖动的专业设备的费用。

二、I2S特点

1、支持全双工/半双工

2、支持主/从模式

3、和PCM相比,I2S更适合立体声系统。当然,I2S的变体也支持多通道的时分复用,因此可以支持多声道。

I2S主要有三个信号

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

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

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

4、一般还有MCLK,主时钟。

三、典型I2S信号时序图

随着技术的发展,也出现了很多种不同的数据格式。根据data相对于LRCK海人SCLK位置的不同,分为I2S标准格式(飞利浦规定的格式),左对齐(较少使用)和右对齐(日本格式,普通格式),发送和接收端必须使用相同的数据格式。

I2S标准格式:

左对齐:

右对齐:

四、I2S初始化配置

①,i2s的时钟使能和GPIO口配置
②,配置为i2s模式
③,i2s标准,无论有多少位有效数据,即数据的最高位总是出现在WS变化(也就是一帧开始)后的第2个CK脉冲处。
④,i2s数据长度,包括16位,16位扩展(16位数据以32位包发送),24位,32位。
⑤,设置i2s时钟
⑥,设置i2s空闲状态下时钟电平
⑦,i2s使能

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

五、使用GPIO模拟I2S程序

待补充。。。

【音频】I2S协议时序及使用粗解相关推荐

  1. 音频(二)——I2S 协议

    I2S 协议详解 信号线定义 各个信号线的功能及描述见下表 信号线 描述 MCLK 主时钟,也叫系统时钟(Sys Clock),为了使系统间能够更好的同步,MCLK的频率=256fs 或384fs(f ...

  2. Linux驱动学习--音频传输之I2S接口时序的配置

    目录 一.引言 二.I2S传输 ------> 1.I2S时序种类 ------> 2.I2S时序计算 ------> 3.I2S主从模式 三.simple-card ------& ...

  3. spi协议时序图和四种模式实际应用详解

    大家好,我是无际. 上个章节我们讲解了spi接口定义,今天我们更加深入讲解下spi协议时序图和spi四种模式的用法. 刚开始接触单片机开发时,最怕就是看时序图,对于我来说就是奇怪的知识. 特别是SPI ...

  4. I2S接口规范时序以及其同DSP的连接

    I2S接口概述 I²S或I2S(Inter-IC Sound或Integrated Interchip Sound)是由飞利浦公司(现NXP)在1986年制定的一种用于音频IC或者设备之间传输数字PC ...

  5. 音频常用协议说明 IIS TDM PDM PCM SPDIF协议解析

    音频常用协议说明 目录 音频常用协议说明 IIS协议 特点 效率高主要传输音乐 PCM PDM SPDIF A2B 协议 IIS协议 I2S(Inter-IC Sound Bus)是飞利浦公司为数字音 ...

  6. 蓝牙音频双剑客(二)--高质量音频分布协议(A2DP) 概念介绍

    零. 概述 主要介绍下蓝牙协议栈(bluetooth stack)传统蓝牙音频协议之高质量音频分布协议(A2DP) 概念介绍,包括在协议栈中的架构,角色以及Source到Sink的发送Audio流程 ...

  7. uvc音频传输协议_蓝牙中的三种音频编码:Apt-X、SBC、AAC,请问分别有什么区别?...

    Apt-X在理论上声音保留的细节会更多,但需要购买对应的使用授权:SBC是A2DP蓝牙音频传输协议强制规定的编码格式,音质比MP3差:ACC是杜比实验室为音乐社区提供的技术,音质比SBC好.详细介绍如 ...

  8. ARP协议及ARP欺骗详解

    ARP协议及ARP欺骗详解 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议.主机发送信息时将包含目标IP地址的ARP ...

  9. HTTP协议的头信息详解

    HTTP协议的头信息详解 http://blog.csdn.net/guoguo1980/archive/2008/07/14/2649658.aspx HTTP协议的头信息详解 HTTP(Hyper ...

  10. C++ 实现 STL 标准库和算法(二)template 编程和迭代器粗解 实验楼笔记

    一.template 编程和迭代器粗解 1.1 实验内容 本节内容主要讲述 c++11 模板的用法,以后的代码中会大量的用到模板的知识.同时简单讲解迭代器的相关知识,为后面容器和算法的内容作铺垫. 1 ...

最新文章

  1. edge chrome 浏览器 底色调黑 反色
  2. 大型“数码管”解决方案:用了 28 个舵机的时钟,到底有什么特别?
  3. linux 用mutex定义一个linkedlist,【基于LINUX的操作系统实验教程最终版材料】
  4. “因为你不懂技术…” 警察:???
  5. Vue 实现左边导航栏且右边显示具体内容(element-ui)
  6. Python 数据结构与算法——选取算法(TopK)
  7. mysql+last_query_cost_辛星简译MySQL中的last_query_cost
  8. awd赛题的flag是什么意思_记一次AWD自动获取flag并提交
  9. 图像处理-与,或等运算
  10. linux下安卓刷机,linux下安卓刷机脚本
  11. python中def demo是什么意思_python中def是什么意思
  12. 经典数字电路 设计案例
  13. VSCode连接远程服务器
  14. 互联网造车最靠谱的方式是合作
  15. 借助阿里云轻松部署企业网盘
  16. 【品質管理】【レビュー】_ブレーンストーミングとKJ法<転載>
  17. 原生小程序实现折线图wx-charts(比echars体积小很多)
  18. 编程中常见的小错误·
  19. 面试常问,答案简易版
  20. 如何打造主题公园夜游经济

热门文章

  1. OPPO A37M刷机
  2. 新增收货地址html,客户收货地址列表、添加地址、选择地址
  3. 视频教程-Python实现自己的分布式区块链视频教程-区块链
  4. spss软件测试题题库,spss题库_Spss软件可以算试题的区分度吗怎么算_淘题吧
  5. nvme固态硬盘开机慢_win10 Samsung NVMe固态硬盘测速很慢的解决方法
  6. c语言国二题库选择填空题,国二c语言笔试题库(含答案),选择填空.doc
  7. Linux ab压力测试工具安装教程
  8. jeecg-boot自动生成代码_代码一键自动生成,拿走不谢
  9. pgAdmin III 导出excel数据
  10. 税盘怎么看服务器是否在维护,税盘服务器地址怎么查