一、引言
嵌入式系统的硬件除了核心的微处理器之外就是外围器件和接口。接口技术在嵌入式系统设计处于如此重要的位置,是嵌入式系统设计师硬件部分的重要考试范围。目前嵌入式系统中的接口五花百门,每个接口都可以写成一本厚厚的书。面对内容如此之多,范围如此之广的考试部分,应该怎么样去复习呢?我的指导思想是,把握好每种接口技术的最基本概念,理解透每个接口的最基本工作原理,从历年考题中提炼出常考知识点,重点进行复习,这样足以应付考试了。是不是这样就要通过真题考试来验证了,让我们期待吧。
二、复习笔记
1. Flash存储器
(1)Flash存储器是一种非易失性存储器,根据结构的不同可以将其分为NOR Flash和NAND Flash两种。
(2)Flash存储器的特点:
A、区块结构:在物理上分成若干个区块,区块之间相互独立。
B、先擦后写:Flash的写操作只能将数据位从1写成0,不能从0写成1,所以在对存储器进行写入之前必须先执行擦除操作,将预写入的数据位初始化为1。擦除操作的最小单位是一个区块,而不是单个字节。
C、操作指令:执行写操作,它必须输入一串特殊指令(NOR Flash)或者完成一段时序(NAND Flash)才能将数据写入。
D、位反转:由于Flash的固有特性,在读写过程中偶尔会产生一位或几位的数据错误。位反转无法避免,只能通过其他手段对结果进行事后处理。
E、坏块:区块一旦损坏,将无法进行修复。对已损坏的区块操作其结果不可预测。
(3)NOR Flash的特点:应用程序可以直接在闪存内运行,不需要再把代码读到系统RAM中运行。NOR Flash的传输效率很高,在1MB~4MB的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影响了它的性能。
(4)NAND Flash的特点:能够提高极高的密度单元,可以达到高存储密度,并且写入和擦除的速度也很快,这也是为何所有的U盘都使用NAND Flash作为存储介质的原因。应用NAND Flash的困难在于闪存需要特殊的系统接口。
(5)NOR Flash与NAND Flash的区别:
A、NOR Flash的读速度比NAND Flash稍快一些。
B、NAND Flash的擦除和写入速度比NOR Flash快很多
C、NAND Flash的随机读取能力差,适合大量数据的连续读取。
D、NOR Flash带有SRAM接口,有足够的地址引进来寻址,可以很容易地存取其内部的每一个字节。NAND Flash的地址、数据和命令共用8位总线(有写公司的产品使用16位),每次读写都要使用复杂的I/O接口串行地存取数据。
E、NOR Flash的容量一般较小,通常在1MB~8MB之间;NAND Flash只用在8MB以上的产品中。因此,NOR Flash只要应用在代码存储介质中,NAND Flash适用于资料存储。
F、NAND Flash中每个块的最大擦写次数是一百万次,而NOR Flash是十万次。
G、NOR Flash可以像其他内存那样连接,非常直接地使用,并可以在上面直接运行代码;NAND Flash需要特殊的I/O接口,在使用的时候,必须先写入驱动程序,才能继续执行其他操作。因为设计师绝不能向坏块写入,这就意味着在NAND Flash上自始至终必须进行虚拟映像。
H、NOR Flash用于对数据可靠性要求较高的代码存储、通信产品、网络处理等领域,被成为代码闪存;NAND Flash则用于对存储容量要求较高的MP3、存储卡、U盘等领域,被成为数据闪存。
2、RAM存储器
(1)SRAM的特点:
SRAM表示静态随机存取存储器,只要供电它就会保持一个值,它没有刷新周期,由触发器构成基本单元,集成度低,每个SRAM存储单元由6个晶体管组成,因此其成本较高。它具有较高速率,常用于高速缓冲存储器。
通常SRAM有4种引脚:
CE:片选信号,低电平有效。
R/W:读写控制信号。
ADDRESS:一组地址线。
DATA:用于数据传输的一组双向信号线。
(2)DRAM的特点:
DRAM表示动态随机存取存储器。这是一种以电荷形式进行存储的半导体存储器。它的每个存储单元由一个晶体管和一个电容器组成,数据存储在电容器中。电容器会由于漏电而导致电荷丢失,因而DRAM器件是不稳定的。它必须有规律地进行刷新,从而将数据保存在存储器中。
DRAM的接口比较复杂,通常有以下引脚:
CE:片选信号,低电平有效。
R/W:读写控制信号。
RAS:行地址选通信号,通常接地址的高位部分。
CAS:列地址选通信号,通常接地址的低位部分。
ADDRESS:一组地址线。
DATA:用于数据传输的一组双向信号线。
(3)SDRAM的特点:
SDRAM表示同步动态随机存取存储器。同步是指内存工作需要同步时钟,内部的命令发送与数据的传输都以它为基准;动态是指存储器阵列需要不断的刷新来保证数据不丢失。它通常只能工作在133MHz的主频。
(4)DDRAM的特点
DDRAM表示双倍速率同步动态随机存取存储器,也称DDR。DDRAM是基于SDRAM技术的,SDRAM在一个时钟周期内只传输一次数据,它是在时钟的上升期进行数据传输;而DDR内存则是一个时钟周期内传输两次次数据,它能够在时钟的上升期和下降期各传输一次数据。在133MHz的主频下,DDR内存带宽可以达到133×64b/8×2=2.1GB/s。
3、硬盘、光盘、CF卡、SD卡的相关知识见《教程》145~148页。
4、GPIO原理与结构
GPIO是I/O的最基本形式,它是一组输入引脚或输出引脚。有些GPIO引脚能够加以编程改变工作方向,通常有两个控制寄存器:数据寄存器和数据方向寄存器。数据方向寄存器设置端口的方向。如果将引脚设置为输出,那么数据寄存器将控制着该引脚状态。若将引脚设置为输入,则此输入引脚的状态由引脚上的逻辑电路层来实现对它的控制。
5、A/D接口
(1)A/D转换器是把电模拟量转换为数字量的电路。实现A/D转换的方法有很多,常用的方法有计数法、双积分法和逐次逼进法。
(2)计数式A/D转换法
其电路主要部件包括:比较器、计数器、D/A转换器和标准电压源。
其工作原理简单来说就是,有一个计数器,从0开始进行加1计数,每进行一次加1,该数值作为D/A转换器的输入,其产生一个比较电压VO与输入模拟电压VIN进行比较。如果VO小于VIN则继续进行加1计数,直到VO大于VIN,这时计数器的累加数值就是A/D转换器的输出值。(详细参考《教程》155页)
这种转换方式的特点是简单,但是速度比较慢,特别是模拟电压较高时,转换速度更慢。例如对于一个8位A/D转换器,若输入模拟量为最大值,计数器要从0开始计数到255,做255次D/A转换和电压比较的工作,才能完成转换。
(3)双积分式A/D转换法
其电路主要部件包括:积分器、比较器、计数器和标准电压源。
其工作原理是,首先电路对输入待测电压进行固定时间的积分,然后换为标准电压进行固定斜率的反向积分,反向积分进行到一定时间,便返回起始值。由于使用固定斜率,对标准电压进行反向积分的时间正比于输入模拟电压值,输入模拟电压越大,反向积分回到起始值的时间越长。只要用标准的高频时钟脉冲测定反向积分花费的时间,就可以得到相应于输入模拟电压的数字量,也就完成了A/D转换。(详细参考《教程》156页)
其特点是,具有很强的抗工频干扰能力,转换精度高,但转换速度慢,通常转换频率小于10Hz,主要用于数字式测试仪表、温度测量等方面。
(4)逐次逼近式A/D转换法
其电路主要部件包括:比较器、D/A转换器、逐次逼近寄存器和基准电压源。
其工作原理是,实质上就是对分搜索法,和平时天平的使用原理一样。在进行A/D转换时,由D/A转换器从高位到低位逐位增加转换位数,产生不同的输出电压,把输入电压与输出电压进行比较而实现。首先使最高位为1,这相当于取出基准电压的1/2与输入电压比较,如果在输入电压小于1/2的基准电压,则最高位置0,反之置1。之后,次高位置1,相当于在1/2的范围中再作对分搜索,以此类推,逐次逼近。(详细参考《教程》157页)
其特点是,速度快,转换精度高,对N位A/D转换器只需要M个时钟脉冲即可完成,一般可用于测量几十到几百微秒的过渡过程的变化,是目前应用最普遍的转换方法。
(5)A/D转换的重要指标(有可能考一些简单的计算)
A、分辨率:反映A/D转换器对输入微小变化响应的能力,通常用数字输出最低位(LSB)所对应的模拟电压的电平值表示。n位A/D转换器能反映1/2n满量程的模拟输入电平。
B、量程:所能转换的模拟输入电压范围,分为单极性和双极性两种类型。
C、转换时间:完成一次A/D转换所需要的时间,其倒数为转换速率。
D、精度:精度与分辨率是两个不同的概念,即使分辨率很高,也可能由于温漂、线性度等原因使其精度不够高。精度有绝对精度和相对精度两种表示方法。通常用数字量的最低有效位LSB的分数值来表示绝对精度,用其模拟电压满量程的百分比来表示相对精度。
例如,满量程10V,10位A/D芯片,若其绝对精度为±1/2LSB,则其最小有效位LSB的量化单位为:10/1024=9.77mv,其绝对精度为9.77mv/2=4.88mv,相对精度为:0.048%。
6、D/A接口基本
(1)D/A转换器使将数字量转换为模拟量。
(2)在集成电路中,通常采用T型网络实现将数字量转换为模拟电流,再由运算放大器将模拟电路转换为模拟电压。进行D/A转换实际上需要上面的两个环节。关于T型电阻解码网络和D/A转换具体原理参考《教程》的159页。
(3)D/A转换器的分类:
A、电压输出型:常作为高速D/A转换器。
B、电流输出型:一般外接运算放大器使用。
C、乘算型:可用作调制器和使输入信号数字化地衰减。
(4)D/A转换器的主要指标:分辨率、建立时间、线性度、转换精度、温度系数。
7、键盘接口
(1)键盘的两种形式:线性键盘和矩阵键盘。
(2)识别键盘上的闭合键通常有两种方法:行扫描法和行反转法。(《教程》163页)
(3)行扫描法是矩阵键盘按键常用的识别方法,此方法分为两步进行:
A、识别键盘哪一列的键被按下:让所有行线均为低电平,查询各列线电平是否为低,如果有列线为低,则说明该列有按键被按下,否则说明无按键按下。
B、如果某列有按键按下,识别键盘是哪一行按下:逐行置低电平,并置其余各行为高电平,查询各列的变化,如果列电平变为低电平,则可确定此行此列交叉点处按键被按下。
8、显示接口
(1)LCD的基本原理是,通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。
(2)LCD的光源提供方式有两种:投射式和反射式。笔记本电脑的LCD显示器为投射式,屏的背后有一个光源,因此外界环境可以不需要光源。一般微控制器上使用的LCD为反射式,需要外界提供电源,靠反射光来工作。电致发光(EL)是液晶屏提供光源的一种方式。
(3)按照液晶驱动方式分类,常见的LCD可以分为三类:扭转向列类(TN)、超扭曲向列型(STN)和薄膜晶体管型(TFT)。
(4)市面上出售的LCD有两种类型:带有驱动电路的LCD显示模块,只要总线方式驱动;没有驱动电路的LCD显示器,使用控制器扫描方式。
(5)通常,LCD控制器工作的时候,通过DMA请求总线,直接通过SDRAM控制器读取SDRAM中指定地址(显示缓冲区)的数据,此数据经过LCD控制器转换成液晶屏扫描数据格式,直接驱动液晶显示器。
(6)VGA接口本质上是一个模拟接口,一般都采用统一的15引脚接口,包括2个NC信号、3根显示器数据总线、5个GND信号、3个RGB色彩分量、1个行同步信号和1个场同步信号。其色彩分量采用的电平标准为EIA定义的RS343标准。
9、触摸屏接口
(1)按工作原理分,触摸屏可以分为:表面声波屏、电容屏、电阻屏和红外屏几种。(具体的工作原理看《教程》173页)
(2)触摸屏的控制采用专业芯片,例如ADS7843。(具体工作原理看《教程》176页)。
10、音频接口
(1)基本原理:麦克风输入的数据经音频编解码器解码完成A/D转换,解码后的音频数据通过音频控制器送入DSP或CPU进行相应的处理,然后数据经音频控制器发送给音频编码器,经编码D/A转换后由扬声器输出。
(2)数字音频的格式有多种,最常用的是下面三种:
A、采用数字音频(PCM):是CD或DVD采用的数据格式。其采样频率为44.1kHz。精度为16位时,PCM音频数据速率为1.41Mb/s;精度为32位时为2.42 Mb/s。一张700MB的CD可以保存大约60分钟的16位PCM数据格式的音乐。
B、MPEG层3音频(MP3):MP3播放器采用的音频格式。立体声MP3数据速率为112kb/s至128kb/s。
C、ATSC数字音频压缩标准(AC3):数字TV、HDTV和电影数字音频编码标准,立体声AC3编码后的数据速率为192kb/s。
(3)IIS是音频数据的编码或解码常用的串行音频数字接口。IIS总线只处理声音数据,其他控制信号等则需要单独传输。IIS使用了3根串行总线:数据线SD、字段选择线WS、时钟信号线SCK。
(4)当接收方和发送方的数据字段宽度不一样时,发送方不考虑接收方的数据字段宽度。如果发送方发送的数据字段小于系统字段宽度,就在低位补0;如果发送方的数据宽度大于接收方的宽度,则超过LSB的部分被截断。字段选择WS用来选择左右声道,WS=0表示选择左声道;WS=1表示选择右声道。此外,WS能让接收设备存储前一个字节,并准备接收下一个字节。
11、串行接口
(1)串行通信是指,使数据一位一位地进行传输而实现的通信。与并行通信相比,串行通信具有传输线少、成本低等优点,特别适合远距离传送;缺点使速度慢。
(2)串行数据传送有3种基本的通信模式:单工、半双工、全双工。
(3)串行通信在信息格式上可以分为2种方式:同步通信和异步通信。
A、异步传输:把每个字符当作独立的信息来传输,并按照一固定且预定的时序传送,但在字符之间却取决于字符与字符的任意时序。异步通信时,字符是一帧一帧传送的,每帧字符的传送靠起始位来同步。一帧数据的各个代码间间隔是固定的,而相邻两帧数据其时间间隔是不固定的。
B、同步传输:同步方式不仅在字符之间是同步的,而且在字符与字符之间的时序仍然是同步的,即同步方式是将许多字符聚集成一字符块后,在每块信息之前要加上1~2个同步字符,字符块之后再加入适当的错误检测数据才传送出去。
(4)异步通信必须遵循3项规定:
A、字符格式:起始位+数据+校验位+停止位(检验位可无),低位先传送。
B、波特率:每秒传送的位数。
C、校验位:奇偶检验。
a、奇校验:要使字符加上校验位有奇数个“1”。
b、偶检验:要使字符加上校验位有偶数个“1”。
(5)RS-232C的电气特性:负逻辑。
A、在TxD和RxD上:逻辑1为-3V~-15V,逻辑0为3V~15V。
B、在TES、CTS、DTR、DCD等控制线上:
信号有效(ON状态)为3V~15V
信号无效(OFF状态)为-3V~-15V
(6)TTL标准与RS-232C标准之间的电平转换利用集成芯片RS232实现。(详见《教程》182页)
(7)RS-422串行通信接口
A、RS-422是一种单机发送、多机接收的单向、平衡传输规范,传输速率可达10Mb/s。
B、RS-422采用差分传输方式,也称做平衡传输,使用一对双绞线。
C、RS-422需要一终端电阻,要求其阻值约等于传输电缆的特性阻抗。
(8)RS-485串行总线接口
A、RS-485是在RS-422的基础上建立的标准,增加了多点、双向通信能力,通信距离可为几十米到上千米。
B、RS-485收发器采用平衡发送和差分接收,具有抑制共模干扰的能力。
C、RS-485需要两个终端电阻。在近距离(300m一下)传输可不需要终端电阻。
12、并行接口
(1)并行接口的数据传输率比串行接口快8倍,标准并行接口的数据传输率为1Mb/s,一般用来连接打印机、扫描仪等,所以又称打印口。
(2)并行接口可以分为SPP(标准并口)、EPP(增强型并口)和ECP(扩展型并口)。
(3)并行总线分为标准和非标准两类。常用的并行标准总线有IEEE 488总线和ANSI SCSI总线。MXI总线是一种高性能非标准的通用多用户并行总线。
13、PCI接口
(1)PCI总线是地址、数据多路复用的高性能32位和64位总线,是微处理器与外围控制部件、外围附加板之间的互连机构。
(2)从数据宽度上看,PCI定义了32位数据总线,且可扩展为64位。从总线速度上分,有33MHz和66MHz两种。
(3)与ISA总线相比,PCI总线的地址总线与数据总线分时复用,支持即插即用、中断共享等功能。
14、USB接口
(1)USB总线的主要特点:
A、使用简单,即插即用。
B、每个USB系统中都有主机,这个USB网络中最多可以连接127个设备。
C、应用范围广,支持多个设备同时操作。
D、低成本的电缆和连接器,使用统一的4引脚插头。
E、较强的纠错能力。
F、较低的协议开销带来了高的总线性能,且适合于低成本外设的开发。
G、支持主机与设备之间的多数据流和多消息流传输,且支持同步和异步传输类型。
H、总线供电,能为设备提供5V/100mA的供电。
(2)USB系统由3部分来描述:USB主机、USB设备和USB互连。
(3)USB总线支持的数据传输率有3种:高速信令位传输率为480Mb/s;全速信令位传输率为12Mb/s;全速信令位传输率为1.5Mb/s。
(4)USB总线电缆有4根线:一对双绞信号线和一对电源线。
(5)USB是一种查询总线,由主控制器启动所有的数据传输。USB上所挂接的外设通过由主机调度的、基于令牌的协议来共享USB带宽。
(6)大部分总线事务涉及3个包的传输:
A、令牌包:指示总线上要执行什么事务,欲寻址的USB设备及数据传送方向。
B、数据包:传输数据或指示它没有数据要传输。
C、握手包:指示传输是否成功。
(7)主机与设备端点之间的USB数据传输模型被称作管道。管道有两种类型:流和消息。消息数据具有USB定义的结构,而数据流没有。
(8)事务调度表允许对某些流管道进行流量控制,在硬件级,通过使用NAK(否认)握手信号来调节数据传输率,以防止缓冲区上溢或下溢产生。
(9)USB设备最大的特点是即插即用。
(10)工作原理:USB设备插入USB端点时,主机都通过默认地址0与设备的端点0进行通信。在这个过程中,主机发出一系列试图得到描述符的标准请求,通过这些请求,主机得到所有感兴趣的设备信息,从而知道了设备的情况以及该如何与设备通信。随后主机通过发出Set Address请求为设备设置一个唯一的地址。以后主机就通过为设备设置好的地址与设备通信,而不再使用默认地址0。
15、SPI接口
(1)SPI是一个同步协议接口,所有的传输都参照一个共同的时钟,这个同步时钟有主机产生,接收数据的外设使用时钟来对串行比特流的接收进行同步化。
(2)在多个设备连接到主机的同一个SPI接口时,主机通过从设备的片选引脚来选择。
(3)SPI主要使用4个信号:主机输出/从机输入(MOSI),主机输入/从机输出(MISO)、串行时钟SCLK和外设片选CS。
(4)主机和外设都包含一个串行移位寄存器,主机通过向它的SPI串行寄存器写入一个字节来发起一次数据传输。寄存器通过MOSI信号线将字节传送给外设,外设也将自己移位寄存器中的内容通过MISO信号线返回给主机,这样,两个移位寄存器中的内容就被交换了。
(5)外设的写操作和读操作时同步完成的,因此SPI成为一个很有效的协议。
(6)如果只是进行写操作,主机只需忽略收到的字节;反过来,如果主机要读取外设的一个字节,就必须发送一个空字节来引发从机的传输。
16、IIC接口
(1)IIC总线是具备总线仲裁和高低速设备同步等功能的高性能多主机总线。
(2)IIC总线上需要两条线:串行数据线SDA和串行时钟线SCL。
(3)总线上的每个器件都有唯一的地址以供识别,而且各器件都可以作为一个发送器或者接收器(由器件的功能决定)。
(4)IIC总线有4种操作模式:主发送、主接收、从发送、从接收。
(5)IIC在传送数据过程中共有3种类型信号:
A、开始信号:SCL为低电平时,SDA由高向低跳变。
B、结束信号:SCL为低电平时,SDA由低向高跳变。
C、应答信号:接收方在收到8位数据后,在第9个脉冲向发送方发出特点的低电平。
(6)主器件发送一个开始信号后,它还会立即送出一个从地址,来通知将与它进行数据通信的从器件。1个字节的地址包括7位地址信息和1位传输方向指示位,如果第7位为0,表示要进行一个写操作,如果为1,表示要进行一个读操作。
(7)SDA线上传输的每个字节长度都是8位,每次传输种字节的数量没有限制的。在开始信号后面的第一个字节是地址域,之后每个传输字节后面都有一个应答位(ACK),传输中串行数据的MSB(字节高位)首先发送。
(8)如果数据接收方无法再接收更多的数据,它可以通过将SCL保持低电平来中断传输,这样可以迫使数据发送方等待,直到SCL被重新释放。这样可以达到高低速设备同步。
(9)IIC总线的工作过程:SDA和SCL都是双向的。空闲的时候,SDA和SCL都是高电平,只有SDA变为低电平,接着SCL再变为低电平,IIC总线的数据传输才开始。SDA线上被传输的每一位在SCL的上升沿被采样,该位必须一直保持有效到SCL再次变为低电平,然后SDA就在SCL再次变为高电平之前传输下一个位。最后,SCL变回高电平,接着SDA也变为高电平,表示数据传输结束。
17、以太网接口
(1)最常用的以太网协议是IEEE802.3标准。
(2)传输编码(06和07年都有考题):曼彻斯特编码和差分曼彻斯特编码。
A、曼彻斯特编码:每位中间有一个电平跳变,从高到底的跳变表示“0”,从低到高的跳变表示为“1”。
B、差分曼彻斯特编码:每位中间有一个电平跳变,利用每个码元开始时有无跳变来表示“0”或“1”,有跳变为“0”,无跳变为“1”。(详见《教程》200页)。
(3)相比之下,曼彻斯特编码编码简单,差分曼彻斯特编码提供更好的噪声抑制性能。
(4)以太网数据传输特点:
A、所有数据位的传输由低位开始,传输的位流时用曼彻斯特编码。
B、以太网是基于冲突检测的总线复用方法,由硬件自动执行。
C、传输的数据长度,目的地址DA+源地址SA+类型字段TYPE+数据段DATA+填充位PAD,最小为60B,最大为1514B。
D、通常以太网卡可以接收3种地址的数据:广播地址、多播地址、自己的地址。
E、任何两个网卡的物理地址都不一样,是世界上唯一的,网卡地址由专门机构分配。
(5)嵌入式以太网接口有两种实现方法:
A、嵌入式处理器+网卡芯片(例如:RTL8019AS、CS8900等)
B、带有以太网接口的处理器。
(6)TCP/IP是一个分层协议,分为:物理层、数据链路层、网络层、传输层和应用层。每层实现一个明确的功能,对应一个或几个传输协议,每层相对于它的下层都作为一个独立的数据包来实现。每层上的协议如下:
A、应用层:BSD套接字。
B、传输层:TCP、UDP。
C、网络层:IP、ARP、ICMP、IGMP
D、数据链路层:IEEE802.3 Ethernet MAC
E、物理层:二进制比特流。
(7)ARP(地址解析协议)
A、网络层用32位的地址来标识不同的主机(即IP地址),而链路层使用48位的物理地址(MAC)来标识不同的以太网或令牌网接口。
B、ARP功能:实现从IP地址到对应物理地址的转换。
(8)ICMP(网络控制报文协议)
A、IP层用它来与其他主机或路由器交换错误报文和其他重要控制信息。
B、ICMP报文是在IP数据包内被传输的。
C、网络诊断工具ping和traceroute其实就是ICMP协议。
(9)IP(网际协议)
A、IP工作在网络层,是TCP/IP协议族中最为核心的协议。
B、所有的TCP、UDP、ICMP及IGMP数据都以IP数据包格式传输。
C、TTL(生存时间字段):指定了IP数据包的生存时间(数据包可以经过的路由器数)。
D、IP提供不可靠、无连接的数据包传送服务,高效、灵活。
a、不可靠:它不能保证数据包能成功到达目的地,任何要求的可靠性必须由上层来提供(如TCP)。如果发生某种错误,IP有一个简单的错误处理算法--丢弃该数据包,然后发送ICMP消息报给信源端。
b、无连接:IP不维护任何关于后续数据包的状态信息。每个数据包的处理都是相互独立的。IP数据包可以不按顺序接收,
(10)TCP(传输控制协议)
TCP协议是一个面向连接的可靠的传输层协议,它为两台主机提供高可靠性的端到端数据通信。
(11)UDP(用户数据包协议)
UDP协议是一种无连接不可靠的传输层协议,它不保证数据包能到达目的地,可靠性有应用层来提供。UDP协议开销少,和TCP相比更适合于应用在低端的嵌入式领域中。
(12)端口:TCP和UDP采用16位端口号来识别上层的用户,即应用层协议,例如FTP服务的TCP端口号都是21,Telnet服务的TCP端口号都是23,TFTP服务的UDP端口号都是69。
18、CAN总线接口
(1)CAN(Control Area Network,控制器局域网)总线是一种多主方式的串行通信总线,是国际上应用最广泛的现场总线之一,最初被用于汽车环境中的电子控制网络。一个CAN总线构成的单一网络中,理想情况下可以挂接任意多个节点,实际应用中节点数据受网络硬件的电气特性所限制。
(2)总线信号使用差分电压传送。两条信号线被称为CAN_H和CAN_L,静态是均为2.5V左右,此时状态表示逻辑1,也可以叫做“隐性”。用CAN_H比CAN_L高表示逻辑0,称为“显性”,此时,通常电压值为CAN_H=3.5V和CAN_L=1.5V。
(3)当“显性”和“隐性”位同时发送的时候,最后总线数值将为“显性”这种特性为CAN总线的仲裁奠定了基础。
(4)CAN总线的一个位时间可以分成4个部分:同步段、传播时间段、相位缓冲段1和相位缓冲段2。(详见《教程》205页)
(5)CAN总线的数据帧有两种格式:标准格式和扩展格式。包括:帧起始、仲裁场、控制场、数据场、CRC场、ACK场和帧结束。
(6)CAN总线硬件接口包括:CAN总线控制器和CAN收发器。CAN控制器主要完成时序逻辑转换等工作,例如菲利普的SJA1000。CAN收发器是CAN总线的物理层芯片,实现TTL电平到CAN总线电平特性的转换,例如TJA1050。