一、引言
嵌入式系统的硬件除了核心的微处理器之外就是外围器件和接口。接口技术在嵌入式系统设计处于如此重要的位置,是嵌入式系统设计师硬件部分的重要考试范围。目前嵌入式系统中的接口五花八门,每个接口都可以写成一本厚厚的书。面对内容如此之多,范围如此之广的考试部分,应该怎么样去复习呢?我的指导思想是,把握好每种接口技术的最基本概念,理解透每个接口的最基本工作原理,从历年考题中提炼出常考知识点,重点进行复习,这样足以应付考试了。是不是这样就要通过真题考试来验证了,让我们期待吧。
二、复习笔记
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 的特点:
应用程序可以直接在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 能让接收设备存储前一个字节,并准备接收下一个字节。