(二)驱动设计之接口与总线

(二)驱动设计之接口与总线

一、串口

RS-232、RS-485、RS-422都是串行数据接口标准,最初由电子工业协会(EIA)制定发布。

RS-232

RS-232标准为连接DTE(数据终端设备)与DCE(数据通信设备)而制定,有25条线,其中4条数据线,11条控制线,
7条备用和未定义线,常用的只有9根线,分别为:

  • RTS/CTS(请求发送 流控制)

    用来表示DTE请求DCE发送数据,当中断要发送数据时,该信号有效。

  • CTS(清除发送 流控制)

    用来表示DCE准备好接收DTE发来的数据,是对RTS的响应信号。

  • RXD(数据接收)

    DTE通过RxD接收从DCE发来的串行数据。

  • TXD(数据发送)

    DTE通过TxD将串行数据发送到DCE。

  • DSR(数据终端就绪 流控制)

    有效时表明DCE可使用。

  • DTR(数据设置就绪 流控制)

    有效时表示DTE可使用。

  • DCD(数据载波检测,也称接收线信号检出(RLSD))

    当本地DCE设备接收到对方DCE设备发送来的载波信号时,使DCD线有效,通知DTE准备接收,并且由DCE将接收到的
    载波信号解调为数字信号,经RxD线发送给DTE。

  • Ringing-RI(振铃指示)

    当调制解调器收到交换台送来的振铃呼叫信号时,使该信号有效,通知终端,已被呼叫。

  • SG(信号地)
    Alt

二、I2C

I2C(内置集成电路)总线用于连接微控制器及其外围设备。I2C总线支持多主控(Multi-Mastering)模式,任何能够
进行发送和接收的设备都可以成为主设备。主控能够控制数据的传输和时钟频率,在任意时刻只能有一个主控。

组成I2C总线的两个信号为数据线SDA和时钟SCL。开始位和停止位都由I2C主设备产生。在选择从设备时,如果从设备采
用7位地址,则主设备在发起传输过程前,需先发送1字节的地址信息,前7位为设备地址,最后1位为读写标志。之后,
每次传输的数据也是1字节,从MSB开始传输。每个字节传完后,在SCL的第9个上升沿到来之前,接收方应该发出1个ACK
位。SCL上的时钟脉冲由I2C主控方发出,在第8个时钟周期之后,主控方应该释放SD.

三、SPI

SPI(Serial Peripheral Interface,串行外设接口)总线系统是一种同步串行外设接口,它可以使CPU与各种外围设备以串行
方式进行通信以交换信息。一般主控SoC作为SPI的“主”,而外设作为SPI的“从”。

SPI接口一般使用4条线:串行时钟线(SCLK)、主机输入/从机输出数据线MISO、主机输出/从机输入数据线MOSI和低电平
有效的从机选择线SS(在不同的文献里,也常称为nCS、CS、CSB、CSN、nSS、STE、SYNC等)。
Alt
[外链图片转存失败(img-TU7kauO7-1562313012111)(https://yqfile.alicdn.com/79b3d8b7a72b6262ce7ebc0610382c76a440ba3f.png)]

在SPI总线的传输中,SS信号是低电平有效的,当我们要与某外设通信的时候,需要将该外设上的SS线置低。此外,特别要
注意SPI从设备支持的SPI总线最高时钟频率(决定了SCK的频率)以及外设的CPHA、CPOL模式,这决定了数据与时钟之间
的偏移、采样的时刻以及触发的边沿是上升沿还是下降沿。

SPI模块为了和外设进行数据交换,根据外设工作要求,其输出串行同步时钟极性(CPOL)和相位(CPHA)可以进行配置。
如果CPOL=0,串行同步时钟的空闲状态为低电平;如果CPOL=1,串行同步时钟的空闲状态为高电平。如果CPHA=0,在串
行同步时钟的第一个跳变沿(上升或下降)数据被采样;如果CPHA=1,在串行同步时钟的第二个跳变沿(上升或下降)
数据被采样。

四、USB

USB(通用串行总线)具有数据传输率高、易扩展、支持即插即用和热插拔的优点。USB 1.1包含全速和低速两种模式,低速
方式的速率为1.5Mbit/s,支持一些不需要很大数据吞吐量和很高实时性的设备,如鼠标等。全速模式为12Mbit/s,可以外接
速率更高的外设。在USB 2.0中,增加了一种高速方式,数据传输率达到480Mbit/s,半双工,可以满足更高速外设的需要。
而USB 3.0(也被认为是Super Speed USB)的最大传输带宽高达5.0Gbit/s(即640MB/s),全双工。

USB 2.0总线的机械连接非常简单,采用4芯的屏蔽线,一对差分线(D+、D-)传送信号,另一对(VBUS、电源地)传送+5V
的直流电。USB 3.0 线缆则设计了8条内部线路,除VBUS、电源地之外,其余3对均为数据传输线路。其中保留了D+与D-这两
条兼容USB 2.0的线路,新增了SSRX与SSTX专为USB 3.0所设的线路。

嵌入式系统中,电路板若需要挂接USB设备,则需提供USB主机(Host)控制器和连接器;若电路板需要作为USB设备,则需
提供USB设备适配器和连接器。目前,大多数SoC集成了USB主机控制器(以连接USB外设)和设备适配器(以将本嵌入式系统
作为其他计算机系统的USB外设,如手机充当U盘)。

每一个USB设备会有一个或者多个逻辑连接点在里面,每个连接点叫端点。USB提供了多种传输方式以适应各种设备的需要,
一个端点可以选择如下一种传输方式。

  • 1.控制(Control)传输方式
    控制传输是双向传输,数据量通常较小,主要用来进行查询、配置和给USB设备发送通用命令。所有USB设备必须支持标准
    请求(Standard Request),控制传输方式和端点0。
  • 2.同步(Isochronous)传输方式
    同步传输提供了确定的带宽和间隔时间,它用于时间要求严格并具有较强容错性的流数据传输,或者用于要求恒定数据传
    送率的即时应用。例如进行语音业务传输时,使用同步传输方式是很好的选择。同步传输也常称为“Streaming Real-time”传输。
  • 3.中断(Interrupt)传输方式
    中断方式传送是单向的,对于USB主机而言,只有输入。中断传输方式主要用于定时查询设备是否有中断数据要传送,该
    传输方式应用在少量分散的、不可预测的数据传输场合,键盘、游戏杆和鼠标属于这一类型。
  • 4.批量(Bulk)传输方式
    批量传输主要应用在没有带宽、间隔时间要求的批量数据的传送和接收中,它要求保证传输。打印机和扫描仪属于这种类型。
    而USB 3.0则增加了一种Bulk Streams传输模式,USB 2.0的Bulk模式只支持1个数据流,而Bulk Streams传输模式则可以支持多个
    数据流,每个数据流被分配一个Stream ID(SID),每个SID与一个主机缓冲区对应。

在USB架构中,集线器负责检测设备的连接和断开,利用其中断IN端点(Interrupt IN Endpoint)来向主机报告。一旦获悉有
新设备连接上来,主机就会发送一系列请求给设备所挂载的集线器,再由集线器建立起一条连接主机和设备之间的通信通道。
然后主机以控制传输的方式,通过端点 0对设备发送各种请求,设备收到主机发来的请求后回复相应的信息,进行枚举(Enumerate)
操作。因此USB总线具备热插拔的能力。

五、以太网接口

以太网接口由MAC(以太网媒体接入控制器)和PHY(物理接口收发器)组成。以太网MAC由IEEE 802.3以太网标准定义,
实现了数据链路层。常用的MAC支持10Mbit/s或100Mbit/s两种速率。吉比特以太网(也称为千兆位以太网)是快速以太网的
下一代技术,将网速提高到了1000 Mbit/s。千兆位以太网以 IEEE 802.3z和802.3ab发布,作为IEEE 802.3 标准的补充。

MAC和PHY之间采用MII(媒体独立接口)连接,它是IEEE-802.3定义的以太网行业标准,包括1个数据接口与MAC和PHY之间
的1个管理接口。数据接口包括分别用于发送和接收的两条独立信道,每条信道都有自己的数据、时钟和控制信号,MII数据
接口总共需要16个信号。MII管理接口包含两个信号,一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和
控制PHY。


以太网隔离变压器是以太网收发芯片与连接器之间的磁性组件,在其两者之间起着信号传输、阻抗匹配、波形修复、信号杂
波抑制和高电压隔离作用。许多处理器内部集成了MAC或同时集成了MAC和PHY,另有许多以太网控制芯片也集成了MAC和PHY。

六、PCI和PCI-E

PCI(外围部件互连)是由Intel于1991年推出的一种局部总线。PCI总线具有如下特点。

  • 数据总线为32位,可扩充到64位。
  • 可进行突发(Burst)模式传输。

    突发方式传输是指取得总线控制权后连续进行多个数据的传输。突发传输时,只需要给出目的地的首地址,访问第1个数据后,
    第2~n个数据会在首地址的基础上按一定规则自动寻址和传输。与突发方式对应的是单周期方式,它在1个总线周期只传送1个数据。

  • 总线操作与处理器—存储器子系统操作并行。
  • 采用中央集中式总线仲裁。
  • 支持全自动配置、资源分配,PCI卡内有设备信息寄存器组为系统提供卡的信息,可实现即插即用。
  • PCI总线规范独立于微处理器,通用性好。
  • PCI设备可以完全作为主控设备控制总线。

[外链图片转存失败(img-rWRTXTW9-1562313012116)(https://yqfile.alicdn.com/cfb6025984e0029f032c266ae3176b8ee337ad4c.png)]

七、SD和SDIO

SD(Secure Digital)是一种关于Flash存储卡的标准,在设计上与MMC(Multi-Media Card)保持了兼容。SDHC(SD High Capacity)
是大容量SD卡,支持的最大容量为32GB。SDXC(SD eXtended Capacity)则支持最大2TB大小的容量。SDIO(Secure Digital Input
and Output Card,安全数字输入输出卡)在SD标准的基础上,定义了除存储卡以外的外设接口。SDIO主要有两类应用——可移动
和不可移动。不可移动设备遵循相同的电气标准,但不要求符合物理标准。现在已经有非常多的手机或者手持装置都支持SDIO的
功能,以连接WiFi、蓝牙、GPS等模块。

一般情况下,芯片内部集成的SD控制器同时支持MMC、SD卡,又支持SDIO卡,但是SD和SDIO的协议还是有不一样的地方,支持
的命令也会有不同。

SD/SDIO的传输模式有:

  • SPI模式
  • 1位模式
  • 4位模式


eMMC(Embedded Multi Media Card)是当前移动设备本地存储的主流解决方案,目的在于简化手机存储器的设计。eMMC就是
NAND Flash、闪存控制芯片和标准接口封装的集合,它把NAND和控制芯片直接封装在一起成为一个多芯片封装(Multi-Chip Package,
MCP)芯片。eMMC支持DAT[0]~DAT[7] 8位的数据线。上电或者复位后,默认处于1位模式,只使用DAT[0],后续可以配置为4位
或者8位模式。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值