各总线及接口介绍
- 格式:doc
- 大小:1.96 MB
- 文档页数:31
各总线及接口介绍总线是计算机系统中不同组件之间进行通信的一种方式。
它由电子信号、控制信号和地址信号组成,用于在计算机系统内传输数据和控制信息。
接口是用于连接不同设备或组件的接头或接口,通过接口可以实现不同设备之间的通信和数据交换。
以下是几种常见的总线和接口的介绍。
PCI总线是一种广泛使用的计算机总线,用于连接计算机内部的扩展设备,如显卡、声卡、网卡等。
它提供高带宽的数据传输,支持热插拔和多设备共享总线的特性。
PCI总线有32位和64位两种版本,分别支持32位和64位的数据传输。
2. USB接口(Universal Serial Bus)USB接口是一种用于在计算机和外部设备之间传输数据和供电的通用接口。
它具有热插拔、多设备共享总线和高传输速度等特点。
USB接口支持不同版本,如USB1.1、USB2.0、USB3.0和USB4.0等,每个版本的传输速度和性能都有所提升。
3. SATA接口(Serial ATA)SATA接口是一种用于连接存储设备(如硬盘、光盘驱动器等)的串行接口。
相比于传统的并行ATA接口,SATA接口具有更高的传输速度和更小的物理连接线,可以提供更高的数据传输性能。
HDMI接口是一种用于音频和视频传输的接口,常用于连接计算机和高清显示器、电视等设备。
HDMI接口支持高清视频传输,同时也能传输音频信号。
它具有高质量的音视频传输、支持多通道音频和具有防抖和宽带数字内容保护等特点。
5. Ethernet接口Ethernet接口是一种用于计算机网络的接口,用于连接计算机、服务器、路由器等设备进行数据通信。
它是一种基于以太网技术的标准化接口,提供高速、全双工的数据传输能力。
Ethernet接口支持多种传输速率,如10 Mbps、100 Mbps和1000 Mbps等。
FireWire接口是一种用于高速数据传输和连接音频/视频设备的接口,常用于连接外部硬盘驱动器、摄像机等设备。
FireWire接口支持热插拔和点对点连接,可以提供高速、双向的数据传输速度。
RS485总线标准和接口介绍(标准、两线、四线)RS485总线标准是工业中(考勤,监控,数据采集系统)使用非常广泛的双向、平衡传输标准接口,支持多点连接,允许创建多达32个节点的网络;最大传输距离1200m,支持1200 m时为100kb/s的高速度传输,抗干扰能力很强,布线仅有两根线很简单。
RS485通信网络接口是一种总线式的结构,上位机(以个人电脑为例)和下位机,都挂在通信总线上,RS485物理层的通信协议由RS485标准和51单片机的多机通讯方式。
由于rs-485/' target='_blank'>RS-485是从RS-422基础上发展而来的,所以rs-485/' target='_blank'>RS-485许多电气规定与RS-422相仿。
如都采用平衡传输方式、都需要在传输线上接终接电阻等。
RS-485可以采用二线与四线方式,二线制可实现真正的多点双向通信。
下面介绍以下rs485通讯接口定义的标准1.英式标识为TDA(-)、TDB(+)、RDA(-)、RDB(+)、GND2.美式标识为Y 、Z 、A 、B 、GND3.中式标识为TXD(+)/A 、TXD(-)/B 、RXD(-)、RXD(+)、GNDrs485两线一般定义为:A,B或Date+,Date-即常说的:485+,485-rs485四线一般定义为:Y,Z,A,B,一般rs485协议的接头没有固定的标准,可能根据厂家的不同引脚顺序和管脚功能可能不尽相同,但是官方一般都会提供产品说明书,用户可以查阅相关rs485管脚图定义或者引脚图《rs232转rs485电路图》上图中rs232转rs485电路中hin232(max232可以起到同样的作用但是要贵一点)起到转换pc端rs232接口电平的作用,然后把信号由max485这个芯片转换成485电平由AB 两根线输出,如果接上双绞线信号rs485总线接口的信号的通信距离至少是1千米远。
常用通信接口介绍及应用常用通信接口是指在不同设备之间进行数据传输的标准化接口。
这些接口通过规定数据传输的电气特性、物理连接和协议规则,实现了不同设备之间的互联互通。
常用通信接口广泛应用于电子设备、计算机设备、工业自动化、通信设备等领域。
以下是几种常见的通信接口及其应用:1. 串口接口(Serial Port Interface)串口接口是一种最常见、最简单的通信接口。
它通过串行传输方式,将数据以bit位的形式串行传输。
串口接口通常采用RS-232或RS-485标准,并广泛应用于计算机、嵌入式系统等领域。
2. 并口接口(Parallel Port Interface)并口接口是一种传输速率较低,但传输距离较长的通信接口。
它采用多根数据线同时传输数据,适用于需要同时传输大量数据的场合,例如打印机、外部存储设备等。
3. USB接口(Universal Serial Bus Interface)USB接口是一种高速、热插拔的通信接口。
USB接口的优点是传输速度快、插拔方便,并且支持多种外设连接。
USB接口广泛应用于计算机、手机、相机、音频设备等各种消费电子产品。
4. HDMI接口(High Definition Multimedia Interface)HDMI接口是一种用于高清视频和音频传输的数字接口。
它可以同时传输高清视频和多声道音频信号,并保持高质量的传输效果。
HDMI接口广泛应用于电视、投影仪、音视频设备等领域。
5. 以太网接口(Ethernet Interface)以太网接口是一种用于局域网(LAN)的通信接口。
它采用广泛的以太网协议,支持高速数据传输和远程通信。
以太网接口广泛应用于计算机网络、工业自动化、智能家居等场合。
6. 蓝牙接口(Bluetooth Interface)蓝牙接口是一种短距离无线通信接口。
它通过无线电波进行数据传输,适用于移动设备、智能穿戴设备、无线耳机等设备之间的数据传输和通信。
常用通讯接口介绍及应用常用的通讯接口是指用于不同设备之间进行数据传输和通信的接口标准或协议。
通讯接口在各种电子设备和计算机系统中发挥着非常重要的作用,它们决定了设备之间能否正常进行数据交换和通信。
下面将介绍一些常见的通讯接口及其应用。
1. USB(Universal Serial Bus,通用串行总线):USB接口是一种用于计算机和其他电子设备之间连接和传输数据的通用接口标准。
目前应用最广泛的是USB 3.0接口,它的传输速度可以达到5Gbps,适用于连接鼠标、键盘、打印机、移动硬盘等外部设备。
3. Ethernet(以太网):以太网接口是一种广泛应用于局域网(LAN)的传输接口,用于连接计算机、服务器、网络设备等。
它的速度可以从10Mbps到1Gbps不等,可根据实际应用需求选择连接速度。
以太网接口是企业网络和家庭网络的主要通信接口。
4. Bluetooth(蓝牙):蓝牙接口是一种用于短距离无线通讯的接口标准,通常用于连接手机、耳机、音箱、无线鼠标等设备。
蓝牙接口具有低功耗、低成本、无线传输、广泛兼容等特点,适用于个人消费电子产品和物联网设备。
5. Wi-Fi(Wireless Fidelity,无线保真):Wi-Fi接口是一种无线局域网接口,用于在有无线网络覆盖的范围内进行无线数据传输和通信。
Wi-Fi接口可连接到无线路由器,实现多设备之间的高速无线通信,广泛应用于智能手机、平板电脑、笔记本电脑等设备。
6. SATA(Serial ATA,串行ATA):SATA接口是一种用于连接计算机主板和存储设备(如硬盘、SSD)的接口标准。
SATA接口具有高速传输、易于安装、可靠性高等特点,适用于个人电脑和服务器等设备。
除了上述介绍的通讯接口,还有很多其他常用的通讯接口,如RS-232、RS-485、CAN(Controller Area Network,控制器局域网)、I2C (Inter Integrated Circuit,串行总线)、SPI(Serial Peripheral Interface,串行外设接口)等,它们在各种电子设备和计算机系统中应用广泛。
RS232串行接口总线目录第一节RS232串行接口系统描述 (3)第二节 RS232串行接口拓扑结构 (3)第三节物理接口 (5)3.1 电气特性 (5)3.2接口信号 (6)3.3机械特性 (8)第四节电源 (8)第五节 RS232接口协议 (9)5.1 数据传送格式 (9)5.2 流控制 (10)5.3 差错检测 (10)5.4 差错控制 (10)第六节系统配置 (10)6.1 端口地址和中断 (10)6.2 串行端口寄存器 (11)6.3 DLAB (14)第七节数据流模型 (14)第八节 RS232串口接口设备 (15)第一节RS232串行接口系统描述串行接口是微型计算机与外部设备的主要通信接口之一。
只需要一条信号线就可以进行单向数据传送。
由于线路简单,价格相对较低,目前得到广泛应用。
串行通信接口标准经过使用和发展,目前已经有几种。
但都是在RS-232标准的基础上经过改进而形成的。
所以,以RS-232C为主来讨论。
RS-323C标准是美国EIA(电子工业联合会)与BELL等公司一起开发的1969年公布的通信协议。
它适合于数据传输速率在0~20000b/s范围内的通信。
这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。
由于通行设备厂商都生产与RS-232C制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。
在讨论RS-232C接口标准的内容之前,先说明两点:首先,RS-232-C标准最初是远程通信连接数据终端设备DTE(Data Terminal Equipment)与数据通信设备DCE(Data Communication Equipment)而制定的。
因此这个标准的制定,并未考虑计算机系统的应用要求。
但目前它又广泛地被借来用于计算机(更准确的说,是计算机接口)与终端或外设之间的近端连接标准。
显然,这个标准的有些规定及和计算机系统是不一致的,甚至是相矛盾的。
电脑接⼝⼤全图解!这些接⼝你⼀定不清楚!(绝对⼲货)由于主板采⽤了开放式结构。
主板上⼤都有6-15个扩展插槽,供PC机外围主板设备的控制卡(适配器)插接。
通过更换这些插卡,可以对微机的相应⼦系统进⾏局部升级,使⼚家和⽤户在配置机型⽅⾯有更⼤的灵活性。
总之,主板在整个微机系统中扮演着举⾜轻重的⾓⾊。
可以说,主板的类型和档次决定着整个微机系统的类型和档次。
第⼀部分主板各类接⼝及扩展插槽⾸先主板常⽤接⼝/插槽CPU插槽就是中央处理器的位置DDR SDRAM插槽就是通常所说的内存插槽了DDR...DDR2...RRD3这些,受这些接⼝限制....前⼆个基本淘汰插槽中间的坎也是防呆的主板上的⼤多接⼝都是有⽅向的内存插槽⼀般主板上都有四个,当你买到两条内存的时候插到⼀样颜⾊的接⼝上,就是所谓的“双通道”了.SATA接⼝连接硬盘,防呆设计是L型的新的SATA3代接⼝速度还更快推荐⽤SSD下边还会介绍⽼的IDE接⼝内存插槽下⾯的两个接⼝,蓝⾊和⽩⾊的蓝⾊的接⼝叫IDE接⼝,在已被SATA淘汰,估计好多新⼈都没⽤过以前的硬盘和光驱,少了这个接⼝是不⾏的,以前就是连接光驱和硬盘的防呆设计就是那个缺⼝了⽩⾊的接⼝是主板整体的供电部分了,现在⼤多数都是24pin的USB连接机箱前⾯板的USB接⼝,你的U盘什么的插到机箱上其实就是这两个接⼝了CPU供电接⼝ATX12V这个接⼝是给CPU供电的接⼝。
有些主板是4pin的。
这个图是主板8PIN。
所以就多了四个CPU_FAN顾名思义就是插CPU的散热风扇的四个针脚分别是 1接地-2速度检测-3电源- 4调速PWRSW=电源开关...短接⼀下就可以开机了.....RESET=复位....短接就可以重启....HDLED=就是硬盘读写灯了....机箱上有个灯总⼀闪⼀闪的...连接的就是这⾥了...Power LED 就是开机时候长亮的那个灯.....PCI-E x16(⼀般⽤来接显卡)PCI-E x1PCI下⾯这张图是PCI-E x4PCI-E x2是给主板上的内部零件⽤的......所以主板上不会提供PCI-E x2的接⼝.....PCI-E x8我没找到图.....下⾯是笔记本上的miniPCI-E接⼝.....下图是miniPCI-E的接⼝....有的笔记本上有预留有预留miniPCI-E接⼝的笔记本可以扩展很多应⽤......追加MSATA接⼝第⼆部分电源接⼝电源常⽤接⼝常见的电源的供电接⼝⼤概分为以下⼏种:24Pin、20Pin、20 4Pin、可提供12V、5V、3.3V三种电压24PIN20PIN20 4PIN20Pin的主板基本淘汰了、但20 4Pin依然是⽬前电源最常见的接⼝可能是⼚家还是会考虑兼容性吧、纯24Pin主板供电的电源还是⾮常少的CPU供电8Pin.....4Pin....4 4Pin....可提供12V⼀种电压.....低端主板⽤4Pin有⼀部分,,,,中⾼端主板⼤多都是8Pin....⼚家考虑到兼容....单CPU供电的电源⼤多是4 4Pin.....双CPU供电的电源⼤多是⼀根8Pin⼀根4 4Pin显卡供电6Pin、8Pin、6 2Pin可提供12V⼀种电压。
微型计算机接口类型、特点及应用郑州广播电视学校李哲接口是指两个电路或设备之间的分界面或连接点。
接口技术是采用硬件和软件技术相结合的方法,研究微处理器和外部世界之间如何实现安全、可靠、高效的信息交换的技术。
由于计算机是采用模块化结构,也就决定了其接口多的特点。
由于计算机的外围设备品种繁多,因此CPU在与I/O设备进行数据交换时存在以下问题:速度不匹配。
I/O设备的工作速度要比CPU慢许多,而且由于种类的不同,他们之间的速度差异也很大,例如硬盘的传输速度就要比打印机快出很多。
时序不匹配。
各个I/O设备都有自己的定时控制电路,以自己的速度传输数据,无法与CPU的时序取得统一。
信息格式不匹配。
不同的I/O设备存储和处理信息的格式不同,例如可以分为串行和并行两种;也可以分为二进制格式、ACSII编码和BCD编码等。
信息类型不匹配。
不同I/O设备采用的信号类型不同,有些是数字信号,而有些是模拟信号,因此所采用的处理方式也不同。
基于以上原因,CPU与外设之间的数据交换必须通过接口来完成。
计算机的常见接口有PS/2 接口、COM接口、LPT并行接口、IDE接口、SA TA串行总线接口、USB接口、IRDA红外线接口、IEEE1394接口、VGA、DVI显示接口、RJ45接口和AGP、PCIE图形加速接口等等,这些接口有着不同的特点和用途,下面我们具体的进行介绍。
1、PS/2接口PS/2接口是广为人知的接口,是用来连接键盘和鼠标的接口,绿色接口接入鼠标,而蓝色接口则接入键盘。
2、COM串行接口COM串行接口是用来连接MODEM等外设的接口。
一般的计算机COM口有两个,分别是COM1口和COM2 口。
3、LPT并行接口LPT并口是一种增强了的双向并行传输接口,在USB接口出现以前是扫描仪,打印机最常用的接口。
设备容易安装及使用,但是速度比较慢。
4、IDE或A TA接口用于连接硬盘和光驱(CD和DVD)的并行总线,也称作Parallel A TA(并行A TA)。
SPI、I2C、UART三种串⾏总线协议的区别和SPI接⼝介绍(转)SPI、I2C、UART三种串⾏总线协议的区别第⼀个区别当然是名字:SPI(Serial Peripheral Interface:串⾏外设接⼝);I2C(INTER IC BUS)UART(Universal Asynchronous Receiver Transmitter:通⽤异步收发器)第⼆,区别在电⽓信号线上:SPI总线由三条信号线组成:串⾏时钟(SCLK)、串⾏数据输出(SDO)、串⾏数据输⼊(SDI)。
SPI总线可以实现多个SPI设备互相连接。
提供SPI串⾏时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Slave)。
主从设备间可以实现全双⼯通信,当有多个从设备时,还可以增加⼀条从设备选择线。
如果⽤通⽤IO⼝模拟SPI总线,必须要有⼀个输出⼝(SDO),⼀个输⼊⼝(SDI),另⼀个⼝则视实现的设备类型⽽定,如果要实现主从设备,则需输⼊输出⼝,若只实现主设备,则需输出⼝即可,若只实现从设备,则只需输⼊⼝即可。
I2C总线是双向、两线(SCL、SDA)、串⾏、多主控(multi-master)接⼝标准,具有总线仲裁机制,⾮常适合在器件之间进⾏近距离、⾮经常性的数据通信。
在它的协议体系中,传输数据时都会带上⽬的设备的设备地址,因此可以实现设备组⽹。
如果⽤通⽤IO⼝模拟I2C总线,并实现双向传输,则需⼀个输⼊输出⼝(SDA),另外还需⼀个输出⼝(SCL)。
(注:I2C资料了解得⽐较少,这⾥的描述可能很不完备)UART总线是异步串⼝,因此⼀般⽐前两种同步串⼝的结构要复杂很多,⼀般由波特率产⽣器(产⽣的波特率等于传输波特率的16倍)、UART接收器、UART发送器组成,硬件上由两根线,⼀根⽤于发送,⼀根⽤于接收。
显然,如果⽤通⽤IO⼝模拟UART总线,则需⼀个输⼊⼝,⼀个输出⼝。
第三,从第⼆点明显可以看出,SPI和UART可以实现全双⼯,但I2C不⾏;第四,看看⽜⼈们的意见吧!wudanyu:I2C线更少,我觉得⽐UART、SPI更为强⼤,但是技术上也更加⿇烦些,因为I2C需要有双向IO的⽀持,⽽且使⽤上拉电阻,我觉得抗⼲扰能⼒较弱,⼀般⽤于同⼀板卡上芯⽚之间的通信,较少⽤于远距离通信。
常见接口电路介绍一、I2C总线简介1. 什么是I2C( INTER IC BUS)NXP 半导体(原Philips 半导体)于20 多年前发明了一种简单的双向二线制串行通信总线,这个总线被称为Inter-IC 或者I2C 总线。
目前I2C 总线已经成为业界嵌入式应用的标准解决方案,被广泛地应用在各式各样基于微控器的专业、消费与电信产品中,作为控制、诊断与电源管理总线。
多个符合I2C 总线标准的器件都可以通过同一条I2C 总线进行通信,而不需要额外的地址译码器。
由于I2C 是一种两线式半双工串行总线,因此简单的操作特性成为它快速崛起成为业界标准的关键因素。
2. I2C总线的基本概念1)发送器(Transmitter):发送数据到总线的器件;2)接收器(Receiver):从总线接收数据的器件;3)主机(Master):初始化发送、产生时钟信号和终止发送的器件;4)从机(Slave):被主机寻址的器件;其线路结构图如下:如上图示,I2C 总线具有如下特点:1)I2C 总线是双向传输的总线,因此主机和从机都可能成为发送器和接收器。
不论主机是发送器还是接收器,时钟信号SCL 都要由主机来产生;2)只需要由两根信号线组成,一根是串行数据线SDA,另一根是串行时钟线SCL;3)SDA 和SCL 信号线都必须要加上拉电阻Rp(Pull-Up Resistor)。
上拉电阻一般取值3~10KΩ;4)SDA 和SCL 管脚都是漏极开路(或集电极开路)输出结构;3. I2C总线的信号传输1)3种速率可选择标准模式100kbps、快速模式400kbps、最高速率3.4Mbps;2)具有特定的传输起始、停止条件a)起始条件:当SCL 处于高电平期间时,SDA 从高电平向低电平跳变时产生起始条件。
起始条件常常简记为S;b)停止条件:当SCL 处于高电平期间时,SDA 从低电平向高电平跳变时产生停止条件。
停止条件简记为P;3)数据传输从确定从机地址开始a)多个从机可连接到同一条I2C 总线上,它们之间通过各自唯一的器件地址来区分;b)一般从机地址由7 位地址位和一位读写标志R/W 组成,7 位地址占据高7 位,读写位在最后。
读写位是0,表示主机将要向从机写入数据;读写位是1,则表示主机将要从从机读取数据;4)以字节为单位的数据传输方式a)I2C 总线以字节(Byte)为单位收发数据,主机总是先发地址再发数据;b)在I2C 总线传输数据过程中,每传输一个字节,都要跟一个应答状态位。
遵循“谁接收谁产生”的原则,即总是由接收器产生应答位,应答位为0 表示接收器应答(ACK);为1 则表示非应答(NACK);c)如果接收器在接收完最后一个字节的数据,或者不能再接收更多的数据时,应当产生非应答来通知发送器;4. I2C总线数据传输时序图示1)传输格式图示(灰色为主机的工作时隙,白色为从机的工作时隙)S:起始位(START);SA:从机地址(Slave Address),7 位从机地址;W:写标志位(Write),1 位写标志;R:读标志位(Read),1 位读标志;A:应答位(Acknowledge),1 位应答;A:非应答位(Not Acknowledge),1 位非应答M;D:数据(Data),每个数据都必须是8 位;P:停止位(STOP);2)传输时序示例5. I2C总线的常见应用所应用范围包括:摄像头、调频收音机芯片、音频编解码芯片、模拟电视、光电鼠标等,一般用于同一板卡上芯片之间的通信,较少用于远距离通信。
二、SPI总线简介1.什么是SPI串行外围设备接口SPI(serial peripheral interface_串行外设接口)总线技术是Motorola 公司推出的一种同步串行接口,Motorola 公司生产的绝大多数MCU(微控制器)都配有SPI 硬件接口。
SPI 用于CPU 与各种外围器件进行全双工、同步串行通讯,通信波特率可以高达几Mbps,但具体速度大小取决于SPI硬件。
SPI接口具有全双工操作,操作简单,数据传输速率较高的优点,但也存在没有指定的流控制,没有应答机制确认是否接收到数据的缺点。
单工、半双工、全双工单工数据传输只支持数据在一个方向上传输;半双工数据传输允许数据在两个方向上传输,但是,在某一时刻,只允许数据在一个方向上传输,它实际上是一种切换方向的单工通信;全双工数据通信允许数据同时在两个方向上传输,因此,全双工通信是两个单工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。
同步通信原理:同步通信是一种连续串行传送数据的通信方式,一次通信只传送一帧信息。
这里的信息帧与异步通信中的字符帧不同,通常含有若干个数据字符。
采用同步通信时,将许多字符组成一个信息组,这样,字符可以一个接一个地传输,但是,在每组信息(通常称为帧)的开始要加上同步字符,在没有信息要传输时,要填上空字符,因为同步传输不允许有间隙。
在同步传输过程中,一个字符可以对应5~8位。
当然,对同一个传输过程,所有字符对应同样的数位,比如说n位。
这样,传输时,按每n位划分为一个时间片,发送端在一个时间片中发送一个字符,接收端则在一个时间片中接收一个字符。
同步传输时,一个信息帧中包含许多字符,每个信息帧用同步字符作为开始,一般将同步字符和空字符用同一个代码。
在整个系统中,由一个统一的时钟控制发送端的发送和空字符用同一个代码。
接收端当然是应该能识别同步字符的,当检测到有一串数位和同步字符相匹配时,就认为开始一个信息帧,于是,把此后的数位作为实际传输信息来处理。
异步通信原理:异步通信是一种很常用的通信方式。
异步通信在发送字符时,所发送的字符之间的时间间隔可以是任意的。
当然,接收端必须时刻做好接收的准备。
发送端可以在任意时刻开始发送字符,因此必须在每一个字符的开始和结束的地方加上标志,即加上开始位和停止位,以便使接收端能够正确地将每一个字符接收下来。
异步通信的好处是通信设备简单、便宜,但传输效率较低(因为开始位和停止位的开销所占比例较大)。
1.同步通信要求接收端时钟频率和发送端时钟频率一致,发送端发送连续的比特流;异步通信时不要求接收端时钟和发送端时钟同步,发送端发送完一个字节后,可经过任意长的时间间隔再发送下一个字节。
2.同步通信效率高;异步通信效率较低。
3.同步通信较复杂,双方时钟的允许误差较小;异步通信简单,双方时钟可允许一定误差。
4.同步通信可用于点对多点;异步通信只适用于点对点。
2.SPI总线应用线路图示如上图示,SPI 总线具有如下特点:1)包含主机(MASTER)以及从机(SLAVE)2)由4 条必要信号线组成:串行时钟线(SCLK)、主机输入/从机输出数据线(MISO)、主机输出/从机输入数据线(MOSI)、低电平有效从机选择线(SS);3)如果需要增加外部从机,则相应需要增加对应此器件的低电平有效从机选择线(SS)SPI总线只需四条线(如图1所示)就可以完成MCU与各种外围器件的通讯:1)MOSI – Master数据输出,Slave数据输入;2)MISO – Master数据输入,Slave数据输出;3)SCK –时钟信号,由Master产生;4)/CS – Slave使能信号,由Master控制。
3.SPI总线波特率和时钟模式1)SPI总线有四种工作方式(SP0, SP1, SP2, SP3),其中使用的最为广泛的是SPI0和SPI3方式。
SPI模块支持125种不同的波特率,最大波特率为系统时钟频率的四分之一。
2)SPI有四种时钟模式,由CLOCK POLARITY(极性) 和CLOCK PHASE (相位)位控制。
CLOCK POLARITY 位选择时钟的有效沿是上升沿还是下降沿,CLOCK PHASE位选择是否有半个时钟周期的延时,通过设置时钟空闲时为高或者低的状态,以及数据是在时钟的上升沿或下降沿锁存可将SPI配置成相应的工作模式。
SPI模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性和相位可以进行配置,时钟极性(CPOL)对传输协议没有重大的影响。
如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。
时钟相位(CPHA)能够配置用于选择两种不同的传输协议之一进行数据传输。
如果CPHA=0,在串行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)数据被采样。
SPI主模块和与之通信的外设音时钟相位和极性应该一致。
a)上升沿,无延时:SPI 在时钟上升沿发送数据,在时钟的下降沿接收数据;b)上升沿,有延时:SPI 在时钟上升沿前半个周期发送数据,在时钟的上升沿接收数据;c)下降沿,无延时:SPI 在时钟下降沿发送数据,在时钟的上升沿接收数据;d)下降沿,有延时:SPI 在时钟下降沿前半个周期发送数据,在时钟的下降沿接收数据;4 种时钟模式如图所示:4.SPI总线传输特点SPI 是一个环形总线结构,其时序其实很简单,主要是在SCLK 的控制下,两个双向移位寄存器进行数据交换,在一个SPI时钟周期内,会完成如下操作:1) Master通过MOSI线发送1位数据,同时Slave通过MOSI线读取这1位数据;2) Slave通过MISO线发送1位数据,同时Master通过MISO线读取这1位数据;SPI接口在Master控制下产生的从器件使能信号和时钟信号,两个双向移位寄存器按位传输进行数据交换,传输数据高位在前,低位在后(MSB first);Master和Slave各有一个移位寄存器,如下图所示,而且这两个移位寄存器连接成环状。
依照SCK的变化,数据以MSB first的方式依次移出Master寄存器和Slave寄存器,并且依次移入Slave寄存器和Master寄存器。
当寄存器中的内容全部移出时,相当于完成了两个寄存器内容的交换。
内部结构如下:以上升沿,无延时时钟模式为例,上升沿到来的时候,MOSI 上的电平将被发送到从设备的寄存器中,下降沿到来的时候,MISO 上的电平将被接收到主设备的寄存器中。
举例:假设主机和从机初始化就绪:并且主机的sbuff=0xaa,从机的sbuff=0x55,下面将分步对SPI 的8 个时钟周期的数据情况演示一遍(时钟的上升沿发送数据, 在时钟的下降沿接收数据)。
(上面的上表示上升沿、下表示下降沿。
这样就完成了两个寄存器8 位的交换) CPOL是用来决定SCK时钟信号空闲时的电平,CPOL=0,空闲电平为低电平,CPOL=1时,空闲电平为高电平。
CPHA是用来决定采样时刻的,CPHA=0,在每个周期的第一个时钟沿采样,CPHA=1,在每个周期的第二个时钟沿采样。