A / D转换实验

我要开发同款
小新努力不秃头2022年09月25日
152阅读

作品详情

一.实验要求 编写程序,通过单片机控制AD0809,对外部模拟信号进行采集,并简单显示。二.实验目的 ⒈ 掌握AD0809并行A/D转换器的使用方法。⒉ 掌握AD0809并行A/D转换器的编程方法。三.实验电路及连线四.实验说明ADC0808和ADC0809是典型的逐次逼近式A/D转换器,除精度略有差别外(ADC0808的精度是8位,ADC0809的精度是7位),其余各方面完全相同。主要技术指标和特性如下:(1)主要技术指标和特性• 分辨率:8位;• 总的不可调误差:ADC0808为±(1/2)LSB,ADC0809为±1LSB;• 模拟量输入通道:8路;•转换时间:取决于芯片的时钟频率,当CLK=500kHz是,转换时间为128μs;•单一电源:+5V;• 模拟输入电压范围:单极性0~+5V,双极性±5V或±10V;• 具有可控三态输出锁存器;• 启动转换控制为脉冲式(正脉冲)。上升沿使内部所有寄存器清“0”,下降沿使A/D转换开始;• 输出与TTL兼容;• 使用时不需要进行零点和满刻度调节。 如图所示,ADC0809由两部分组成。第一部分为8通道多路模拟开关以及相应的通道地址锁存与译码电路,可以实现8路模拟信号的分时采集,其8路模拟输入通道的选择如表11-2所示。三个地址信号ADDA、ADDB和ADDC决定是哪一路模拟信号被选中,并送到内部A/D转换器中进行转换。 第二部分为一个逐次逼近式A/D转换器,它由比较器、控制逻辑、三态输出缓冲器、逐位逼近寄存器SAR以及树状开关和256R梯型电阻网络组成。其中由树状开关和256R梯型电阻网络构成D/A转换器。 逐次逼近式的转换原理是“逐位比较”,其过程类似于用砝码在天平上称物体质量。控制逻辑用来控制逐位逼近寄存器从高位至低位逐位取“1”,然后将此数字量经D/A转换后输出一个模拟电压Vs,Vs与输入模拟量Vx在比较器中进行比较,当Vs>Vx时,该位Di=0,若Vs≤Vx时,该位Di=1。因此从D7至D0逐位逼近并比较8次,逐位逼近寄存器中的数字量,即为与模拟量Vx所对应的数字量。此数字量送入输出锁存缓冲器,并同时发出转换结束信号EOC(高电平有效,经反相器后,可向CPU发中断请求),表示一次转换结束。此时,CPU发出一个输出允许命令OE(高电平有效)即可读取数据。(2)引脚功能ADC0809的各引脚功能说明如下。IN0~IN7:8路模拟量的输入端。D0~D7:A/D转换后的数据输出端,为三态可控输出,可直接与计算机数据线相连。注意:对于ADC0809,D0为最低有效位,D7为最高有效位,而ADC0808中正好相反,即D7为最低有效位,D0为最高有效位。ADDA、ADDB、ADDC:模拟通道地址选择端,ADDC为最高位,ADDA为最低位。START:转换启动信号。为了启动A/D转换,应在此引脚加一个正脉冲,在脉冲的上升沿时将内部寄存器全部清0,下降沿时开始A/D转换过程。CLK:实时时钟,最高允许值为640kHz,可通过外接电路提供频率信号,也可用单片机ALE引脚信号分频获得。EOC:转换结束信号。转换开始时,EOC信号变为低电平;当转换结束后,转换后的数据可以读出时,EOC变为高电平。此信号可用作A/D转换是否完成的查询信号或向CPU请求中断的信号。OE:输出允许信号或称为A/D数据读信号,高电平有效。OE可与系统读选通信号RD相连。当计算机发出此信号时,ADC的三态门被打开,此时可通过数据线读出转换结果。由于OE与RD的有效电平不同,因此,使用中要注意加非门。 ALE:地址锁存允许,高电平有效。高电平时把由ADDC、ADDB、ADDA组成的地址信号送入地址锁存器,并经译码后得到地址输出,以选择相应的模拟输入通道。 VREF(+),VREF(-):正、负参考电压输入端,用于提供片内DAC电阻网络的基准电压,其值决定了输入模拟量的量程范围。在单极性输入时, VREF(+)接+5V,VREF(-)接地,但在双极性输入时, VREF(+)和VREF(-)分别接正、负极性的参考电压。Vcc,GND:电源电压Vcc接+5V,GND为地。 Proteus中有ADC0808的仿真模块,但没有ADC0809的仿真模块,因此,用ADC0808可代替ADC0809,二者驱动程序没有区别。在仿真时,ADC0808的CLK可以接一个500kHz的时钟信号(实际电路中可以由单片机的ALE经过分频供给ADC0808或ADC0809),另外注意D0~D7应与系统数据总线正确连接。表11-2 8路模拟输入通道寻址表 ADDC ADDB ADDA 输入通道 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 1 0 1 IN5 1 1 0 IN6 1 1 1 IN7 五、实验步骤1.观察电路原理图,确定AD0809的控制方式。2.采用基于时序的编程方式,对通道3连接的模拟量进行采集,并将结果发送到LED进行显示。3.将程序装载到单片机中执行,观看现象(实验报告中说明现象)4.如果显示不符合程序要求,回到步骤1-3.六、汇编参考程序ADC EQU 35H ;存放转换后的数据START BIT P3.2OE BIT P3.0EOC BIT P3.1 ORG 00H LJMP STARTBEGIN: SETB P3.4 SETB P3.5 CLR P3.6 ;选择ADC0808的通道3WAIT: CLR START SETB START CLR START ;启动转换 LCALL DELAYE1INT: SETB OE ;允许输出 MOV ADC,P1 ;暂存转换结果 CLR OE ;关闭输出 MOV P0,ADC CLR START SETB START CLR START LJMP BEGINDELAY: MOV R7,#0FFH DJNZ R7,$ RET END
查看全文
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论