I2S/PCM/IOM-2、I2C/SPI/UART/GPIO/slimbus
概述
I2S,PCM,IOM-2都是数字音频接口,传数据的。
I2C,SPI,UART,GPIO是控制接口,传控制信令的。
I2S
I2S(Inter-IC Sound Bus)是飞利浦公司为数字音频设备之间的音频 数据传输而制定的一种总线标准。
I2S至少3根线:
1. 比特时钟线
首先解释一下比特时钟线。比特时钟线上对每个bit有一个脉冲,比特时钟频率是2×采样频率×采样位数,比如,在播放44.1Khz CD的时候,比特时钟频率就是:44.1KHz*16*2 = 1.4112MHz
2. 帧时钟线
切换左右声道的数据,帧时钟的频率等于采样率。LRCK为“1”表示正在传输的是左声道的数据,为“0”则表示正在传输的是右声道的数据。LRCK的频率等于采样频率。
3. 复用数据线
所谓复用,指的是左右声道的复用。传输数据是以2的补码,大端形式给出。
I2S可能还有一根线,是主时钟线或上行数据线。所以,碰到四线的I2S也不要惊讶哦~~
I2S有主从模式,就是谁来提供时钟的选择。谁提供时钟,谁就是主(Master)
PCM
也是传输数字音频的,一般是固定8k的采样率的单声道音频。
IOM-2
高品质音频,一般传给蓝牙A2DP的是这种接口
I2C
两根线:
- 一个CLK线,
- 一根DATA线
有主从模式,一般MCU做主,器件做从。I2C使用两根双向半双工的线,主提供时钟。时钟都是bit时钟,发送请求的时候,比如获取寄存器内容的时候,主发送请求,然后交出DATA线控制权,从回答请求,并返回寄存器内容。(简记比i2s少了根帧时钟线)
下面就是一主多从的例子:
SPI
Only 2chip select lines so max number ofdevices is very limited. Bus is faster andcan be driven over longer cable runsthan I2C. Programming more difficult.Device selection very limited unless youare willing to solder SMD.
UART
Welcome tothe 1970s! 通用异步串行口。按照标准波特率完成双向通讯,速度慢。UART总线是异步串口,因此一般比前两种同步串口的结构要复杂很多,一般由波特率产生器(产生的波特率等于传输波特率的16倍)、UART接收器、UART发送器组成,硬件上由两根线,一根用于发送,一根用于接收。 UART是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。
GPIO
GPIO,通用型输入输出(GeneralPurpose I/O)的简称,其引脚可以供使用者由程式控制自由使用,PIN脚可作为通用输入(GPI)或通用输出(GPO)或通用输入输出(GPIO),如当clk generator, chip select等。
既然一个引脚可以用于输入、输出或其他特殊功能,那么一定有寄存器用来选择这些功能。对于输入,一定可以通过读取某个寄存器来确定引脚电平的高低;对于输出,一定可以通过写入某个寄存器来让这个引脚输出高电平或者低电平;对于其他特殊功能,则有另外的寄存器来控制它们。
SLIMBus
例子
这边有个手机上FM+BT芯片接口的例子:蓝牙用的是PCM/I2S传输音频数据,控制信令走UART/I2C,FM音频走模拟电路。
I2S/PCM/IOM-2、I2C/SPI/UART/GPIO/slimbus的更多相关文章
- SPI、I2C、UART、I2S、GPIO、SDIO、CAN
总线,总线,总要陷进里面.这世界上的信号都一样,但是总线却成千上万,让人头疼. 总的来说,总线有三种:内部总线.系统总线和外部总线.内部总线是微机内部各外围芯片与处理器之间的总线,用于芯片一级的互连: ...
- SPI、I2C、UART、I2S、GPIO、SDIO、CAN 简介
转自http://sanwen.net/a/fmxnjoo.html SPI.I2C.UART.I2S.GPIO.SDIO.CAN,看这篇就够了 总线 总线,总要陷进里面.这世界上的信号都一样,但是总 ...
- SPI、I2C、UART(转)
UART与USART(转) UART需要固定的波特率,就是说两位数据的间隔要相等. UART总线是异步串口,一般由波特率产生器(产生的波特率等于传输波特率的16倍).UART接收器.UART发送器组成 ...
- SPI、I2C、UART三种串行总线协议的区别和SPI接口介绍(转)
SPI.I2C.UART三种串行总线协议的区别 第一个区别当然是名字: SPI(Serial Peripheral Interface:串行外设接口); I2C(INTER IC BUS) UART( ...
- SPI,UART,I2C都有什么区别,及其各自的特点
区别: SPI:高速同步串行口.3-4线接口,收发独立.可同步进行 UART:通用异步串行口.按照标准波特率完成双向通讯,速度慢 I2C:一种串行传输方式,三线制,网上可找到其通信协议和用法的 3根线 ...
- 驱动之SPI,UART,I2C的介绍与应用20170118
这篇文章主要介绍基本的驱动也是用的最多的协议类驱动中的SPI,I2C和UART.首先从最简单的UART也就是串口讲起: 1.UART UART由两根线也就是TX,RX以及波特率产生器组成,操作比较简单 ...
- 【转载】IIC SPI UART串行总线
一.SPISPI(Serial Peripheral Interface,串行外设接口)是Motorola公司提出的一种同步串行数据传输标准,在很多器件中被广泛应用. 接口SPI接口经常被称为4线串行 ...
- MicroBlaze核的串行接口实验:SPI UART
reference : https://blog.csdn.net/weixin_42413559/article/details/80720566 串行接口:SPI UART XPS->SDK ...
- [ZigBee] 8、ZigBee之UART剖析·二(串口收发)
前言:上一节讲UART基本知识介绍完了,并深入剖析了一个串口发送工程,本节将进一步介绍串口收发! 1.初始化 在串口初始化部分,和上一节不同的地方是: 51 U0CSR |= 0x40; //允许接收 ...
随机推荐
- VS中使用svn注意事项
1.程序需定期编译通过后上传SVN,每天可上传多次,根据个人程序开发进度决定,但每天晚下班前必须将当天的程序编译调试通过并上传SVN.每天早上上班首先需要更新SVN最新版本. 上传的工作流程应该是,更 ...
- [原创]解决net-speeder与pptp不兼容的问题
解决net-speeder与pptp不兼容的问题 终于受不了很多玩意儿都被墙了,每次FQ费半天劲,浪费时间,于是在搬瓦工搞了个VPS,年付19美元,挺便宜的,赶紧的VPN搭起,优化走起. VPN搭建很 ...
- [转]Android - 文件读写操作 总结
转自:http://blog.csdn.net/ztp800201/article/details/7322110 Android - 文件读写操作 总结 分类: Android2012-03-05 ...
- rplidar & hector slam without odometry
接上一篇:1.rplidar测试 方式一:测试使用rplidar A2跑一下手持的hector slam,参考文章:用hector mapping构建地图 但是roslaunch exbotxi_br ...
- .NET编译项目时出现《此实现不是 Windows 平台 FIPS 验证的加密算法的一部分》处理方法
有用户提出在编译代码时出现源文件“D:\.......ervice.cs”未能打开(“此实现不是 Windows 平台 FIPS 验证的加密算法的一部分.”)的问题,如下图所示: 对于上面的问题,只需 ...
- kali 更改root密码
sudo root passwd root 然后输入两次密码即可
- activiti当前任务高亮(解决乱码问题)
package com.xinwei; import java.io.File; import java.io.InputStream; import java.util.ArrayList; imp ...
- oracle字符集相关
转: Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different. Character se ...
- 添加群组表AppGroup和群组详细表AppGroupDetails
添加群组表AppGroup和群组详细表AppGroupDetails CREATE TABLE [dbo].[AppGroup]( ) NOT NULL PRIMARY KEY, ) NOT NULL ...
- 一个python的计算熵(entropy)的函数
计算熵的函数: # -*- coding: utf-8 -*- import math #the function to calculate entropy, you should use the p ...