A/D转换实验

一、实验目的

  1. 学习掌握模/数信号转换基本原理;

  2. 掌握ADC0809的工作原理和使用方法。

二、实验内容

  编写程序,利用ADC0809A/D转换器,将从电位器读取的直流电压转换成二进制数字,将该二进制数字在LED七段显示器中显示出来,验证输入电压和转换后数字的正确性。实验台中的电位器可以输出0~5V的直流电压。ADC0809所需的控制信号由8255A的PC口提供。

设计实验电路图。按图3-14所示连接导线。

 

三、实验提示

  ADC0809包含一个8位的逐次逼近型的ADC部分,并提供一个8通道的模拟多路开关和联合寻址逻辑。用它可以输入8个单端的模拟信号,分时进行AD转换,在多点巡回检测、过程控制等应用领域中使用非常广泛。ADC0809的主要技术指标有:

分辨率:8位;单电源:5V;总的不可调误差:±1LSB;转换时间:取决于时钟频率;模拟输入范围:单极性0~5V;时钟频率范围:10KHZ ~ 1280KHZ。

ADC0809的引脚如图3-15所示:

ADC0809有8个模拟量输入端(IN0~IN7),相应的设置3根模拟量通道地址线(ADDA~ADDC),用以编码来选择8个模拟量输入通道。并且还设置1根地址锁存允许信号ALE,高电平有效当ALE变高,锁存由ADDA~ADDC编码所选中的通道号,将该通道的模拟量接入A/D转换器。ADC0809的分辨率为8位,有8根数字量输出线 (D0~D7),带有三态输出锁存器。并设置了1根输出允许信号OE,高电平有效。当读数据时要时OE置高,打开三态输出锁存器,把转换的数字量送到数据线上。

ADC0809的转换启动信号是START,高电平有效。转换结束信号为EOC,转换过程中为低电平,转换完毕变为高电平,可利用EOC的上升沿申请中断,或作查询之用。

ADC0809的内部逻辑结构如图3-16 所示:

四、实验流程图

五、参考程序

DATA SEGMENT

NUM DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H

   DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H

DATA ENDS

 

CODE SEGMENT

ASSUME CS: CODE, DS: DATA

 

START: 

MOV AX, DATA

MOV DS, AX

 

;初始化8255,0方式,A,CH口输入,B, CL口输出

 MOV DX, 203H

 MOV AL, 98H

 OUT DX, AL

 

;选用LED七段显示器的第五和第六个来显示转换的数字

MOV AL, 30H

MOV DX, 208H

OUT DX, AL

 

LEA BX,NUM   ;将转换表的首地址装入BX寄存器

 

MOV DX, 203H

MOV AL, 03H    ;将0809的OE置位高电平,允许读数据

OUT DX, AL

 

L1:  MOV AL, 05H ;将0809的ALE置位高电平,允许将ADDA~ADDC所选中的通

OUT DX, AL     ;道的模拟量接入A/D转换器

 

MOV DX, 203H

MOV AL, 01H

OUT DX, AL     ;PC0输出1,启动0809转换

MOV AL, 00H

OUT DX, AL     ;PC0输出0,准备下次启动转换

 

MOV DX, 202H

L2: IN AL, DX;输入PC4,测试是否转换完成

AND AL, 10H

JZ L2 ;转换未完成,继续等待转换

 

;完成转换

MOV DX, 200H

IN AL, DX

 

MOV AH, AL

AND AL, 0FH

XLAT

 

MOV DX, 20EH

OUT DX, AL

 

SHR AH, 4

MOV AL, AH

XLAT

 

MOV DX, 20DH

OUT DX, AL

 

MOV DX, 203H

MOV AL, 04H

OUT DX, AL

 

JMP L1

 

CODE ENDS

END START

六、实验结果

【去实验】