1、I2CSPIUSBUART常见接口的原理简析 常见接口电路介绍一、 I2C总线简介1. 什么是I2C?NXP 半导体(原Philips 半导体)于20 多年前发明了一种简单的双向二线制串行通信总线,这个总线被称为Inter-IC 或者I2C 总线。目前I2C 总线已经成为业界嵌入式应用的标准解决方案,被广泛地应用在各式各样基于微控器的专业、消费与电信产品中,作为控制、诊断与电源管理总线。多个符合I2C 总线标准的器件都可以通过同一条I2C 总线进行通信,而不需要额外的地址译码器。由于I2C 是一种两线式串行总线,因此简单的操作特性成为它快速崛起成为业界标准的关键因素2. I2C总线的基本概念1
2、) 发送器(Transmitter):发送数据到总线的器件2) 接收器(Receiver):从总线接收数据的器件3) 主机(Master):初始化发送、产生时钟信号和终止发送的器件4) 从机(Slave):被主机寻址的器件其线路结构图如下:如上图示,I2C 总线具有如下特点:1)I2C 总线是双向传输的总线,因此主机和从机都可能成为发送器和接收器。不论主机是发送器还是接收器,时钟信号SCL 都要由主机来产生2) 只需要由两根信号线组成,一根是串行数据线SDA,另一根是串行时钟线SCL3) SDA 和SCL 信号线都必须要加上拉电阻Rp(Pull-Up Resistor)。上拉电阻一般取值310
3、K4) SDA 和SCL 管脚都是漏极开路(或集电极开路)输出结构3. I2C总线的信号传输1)3种速率可选择标准模式100kbps、快速模式400kbps、最高速率3.4Mbps2)具有特定的传输起始、停止条件a)起始条件:当SCL 处于高电平期间时,SDA 从高电平向低电平跳变时产生起始条件。起始条件常常简记为Sb)停止条件:当SCL 处于高电平期间时,SDA 从低电平向高电平跳变时产生停止条件。停止条件简记为P3) 数据传输从确定从机地址开始a)多个从机可连接到同一条I2C 总线上,它们之间通过各自唯一的器件地址来区分b)一般从机地址由7 位地址位和一位读写标志R/W 组成,7 位地址占
4、据高7 位,读写位在最后。读写位是0,表示主机将要向从机写入数据;读写位是1,则表示主机将要从从机读取数据4) 以字节为单位的数据传输方式a)I2C 总线以字节(Byte)为单位收发数据,主机总是先发地址再发数据b)在I2C 总线传输数据过程中,每传输一个字节,都要跟一个应答状态位。遵循“谁接收谁产生”的原则,即总是由接收器产生应答位,应答位为0 表示接收器应答(ACK);为1 则表示非应答(NACK)c)如果接收器在接收完最后一个字节的数据,或者不能再接收更多的数据时,应当产生非应答来通知发送器4. I2C总线数据传输时序图示1)传输格式图示(灰色为主机的工作时隙,白色为从机的工作时隙)S:
5、起始位(START)SA:从机地址(Slave Address),7 位从机地址W:写标志位(Write),1 位写标志R:读标志位(Read),1 位读标志A:应答位(Acknowledge),1 位应答A:非应答位(Not Acknowledge),1 位非应答D:数据(Data),每个数据都必须是8 位P:停止位(STOP)2)传输时序示例5. I2C总线在手机上的常见应用所应用范围包括:摄像头、调频收音机芯片、音频编解码芯片、模拟电视、光电鼠标等二、 SPI总线简介1.什么是SPI?串行外围设备接口SPI(serial peripheral interface)总线技术是Motorol
6、a 公司推出的一种同步串行接口,Motorola 公司生产的绝大多数MCU(微控制器)都配有SPI 硬件接口,如68 系列MCU。SPI 用于CPU 与各种外围器件进行全双工、同步串行通讯2.SPI总线应用线路图示如上图示,SPI 总线具有如下特点:1)包含主机(MASTER)以及从机(SLAVE)2)由4 条必要信号线组成:串行时钟线(SCLK)、主机输入/从机输出数据线(MISO)、主机输出/从机输入数据线(MOSI)、低电平有效从机选择线(SS)3) 如果需要增加外部从机,则相应需要增加对应此器件的低电平有效从机选择线(SS)3.SPI总线波特率和时钟模式1)SPI模块支持125种不同的
7、波特率,最大波特率为系统时钟频率的四分之一2)SPI有四种时钟模式,由CLOCK POLARITY 和CLOCK PHASE位控制。CLOCK POLARITY 位选择时钟的有效沿是上升沿还是下降沿, CLOCK PHASE位选择是否有半个时钟周期的延时a)上升沿,无延时:SPI 在时钟上升沿发送数据,在时钟的下降沿接收数据b)上升沿,有延时:SPI 在时钟上升沿前半个周期发送数据,在时钟的上升沿接收数据c)下降沿,无延时:SPI 在时钟下降沿发送数据,在时钟的上升沿接收数据d)下降沿,有延时:SPI 在时钟下降沿前半个周期发送数据,在时钟的下降沿接收数据4 种时钟模式如图所示4.SPI总线传
8、输特点SPI 是一个环形总线结构,其时序其实很简单,主要是在SCLK 的控制下,两个双向移位寄存器进行数据交换,内部结构如下:以上升沿,无延时时钟模式为例,上升沿到来的时候,MOSI 上的电平将被发送到从设备的寄存器中,下降沿到来的时候,MISO 上的电平将被接收到主设备的寄存器中举例:假设主机和从机初始化就绪:并且主机的sbuff=0xaa,从机的sbuff=0x55,下面将分步对SPI 的8 个时钟周期的数据情况演示一遍(时钟的上升沿发送数据, 在时钟的下降沿接收数据)(上面的上表示上升沿、下表示下降沿。这样就完成了两个寄存器8 位的交换)5.SPI总线在手机上的常见应用所应用范围包括:L
9、CD、触摸屏控制芯片等三、 串口简介1. 什么是串口?串口是计算机上一种非常通用的设备通信的协议。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。串口能够轻松实现远距离通信。2. 串口应用线路图示典型地,串口通信使用3 根线完成:(1) 地线,(2)发送,(3)接收3.串口总线传输特点串口通信最重要的参数是波特率、起始位、数据位、停止位和奇偶校验。对于两个进行通行的端口,这些参数必须匹配:1) 波特率:a) 这是一个衡量通信速度的参数。它表示每秒钟传送的bit 的个数,通常串口的波特率为1
10、4400,28800 和36600 等b)波特率和距离成反比2)起始位:起始位必须是持续一个比特时间的逻辑“0”电平,标志传送一个字符的开始3)数据位:这是衡量通信中实际数据位的参数,标准的值是5、7 和8 位4)停止位:标志着传送一个字符的结束,用逻辑“1”电平表示,典型的值为1,1.5 和2 位(1.5位是时间上的宽度,代表一个bit 的1.5 倍。例如你的波特率是1000bps,那么一个bit的宽度就是1ms,一个停止位是1ms,而1.5 个停止位就是1.5ms 了)5)奇偶校验位:在串口通信中一种简单的检错方式a)奇校验:人为的往信号中添加一个校验位来确保所发送的信号中“1”的数目为奇
11、数个,如:0110,0101 10100,0000 0b)偶校验:人为的往信号中添加一个校验位来确保所发送的信号中“1”的数目为偶数个,如:0100,0101 10100,0001 04.串口数据传输时序图示(空闲位表示线路处于空闲状态,此时线路上为逻辑“1”电平。空闲位可以没有,此时异步传送的效率为最高)5.串口的扩展应用RS-232C 是个人计算机上的通讯接口之一, 是由电子工业协会(ElectronicIndustries Association,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9 个引脚 (DB-9) 或是25 个引脚 (DB-25) 的型态出现,一般个人
12、计算机上会有两组RS-232 接口,分别称为 COM1 和 COM2常用的RS-232 引脚只有9 根,它们是:1)联络控制信号线:a)DSR (DCE)数据发送准备好,Data Set Readyb)DTR 数据终端(DTE)准备好,Data Terminal Readyc)RTS DTE 请求DCE 发送(Request To Send)d)CTS DCE 允许DTE 发送(Clear To Send),该信号是对RTS 信号的回答。e)DCD 数据载波检测(Data Carrier Detection),当本地DCE 设备(Modem)收到对方的DCE 设备送来的载波信号时,使DCD 有
13、效,通知DTE 准备接收,并且由DCE 将接收到的载波信号解调为数字信号, 经RXD 线送给DTEf)RI 振铃信号(Ringing),当DCE 收到对方的DCE 设备送来的振铃呼叫信号时,使该信号有效,通知DTE 已被呼叫2)2 个数据信号:a)发送TXDb)接收RXD3)1 个信号地线:GND实际应用图示6. 串口在手机上的常见应用通常只使用TXD,RXD,GND三根信号,用于蓝牙模块,程序调试信息读取等等四、 USB简介1. 什么是USB?USB 是英文Universal Serial BUS(通用串行总线)的缩写,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯,是应用在PC 领
14、域的接口技术。USB 接口支持设备的即插即用和热插拔功能。USB 是在1994 年底由英特尔、康柏、IBM、Microsoft 等多家公司联合提出的2. 普及USB的目的随着计算机硬件飞速发展,外围设备日益增多,键盘、鼠标、调制解调器、打印机、扫描仪早已为人所共知,数码相机、MP3 随身听接踵而至,这么多的设备,如何接入个人计算机?USB 就是基于这个目的产生的。USB 是一个使计算机周边设备连接标准化、单一化的接口3. USB 的拓朴结构1) USB 的网络协议中每个USB 的系统有且只有一个host 它负责管理整个USB 系统,包括USB Device 的连接与删除、与USB Device
15、 的通信、总路线的控制等等2) Host 端有一个Root Hub,可提供一个或多个USB 下行端口,每个端口可以连接一个USB Hub 或一个USB Device3) USB Hub 是用于USB 端口扩展的,即USB Hub 可以将一个USB 端口扩展为多个端口。上图中的每个Func(Function)就是一个USB Device, 如USB 键盘、USB 鼠标、USB MODEM、USB 硬盘等等4) Compound Device 是指带一个Hub 和一个或多个不可删除的USB Device 的复合设备5) 一个USB 系统可连接多达127 个Function4. USB 的设备类型(
16、device class)虽然USB 设备都会表现USB 的一些基本的特征,但是USB 的设备还是可以分成多个不同类型。同类型的设备可以拥有一些共同的行为特征和工作协议从而使设备的驱动程序的书写变得简单一些。下表中就给出一些基本的USB 的设备类型分类5. USB 的电气特性USB 连接器包含四条线:2 条用于电源供电(VBUS 和GND),2 条用于USB 数据传输(D+和D-)。VBUS 提供5V 电源,电流可达500mA。D+和D-为双向信号线,信号传输速率为12Mbps (每位83ns)。D+和D-信号电平为3.3V6.USB的特点1)USB 为所有的USB 外设提供了单一的易于使用的
17、标准的连接类型。这样一来就简化了USB 外设的设计,实现了单一的数据通用接口2)整个的USB 的系统只有一个端口和一个中断节省了系统资源3)USB 支持热插拔(hot plug)和PNP(Plug-and-Play),也就是说在不关闭PC 的情况下可以安全的插上和断开USB 设备4)USB 在设备供电方面提供了灵活性。直接连接到Hub ,或者是连接到Host 的设备可以通过USB,也可以通过电池或者其它的电力设备来供电,或使用两种供电方式的组合并且支持节约能源的挂机和唤醒模式5)USB 提供全速12Mbps 的速率和低速1.5Mbps 的速率来适应各种不同类型的外设,USB2.0 还支持480
18、Mbps 的高速传输速率6)为了适应各种不同类型外围设备的要求,USB 提供了四种不同的数据传输类型:控制传输,Bulk 数据传输,中断数据传输和同步数据传输,同步数据传输可为音频和视频等实时设备的实时数据传输提供固定带宽7)USB 的端口具有很灵活的扩展性,一个USB 端口串接上一个USB Hub 就可以扩展为多个USB 端口7.USB的传输方式USB 有四种的传输方式: 1)控制(Control)传输方式:控制传输是双向传输数据,主要进行查询配置和给USB 设备发送通用的命令。控制传输方式可以包括8,16,32 和64 字节的数据,这依赖于设备和传输速度。控制传输典型地用在主计算机和USB
19、 外设端点之间的传输2)同步(isochronous)传输方式:同步传输提供了确定的带宽和间隔时间,它被用于时间严格并具有较强容错性的流数据传输,或者用于要求恒定的数据传输率的即时应用中,例如执行即时通话的网络电话,应用时使用同步传输模式是很好的选择3)中断(interrupt)方式传输:中断方式传输主要用于定时查询设备是否有中断数据要传输。设备的端点模式器的结构决定了它的查询频率从1 到255ms 之间。这种传输方式典型的应用在少量的分散的不可预测数据的传输,键盘、操纵杆和鼠标就属于这一类型4)批量(bulk)传输:主要应用在数据大量传输,而传输和接受数据上又没有带宽和间隔时间要求。打印机和
20、扫描仪属于这种类型8.USB的信号分析USB 的数据信号线是差分驱动的,它们在数据传输过程中的分别有差分态,静止态和单终端等,USB 协议根据这些状态判断设备的速率,信号所代表的数据意义,不论对全速还是低速传输来说,当D+信号的电压比D-信号线的电压高200MV 是表示差分“1”我们可以利用眼图来判断此差分信号的品质判断一个眼图是否符合标准,可以将眼图设想为一只眼睛,形象的以以下依据作为判断标准:1)眼睛睁开最大处为最佳判决时刻2)眼睛睁开度表征噪声容限3)眼睛展开度表征过门限失真大小,减小会使时钟抖动增加4)眼皮厚度体现噪声大小及码间干扰5)眼图斜率体现系统对定时误差的敏感性,斜率愈大,愈敏感简单的说,一个展开越大,越规整的眼图即是一个好的眼图。眼图主要测量时域信号波形,有没有严重的失真。眼图不好,说明信号传输路径阻抗不匹配,信号质量下降,导致USB 接口芯片的锁相环有可能工作不正常,提高了误码率,有可能影响到设备不能识别
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1