Transcript Document
Up-tech-2410s实验系统教案 2 A/D实验 电信学院 嵌入式技术与应用专业 1 提 纲 1 实验目的 2 实验内容 3 预备知识 4 实验设备 5 基础知识 6 实验思考 嵌入式技术与应用专业教学资源库 实验目的 1.熟悉ARM本身自带的八路十位A/D控制器及相应 寄存器。 2.编程实现ARM系统的A/D功能。 3.掌握带有A/D的CPU编程实现A/D功能的主要方 法。 嵌入式技术与应用专业教学资源库 实验内容 学习A/D接口原理,了解实现A/D系统对于系统 的软件和硬件要求。阅读ARM芯片文档,掌握 ARM的A/D相关寄存器的功能,熟悉ARM系统 硬件的A/D相关接口。利用外部模拟信号编程实 现ARM循环采集全部前3路通道,并且在超级终 端上显示。 嵌入式技术与应用专业教学资源库 预备知识 了解A/D采样的原理; 了解采样频率的设置; 嵌入式技术与应用专业教学资源库 实验设备 硬件:ARM嵌入式开发平台、PC机Pentium100以 上、用于ARM920T的JTAG仿真器、模拟电压信 号源。 软件:PC机操作系统Win2000或WinXP、ARM ADS1.2集成开发环境、仿真器驱动程序、超级 终端通讯程序。 嵌入式技术与应用专业教学资源库 模/数转换 我们经常遇到的物理参数,如电流、电压、温度、压力、 速度……电量或非电量都是模拟量。 模拟量的大小是连续分布的,且经常也是时间上的连续 函数。 要将模拟量转换成数字信号需经 采样——>量化——>编码 三个基本过程(数字化过程) 嵌入式技术与应用专业教学资源库 采样 按采样定理对模拟信号进行 等时间间隔采样,将得到的 0.5V Q 格 7Q U3 6Q 一系列时域上的样值去代替 5Q u=f(t),即用u0、u1、…un 4Q U4 U7 U5 U2 U6 U=f(t) U1 3Q 代替u=f(t)。 2Q 这些样值在时间上是离散的 值,但在幅度上仍然是连续 U0 1Q 0 1T 2T 模拟量。 嵌入式技术与应用专业教学资源库 3T 4T 5T 6T t 量化 在幅值上再用离散值来表示。方法是用一个量化因子Q去 度量;u0、u1、…,便得到整量化的数字量。 u0=2.4Q 2Q 010 u1=4.0Q 4Q 100 u2=5.2Q 5Q 101 u3=5.8Q 5Q 101 嵌入式技术与应用专业教学资源库 编码 将整量化后的数字量进行编码,以便读入和识别; 编码仅是对数字量的一种处理方法。 例如:Q=0.5V/格,设用三位(二进编码) 嵌入式技术与应用专业教学资源库 分类 按被转换的模拟量类型可分为: 时间/数字 电压/数字 机械变量/数字 电压/数字转换器: 按转换方式可分为:直接转换、间接转换。 按输出方式分可分为:并行、串行、串并行。 按转换原理可分为:计数式、比较式。 按转换速度可分为:低速、中速、高速。 按转换精度和分辨率可分为:3位、4位、8位、10位、12位、14位、16位等。 嵌入式技术与应用专业教学资源库 A/D转换的重要指标 1)分辨率(Resolution): 分辨率反映A/D转换器对输入微小变化响应的能 力,通常用数字输出最低位(LSB)所对应的模拟输入 的电平值表示。n位A/D能反应1/2n满量程的模拟输 入电平。由于分辨率直接与转换器的位数有关,所 以一般也可简单地用数字量的位数来表示分辨率, 即n位二进制数,最低位所具有的权值,就是它的分 辨率。 值得注意的是,分辨率与精度是两个不同的概 念,不要把两者相混淆。即使分辨率很高,也可能 由于温度漂移、线性度等原因,而使其精度不够高。 2)精度(Accuracy) 精度有绝对精度(Absolute Accuracy)和相对精 度(Relative Accuracy)两种表示方法。 嵌入式技术与应用专业教学资源库 A/D转换的重要指标 1) 绝对误差 在一个转换器中,对应于一个数字量的实际模拟输入电 压和理想的模拟输入电压之差并非是一个常数。我们把它 们之间的差的最大值,定义为“绝对误差”。通常以数字 量的最小有效位(LSB)的分数值来表示绝对误差,例如: 1LSB等。绝对误差包括量化误差和其它所有误差。 2) 相对误差 是指整个转换范围内,任一数字量所对应的模拟输入量 的实际值与理论值之差,用模拟电压满量程的百分比表示。 例如,满量程为10V,10位A/D芯片,若其绝对精度为 1/2LSB,则其最小有效位的量化单位:9.77mV,其绝对精 度为=4.88mV,其相对精度为0.048%。 嵌入式技术与应用专业教学资源库 A/D转换的重要指标 3)转换时间(Conversion Time) 转换时间是指完成一次A/D转换所需的时间,即由发出 启动转换命令信号到转换结束信号开始有效的时间间隔。 转换时间的倒数称为转换速率。例如AD570的转换时间 为25us,其转换速率为40KHz。 4)电源灵敏度(power supply sensitivity) 电源灵敏度是指A/D转换芯片的供电电源的电压发生变 化时,产生的转换误差。一般用电源电压变化1%时相当 的模拟量变化的百分数来表示。 5)量程 量程是指所能转换的模拟输入电压范围,分单极性、双 极性两种类型。 例如,单极性 量程为0~+5V,0~+10V,0~+20V;双 极性 量程为-5~+5V,-10~+10V。 嵌入式技术与应用专业教学资源库 A/D转换的重要指标 6)输出逻辑电平 多数A/D转换器的输出逻辑电平与TTL电平兼容。 在考虑数字量输出与微处理的数据总线接口时, 应注意是否要三态逻辑输出,是否要对数据进 行锁存等。 7)工作温度范围 由于温度会对比较器、运算放大器、电阻网络 等产生影响,故只在一定的温度范围内才能保 证额定精度指标。一般A/D转换器的工作温度 范围为(0~700C),军用品的工作温度范围为 (-55~+1250C)。 嵌入式技术与应用专业教学资源库 S3C2410 AD转换器 ARMS3C2410X芯片自带一个8路10位A/D转换 器,最大转换率为500K,非线性度为正负1.5位, 其转换时间可以通过下式计算:如果A/D使用的 时钟为50MHz,预定标器的值为49,那么: A/D转换频率=50MHz(49+1)=1MHz 转换时间=1/(1MHz/5时钟周期)=1/200kHz=5us 注意:因为A/D转换器的最高时钟频率是 2.5MHz,所以转换速率可达500kSPS. 嵌入式技术与应用专业教学资源库 A/D转换和触摸屏接口功能框图 嵌入式技术与应用专业教学资源库 编程注意事项 1. A/D转换的数据可以通过中断或查询的方式来 访问,如果是用中断方式,全部的转换时间(从 A/D转换的开始到数据读出)要更长,因为中断服 务程序返回和数据的访问的原因。如果是查询方 式则要检测ADCCON[15](转换结束标志位)来确 定从ADCDAT寄存器读取的数据是否是最新的转换 数据。 2. A/D转换开始的另一种方式是将ADCCON[1]置 为1,这时只要有读转换数据的信号,A/D转换就 会同步开始。 与AD相关的寄存器主要是如下两个: 嵌入式技术与应用专业教学资源库 A/D控制寄存器 嵌入式技术与应用专业教学资源库 表3-28 A/D转换数据寄存器 Register Address R/W Description Reset Value ADCDAT0 0x5800000C R ADC conversion data register - 嵌入式技术与应用专业教学资源库 A/D转换数据寄存器 嵌入式技术与应用专业教学资源库 实验说明 设置A/D采样的时钟频率 A/D采样频率取决于ADCCON寄存器的PRSCVL的值。 PRSCVL的值可以采用下面公式计算: PRSCVL = PCLK/freq -1; 嵌入式技术与应用专业教学资源库 启动采样 将ADCCON寄存器的BIT0置1可以启动转换,当启动转 换后,该位会被自动清除。同时启动转换时还需要指定转 换通道。 下面代码启动A/D转换: rADCCON|=0x1; //start ADC 嵌入式技术与应用专业教学资源库 获取转换结果 当A/D转换结束后,我们可以读取ADCDAT寄存器的内容。 下面代码等待A/D转换,完毕后读取数据。 while(rADCCON & 0x1);//检查Enable start位是否为低 while(!(rADCCON & 0x8000));//检查ECFLG位是否为高 嵌入式技术与应用专业教学资源库 实验思考 1.逐次逼近型的A/D转换器原理是什么? 2.A/D转换的重要指标包括哪些? 3.ARM的A/D功能的相关寄存器有哪几个,对应的地 址是什么? 4.如何启动ARM开始转换A/D,有几种方式?转换开 始时ARM是如何知道转换哪路通道的?如何判断转 换结束? 嵌入式技术与应用专业教学资源库