综合5实验报告..

时间:2021-01-15 14:29:17 手机站 来源:网友投稿

江南大学物联网工程学院实验报告

课程名称班级



嵌入式系统

计科 1305



姓名



实验名称

艾克然木



ADC 应用实验 实验日期 2016-5-

学号 1030413511 仪器编号

实验报告要求



1.实验目的



2.实验设备



3.实验内容



4.实验原理



5.实验代码



6.实验结果

一、实验目的

1.了解 A/D 转换的基本原理。

2.掌握 A/D 转换的编程方法。

二、实验设备

PC机、 ARM 仿真器、 ARM 实验箱。

三、实验内容

编写程序,将实验箱上的

A/D 转换器读到的电压值同时以下述两种方式显示出来。具体要求如下:

(一)七段数码管显示:以

mV 为单位,循环显示两路

A/D 转换器采集到的电压值即可(

3 秒切换一次) 。即:

前 3 秒显示第一路 A/D 采集到的电压,例如 P1234;后 3 秒显示第二路

A/D 采集到的电压,例如 U3567;最后

按照上述规律循环显示 (标示符 P 和 U 用以区分具体是哪一路的电压值,

标示符后面是以

mV 为单位的电压值) 。

(二) LCD 屏幕显示:以

mV 为单位,循环显示两路

A/D 转换器采集到的电压值。前

3 秒显示第一路 A/D 采集

到的电压,例如 P1234;后 3 秒显示第二路 A/D 采集到的电压,例如 U3567;最后按照上述规律循环显示。要求在 LCD 屏幕上的某个位置显示自己的姓名和学号。

四、实验原理

随着电子技术的迅速发展以及计算机在自动检测和自动控制系统中的广泛应用,利用数

字系统处理模拟信号的

情况变得更加普遍。数字电子计算机所处理和传送的都是不连续的数

字信号,而实际中遇到的大都是连续变化

的模拟量,模拟量经传感器转换成电信号的模拟量

后,需要经过经模

/数转换变成数字信号才可输入到数字系统

中进行处理和控制,因而作为

把模拟电量转换成数字量输出的接口电路

-A/D

转换器是现实世界中模拟信号向

数字信号的 桥梁,是电子技术发展的关键和瓶所在。

当前,为了适应计算机、通讯和多媒体技术的飞速发展以及高新技术领域的数字化进程

不断加快, ADC 在

工艺、结构、性能上都有了很大的变化,正在朝着低功耗、高速、高分

辨率的方向发展。

4.1 ADC 的主要类型

ADC ,有传统的并行、逐次逼近型、积分型

ADC ,也有近年来新发展起来的

目前,世界上有多种类型的

∑ - 型和流水线型

ADC ,多种类型的

ADC

各有其优缺点并能满足不同的具体应用要求。低功耗、

高速、高分

辨率是新型的

ADC

的发展方向,同时

ADC

的这一发展方向将适应现代数字电子技术的发展。

任何 ADC

都包括三个基本功能:抽样、量化和编码。抽样过程将模拟信号在时间上离散化,使之成为抽

样信号; 量化将抽样信号的幅度离散化使之成为数字信号;

编码则将数字信号弹簧表示成数字系统所能接受的形

式。如何实现这三个功能就决定了

ADC

的形式和性能。同时, ADC

的分辨率越高,需要的转换时间就越长,

转换速度就越低,故

ADC 的分辨率和转换速率两者总是相互制约的。因而在发展高分辨率

ADC 的同时要兼顾

高速,在发展高速 ADC 的同时要兼顾高分辨率,在此基础上还要考虑功耗、体积、便捷性、多功能、与计算机

及通讯网络的兼容性以及应用领域的特殊要求等问题,

这样也使得

ADC 的结构和分类错综复杂。

  目前,ADC 集

成电路主要有以下几种类型。

4.1.1 并行比较

ADC

并行比较

ADC

是现今速度最快的模

/数转换器,采样速率在

1GSPS 以上,通常称为“闪烁式”

ADC 。它

教师评价 优 良 中 及格 不及格 教师签名 日期

- 1 -

江南大学物联网工程学院实验报告

课程名称

嵌入式系统

实验名称

ADC 应用实验

实验日期2016-5-

班级

计科 1305

姓名

艾克然木

学号

1030413511

仪器编号

实验报告要求

1.实验目的

2.实验设备

3.实验内容

4.实验原理

5.实验代码

6.实验结果

由电阻分压器、比较器、缓冲器及编码器四种分组成。这种结构的

ADC 所有位的转换同时完成,其转换时间

主取决于比较器的开关速度、

编码器的传输时间延迟等。

增加输出代码对转换时间的影响较小,

但随着分辨率的

提高,需要高密度的模拟设计以实现转换所必需的数量很大的精密分压电阻和比较器电路。输出数字增加一位,

精密电阻数量就要增加一倍,比较器也近似增加一倍。例如,

n 位的 ADC 需要 2n

个精密电阻和

2(n-1)个并联

比较器。分压电阻网络彼此相差

1 个最低有效位 VR/2n 。

优点:模 /数转换速度最高。

缺点:分辨率不高,功耗大,成本高。

闪烁式 ADC

的分辨率受管芯尺寸、过大的输入电容、大量比较器所产生的功率消耗等

限制。结果重复的

并联比较器如果精度不匹配,还会造成静态误差,如会使输入失调电压增

大。同一类型的

ADC

由于比较器的

亚稳压、编码气泡,还会产生离散的、不精确的输出,即所谓的“火花码”

。这类 ADC

的优点是模 /数转换速度

最高,缺点是分辨率不高,功耗大,成本高。

现代发展的高速

ADC

电路结构主要采用这种全并行的

ADC ,但由于功率和体积的限制,要制造高分辨率

闪烁式 ADC 是不现实的。由两个较低分辨率的闪烁式

ADC 构成较高分辨率的半闪烁式

ADC 或分级型 ADC 是

当今世界制造高速

ADC 的主要方式。其转换过程分为两步:第一步是粗化量化。先用并行方式进行高

4 位的转

换,作为转换后的高

4 位输出,同时再把数字输出进行

D/A 转换,恢复成模拟电压。第二步是进一步细化量化。

把原输入电压与 D/A

转换器输出的模

拟电压相减,其差值再进行低

4 全的 A/D 转换。然后将上述两级

A/D

转换器的数字输出并联后作为总的输出。

这样,在转换速度上作出了一点牺牲,

但解决了分辨率提高和元件数目

刷增的矛盾。现代高速

ADC 与普通 ADC

相比的主要特点是:单电源性能;将基准电源、采样保持器和增益放

大器集成在一块芯片上,集成度高;采用标准的

0.6μ m 的 CMOS 工艺开发各种价格的低功耗

ADC 。

4.1.2

逐次逼近型

逐次逼近型 ADC

是应用非常广泛的模

/数转换方法,它由比较器、

D/A

转换器、比较寄存器

SAR 、时钟发

生器以及控制逻辑电路组成,将采样输入信号与已知电压不断进行比较,然后转换成二进制数。实现原理:首先

将 DAC 的最高有效位 MSB 保存到 SAR ,接着将该值对应的电压与输入电压进行比较。

比较器输出被反馈到

DAC ,

并在一次比较前对其进行修正。在逻辑控制电路和时钟驱动下,

SAR 不断进行比较和移位操作,直到完成

LSB

的转换,此时所产生的

DAC 输出逼近输入电压的± 1/2LSB 。当每一位都确定后,转换

结果被锁存到 SAR 并作

为 ADC

输出。这一类型

ADC

的优点:高速,采样速率可达

1MSPS;与其它 ADC 相比,功耗相当低;在分

辨率低于

12 位时,价格较低。缺点:在高于

14 位分辨率情况下,价格较高;传感器产生的信号在进行模

/ 数转

换之前需要进行调理,包括增益级和滤波,这样会明显增加成本。

优点:分辨率低于

12 位时,价格较低,采样速率可达

1MSPS;与其它 ADC 相比,功耗相当低。缺点:在

高于 14

位分辨率情况下, 价格较高; 传感器产生的信号在进行模 / 数转换之前需要进行调理,

包括增益级和滤波,

这样会明显增加成本。

4.1.3

积分型 ADC

积分型 ADC 又称为双斜率或多斜率

ADC ,是应用比较广泛的一类转换器。

它的基本原理是通过两次积分将

输入的模拟电压转换成与其平均值成正比的时间间隔。

与此同时, 在此时间间隔内利用计数器对时钟脉冲进行计

数,从而实现 A/D

转换。其工作分为两个阶段,第一阶段为采样期;第二阶段为比较期。通过两次积分和计数

器的计数可以得到模拟信号的数字值

D=2nV1/VR ,其中 n 为计数器的位数,

V1 为输入电压在固定

时间间隔内

的平均值。

积分型 ADC 两次积分的时间都是利用同一个时钟发生器和计数器来确定,

因此所得到的

D 表达式与时钟频

率无关,其转换精度只取决于参考电压

VR 。此外,由于输入端采用了积分器,所以对交流噪声的干扰有很强的

抑制能力。

 若把积分器定时积分的时间取为工频信号的整数倍,

可把由工频噪声引起的误差减小到最小,

从而有

效地抑制电网的工频干扰。这类

ADC 主要应用于低速、精密测量等领域,如数字电压表。其优点是:分辨率高,

可达 22 位;功耗低、成本低。缺点是:转换速率低,转换速率在

12 位时为

100~ 300SPS。

优点:分辨率高, 可达

22 位;功耗低、 成本低。

  缺点:转换速率低, 转换速率在

12 位时为

100~300SPS。

4.1.4

压频变换型

ADC

前面所讲到的并行比较

ADC 和逐次逼近型

ADC 均属于直接转换

ADC ,而积分型和下面所讲到的压频变换

型 ADC 则属于间接 ADC 。压频变换型 ADC 是先将输入模拟信号的电压转换成频率与其成正比的脉冲信号,然后在固定的时间间隔内对此脉冲信号进行计数,计数结果即为正比于输入模拟电压信号的数字量。从理论上讲,

教师评价 优 良 中 及格 不及格 教师签名 日期

- 2 -

江南大学物联网工程学院实验报告

课程名称班级



嵌入式系统

计科 1305



姓名



实验名称

艾克然木



ADC 应用实验 实验日期 2016-5-

学号 1030413511 仪器编号

实验报告要求



1.实验目的



2.实验设备



3.实验内容



4.实验原理



5.实验代码



6.实验结果

这种 ADC 的分辨率可以无限 增加,只要采用时间长到满足输出频率分辨率要求的累积脉冲个数的宽度即可。其优点是: 精度高、价格较低、 功耗较低。

 缺点是: 类似于积分型 ADC ,其转换速率受到限制, 12 位 时为300SPS。



100~

4.1.5 ∑ -





ADC

与一般的 ADC 不同,∑ - 型 ADC 不是直接根据抽样第一个样值的大小进行量化编码,而根据前一量值

与后一量值的差值即所谓的增量的大小来进行量化编码。 从某种意义讲, 它是根据信号波形的包络线进行量化编

码的。∑ - 型 ADC 由两部分组成,第一部分为模拟∑ - 调制器,第二部分为数字抽取滤波器,

∑ - 调制器以极高的抽样频率对输入模拟信号进行抽样,并对两个抽样之间的差值进行低位量化,从而得

到用低位数码表示的数字信号即∑ - 码;然后将这种∑ - 码送给第二部分的数字抽取滤波器进行抽取滤波,

从而得到高分辨率的线性脉冲编码调制的数字信号。因此抽取滤波器实际上相当于一个码型变换器。由于∑ --△

具有极高的抽样速率,通常比奈奎斯特抽样频率高出许多倍,因此∑ --△转换器又称为过抽样 A/D 转换器。这种

类型的 ADC 采用了极低位的量化器,从而避免了制造高位转换器和高精度电阻网络的困难;另一方面,因为

它采用了∑ -- △调制技术和数字抽取滤波,可以获得极高的分辨率;同时由于采用了低位量化输出的采用高分辨

率的码,不会对抽样值幅度变化敏感,而且由于码位低,抽样与量化编码可以同时完成,几乎不花时间,因此不

需要采样保持电路,这就使得采样系统的构成大为简化。这种增量调制型 ADC 实际上是以高速抽样率来换取高

位量化,即以速度来换精度。近年来,采用高分辨率的∑ --△型 ADC 颇为流行,它的一个突 出优点是在一片混

合信号 CMOS 大规模集成电路上实现了 ADC 与数字信号处理技术的结合。 这一技术的其它优点: 分辨率高达 24

位;比积分型及压频变换型 ADC 的转换速率高;采用混合信号 CMOS 工艺,可实现低价格、高分辨率的数据

采集和数字信号处理;由于采 用高倍频过采样技术,降低了对传感器信号进行滤波的要求,实际上取消了信号

调理。缺点:当高速转换时,需要高阶调制器;在转换速率相同的条件下,比积分型和逐次逼近型 ADC 的功耗

高。

目前,∑ --△型 ADC 分为四类:( 1)高速类 ADC;( 2)调制解调器类 ADC;(3)编码器类 ADC;( 4)

传感器低频测量 ADC 。

优点:分辨率较高,高达 24 位;转换速率高,高于积分型和压频变换型 ADC;价格低; 内部利用高倍

频过采样技术,实现了数字滤波,降低了对传感器信号进行滤波的要求。

缺点:高速∑ -△型 ADC 的价格较高; 在转换速率相同的条件下, 比积分型和逐次逼近 型 ADC 的功耗高。

4.1.6 流水线型 ADC

流水线结构 ADC ,又称为子区式 ADC ,它是一种高效和强大的模数转换器。它能够提供高速、高分辨率

的模数转换,并且具有令人满意的低功率消耗和很小的芯片尺寸;经过合 理的设计,还可以提供优异的动态特

性。

流水线型 ADC 由若干级级联电路组成,每一级包括一个采样 /保持放大器、一个低分辨率的 ADC 和 DAC

以及一个求和电路, 其中求和电路还包括可提供增益的级间放大器。 快速精确的 n 位转换器分成两段以上的子区

(流水线)来完成。首级电路的采样 /保持器对输入信号取样后先由一个 m 位分辨率粗 A/D 转换器对输入进行

量化,接着用一个至少 n 位精度的乘积型数模转换器( MDAC )产生一个对应于量化结果的模 /拟电平并送至求

和电路, 求和电路从输入信号中扣除此模拟电平。 并将差值精确放大某一固定增益后关交下一级电路 处理。

 经

过各级这样的处理后, 最后由一个较高精度的 K 位细 A/D 转换器对残余信号进行 转换。将上述各级粗、 细 A/D

的输出组合起来即构成高精度的 n 位输出。

优点:有良好的线性和低失调;可以同时对多个采样进行处理,有较高的信号处理速度, 典型的为

Tconv<100ns;低功率;高精度;高分辨率;可以简化电路。

缺点:基准电路和偏置结构过于复杂;输入信号需要经过特殊处理,以便穿过数级电路造成流水延迟;对锁存定时的要求严格;对电路工艺要求很高,电路板上设计得不合理会影响增益的线性、失调及其它参数。

4.2 AD 转换器的主要技术指标

1)分辩率 (Resolution) 指数字量变化一个最小量时模拟信号的变化量,定义为满刻度与



2n



的比值。分辩率

又称精度,通常以数字信号的位数来表示。

2)转换速率 (Conversion Rate) 是指完成一次从模拟转换到数字的 AD 转换所需的时间的倒数。积分型 AD 的

转换时间是毫秒级属低速 AD ,逐次比较型 AD 是微秒级属中速 AD , 全并行 /串并行型 AD 可达到纳秒级。

 采样

教师评价



优 良





及格



不及格



教师签名



日期

- 3 -

江南大学物联网工程学院实验报告

课程名称班级



嵌入式系统

计科 1305



姓名



实验名称

艾克然木



ADC 应用实验 实验日期 2016-5-

学号 1030413511 仪器编号

实验报告要求



1.实验目的



2.实验设备



3.实验内容



4.实验原理



5.实验代码



6.实验结果

时间则是另外一个概念,是指两次转换的间隔。为了保证转换的正确完成,采样速率 (Sample Rate)必须小于或等

于转换速率。因此有人习惯上将转换速率在数值上等同于采样速率也是可以接受的。常用单位是 ksps 和 Msps,

表示每秒采样千 /百万次( kilo / Million Samples per Second )。

3)量化误差 (Quantizing Error) 由于 AD 的有限分辩率而引起的误差,即有限分辩率 AD 的阶梯状转移特性

曲线与无限分辩率 AD (理想 AD )的转移特性曲线(直线)之间的最大偏差。通常是 1 个或半个最小数字量的

模拟变化量,表示为 1LSB 、 1/2LSB 。

4)偏移误差 (Offset Error) 输入信号为零时输出信号不为零的值,可外接电位器调至最小。

5)满刻度误差 (Full Scale Error) 满度输出时对应的输入信号与理想输入信号值之差。

6)线性度 (Linearity) 实际转换器的转移函数与理想直线的最大偏移,不包括以上三种 误差。

其他指标还有:绝对精度 (Absolute Accuracy) ,相对精度 (Relative Accuracy) ,微分非线 性,单调性和无错

码,总谐波失真( Total Harmonic Distotortion 缩写 THD )和积分非线性。

五、实验代码

7.1 主程序

#include "def.h"

#include "2440addr.h"

#include "2440lib.h"

#include "mmu.h"

#include "ADC.h"

#include "LED7.h"

#include "LCD.h"

#define CONTR (1<<5)

void paintNum(int x,signed char num){

switch(num){

case 0:

Paint_Bmp(x,0,64,64,char_0);

break;

case 1:

Paint_Bmp(x,0,64,64,char_1);

break;

case 2:

Paint_Bmp(x,0,64,64,char_2);

break;

case 3:

Paint_Bmp(x,0,64,64,char_3);

break;

case 4:

Paint_Bmp(x,0,64,64,char_4);

break;

case 5:

Paint_Bmp(x,0,64,64,char_5);

break;

case 6:

Paint_Bmp(x,0,64,64,char_6);

break;

case 7:

Paint_Bmp(x,0,64,64,char_7);

break;

case 8:

Paint_Bmp(x,0,64,64,char_8);

break;

case 9:

Paint_Bmp(x,0,64,64,char_9);

break;

教师评价 优 良 中 及格 不及格 教师签名 日期

- 4 -

江南大学物联网工程学院实验报告

课程名称班级



嵌入式系统

计科 1305



姓名



实验名称

艾克然木



ADC 应用实验 实验日期 2016-5-

学号 1030413511 仪器编号

实验报告要求



1.实验目的



2.实验设备



3.实验内容



4.实验原理



5.实验代码



6.实验结果

case 10:

Paint_Bmp(x,0,64,64,char_off);

break;

}

}

void Main()

{

int i,v,ch;

signed char a,b,c,d;

Port_Init();

Isr_Init();

ChangeClockDivider(16,12);

ChangeMPllValue(92, 1, 1);

ChangeUPllValue(56,2,2);

CalCPUBusClk();

Uart_Init( 0,115200 );

Uart_Select( 0 );

MMU_Init();

rGPJDAT |=CONTR;

AdcTest();

LcdInit();

Lcd_ClearScr(0x0000000);

ch=0;

while(1){

for(i=0;i<3;i++){

showOff();

}

v=readAD(ch);

Uart_Printf("%d %d\n",ch,v);

a=v/1000;

b=v/100%10;

c=v/10%10;

d=v%10;

showNum(d);

if(c==0&&b==0&&a==0){

for(i=0;i<3;i++){

showOff();

}

}else{

showNum(c);

if(b==0&&a==0){

for(i=0;i<2;i++){

showOff();

}

}else{

showNum(b);

if(a==0){

showOff();

}else{

showNum(a);

}

}

}

if(ch==0){

showP();

Paint_Bmp(0,0,64,64,char_P);

}else{

showU();

Paint_Bmp(0,0,64,64,char_U);

}

教师评价 优 良 中 及格 不及格 教师签名 日期

- 5 -

江南大学物联网工程学院实验报告

课程名称班级



嵌入式系统

计科 1305



姓名



实验名称

艾克然木



ADC 应用实验 实验日期 2016-5-

学号 1030413511 仪器编号

实验报告要求



1.实验目的



2.实验设备



3.实验内容



4.实验原理



5.实验代码



6.实验结果

if(a==0&&b==0&&c==0){

paintNum(64,d);

paintNum(64+64,10);

paintNum(64+64+64,10);

paintNum(64+64+64+64,10);

}else{

if(a==0&&b==0){

paintNum(64,c);

paintNum(64+64,d);

paintNum(64+64+64,10);

paintNum(64+64+64+64,10);

}else{

if(a==0){

paintNum(64,b);

paintNum(64+64,c);

paintNum(64+64+64,d);

paintNum(64+64+64+64,10);

}else{

paintNum(64,a);

paintNum(64+64,b);

paintNum(64+64+64,c);

paintNum(64+64+64+64,d);

}

}

}

Paint_Bmp(160,80,320,240,char_name);

Delay(3000);

ch=1-ch;

}

}

7.2ADC 部分程序

#include "def.h"

#include "option.h"

#include "2440addr.h"

#include "2440lib.h"

#include "2440slib.h"

const unsigned char ledbuf[10]={ 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

#define LED7_SPICLK (1<<4)

#define LED7_SPICLK_INIT()

#define LED7_SPICLK_LOW()

#define LED7_SPICLK_HIGH()

#define LED7_SPIMO (1<<1)

#define LED7_SPIMO_INIT()

#define LED7_SPIMO_LOW()

#define LED7_SPIMO_HIGH()



//GPJ4

rGPJCON = (rGPJCON & (~(3<<8))) | (1<<8)

rGPJDAT &= ~LED7_SPICLK

rGPJDAT |= LED7_SPICLK

//GPJ1

rGPJCON = (rGPJCON & (~(3<<2))) | (1<<2)

rGPJDAT &= ~LED7_SPIMO

rGPJDAT |= LED7_SPIMO

void ShowChar(signed char ch)

{

unsigned int i,temp;

LED7_SPICLK_INIT();

LED7_SPIMO_INIT();

教师评价 优 良 中 及格 不及格 教师签名 日期

- 6 -

江南大学物联网工程学院实验报告

课程名称班级



嵌入式系统

计科 1305



姓名



实验名称

艾克然木



ADC 应用实验 实验日期 2016-5-

学号 1030413511 仪器编号

实验报告要求



1.实验目的



2.实验设备



3.实验内容



4.实验原理



5.实验代码



6.实验结果

for( i=0;i<8;i++ )

{

LED7_SPICLK_LOW();

temp = ch & (0x80>>i); // 从低位开始发 0x01<<i ,从高位开始发是 0x80>>i

if( 0 == temp )

LED7_SPIMO_LOW();//

else

LED7_SPIMO_HIGH();//

LED7_SPICLK_HIGH();

}

}

void showNum(signed char num){

ShowChar(ledbuf[num]);

}

void showOff(){

ShowChar(0x00);

}

void showP(){

ShowChar(0x73);

}

void showU(){

ShowChar(0x3e);

}

六、实验结果

详见附带视频文件 综合实验 5 实验结果

教师评价 优 良 中 及格 不及格 教师签名 日期

- 7 -

推荐访问:实验报告 实验 报告 综合 综合5实验报告

版权声明 :以上文章中选用的图片文字均来源于网络或用户投稿 ,如果有侵权请立即联系我们 , 我们立即删除 。