1 / 29

第 9 章 A / D 、 D / A 转换接口

第 9 章 A / D 、 D / A 转换接口. 9.1 概述 9.2 D / A 转换接口 DAC0832 9.3 模/数转换器 ADC0809. 退出. 9.1 概述. 将模拟量转换成数字量 , 是模/数转换,或称 A / D ( Analogue / Digital )转换。将数字量转换成模模拟量 , 是数/模转换,或称 D / A ( Digital / Analogue )转换。完成 A / D 转换的器件,叫 A / D 转换器 (ADC) ,完成 D / A 转换的器件,叫 D / A 转换器 (DAC) 。

lel
Download Presentation

第 9 章 A / D 、 D / A 转换接口

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第9章 A/D、D/A转换接口 • 9.1 概述 • 9.2 D/A转换接口DAC0832 • 9.3 模/数转换器ADC0809 退出

  2. 9.1 概述 • 将模拟量转换成数字量,是模/数转换,或称A/D(Analogue/Digital)转换。将数字量转换成模模拟量,是数/模转换,或称D/A(Digital /Analogue)转换。完成A/D转换的器件,叫A/D转换器(ADC),完成D/A转换的器件,叫D/A转换器(DAC)。 • 微机控制系统原理框图如图9-1所示。

  3. 9.2 D/A转换接口DAC0832 • DAC0832是带有两级数据输人缓冲锁存器的8位D/A转换器。其引脚如图9-2所示。

  4. DAC0832具有数字量的输入锁存功能,可以和单片机的P0口直接相连。以下指令可将数字量转换成模拟量。 DAC0832具有数字量的输入锁存功能,可以和单片机的P0口直接相连。以下指令可将数字量转换成模拟量。 • MOV A,DATA ; • 要转换的数字量送A • MOV DPTR,#addr  ; • DAC0832地址送DPTR。 • MOVX @DPTR,A  ; • 数字量送入DAC0832并转换成模拟量

  5. 9.2.2 MCS-51与DAC0832的接口 • 单片机与DAC0832的接口,可根据需要按二级缓冲器方式、单级缓冲器方式和直通方式联接。 • 1、单缓冲器连接方式 • DAC0832以单缓冲器方式与8051的接口电路图9-4所示。

  6. 用该连接产生一个锯齿波信号的程序如下: • WAVE:MOV DPTR,#addr ;输入寄存器和DAC寄存器地址 • MOV A,DATA0   ;数字量初值 • LOOP: MOVX @DPTR,A • CJNEA,DATAEND,MORE • SJMP WAVE • MORE:INC A • SJMP LOOP • 上述程序输出的波形如图9-5所示。

  7.    2、双缓冲器连接方式 • 采用双缓冲器连接方式时,DAC0832的数字量输入锁存和D/A转换输出分两步完成。首先,将数字量输入到各路D/A转换器的输入寄存器,然后,控制各路D/A转换器,使各路D/A转换器输入寄存器中的数据,同时进入DAC寄存器,并转换输出。所以,在这种工作方式下,DAC0832占用两个I/O地址,输入寄存器和DAC寄存器各占一个I/O地址。 • 图9-6是8051和二片双缓冲器方式DAC0832的接口电路。利用此电路可以输出一对同步信号,如从X、Y输出一组同步的锯齿波和正弦波信号。

  8.   下面是从X、Y同步输出不同电压的程序: • M()V DPTR,#addr1 ;1#输入寄存器地址 • MOV A,DATA1 ;数字量1送A • MOV @DPTR,A ;数字量1送1#输入寄存器 • MOV DPTR,#addr2 ;2#输入寄存器地址 • MOV A,DATA2;数字量2送A • MOV @DPTR,A ;数字量2送2#输入寄存器 • MOV DPTR,#addr3 ;1#、2#DAC寄存器地址 • MOV @DPTR,A ;1#、2#输入寄存器的数字量1、2分别同时送1#、 • ;2#DAC寄存器,并同时转换,同步输出

  9. 9.2.3 D/A 转换器的主要技术指标 • 1、分辨率 • 2、转换误差 • 3、线性误差 • 4、转换速度 • 5、接口形式

  10. 9.3 模/数转换器ADC0809 • ADC0809是一种典型的A/D转换器,是8位8通道的A/D转换器,其引脚如图9-7所示。

  11. 9.3.1 ADC0809的结构 • ADC0809由一个8位A/D转换器、一个8路模拟量开关、8路模拟量地址锁存/译码器和一个三态数据输出锁存器组成,其内部结构如图9-8所示。

  12. 9.3.2 MCS-51与ADC0809的接口 • ADC0809与805l之间的接口电路如图9-9所示。ADC0809时钟信号由单片机的ALE信号2分频获得。ADC0809通道地址由P0 口的低3位直接与ADC0809的A、B、C相连。

  13. 下面采用查询的方法,对N(N≤8)路模拟信号进行A/D转换,转换后的N个数据顺序存放到起始地址为data_addr数据存区。下面采用查询的方法,对N(N≤8)路模拟信号进行A/D转换,转换后的N个数据顺序存放到起始地址为data_addr数据存区。 • ADST:MOV R1,#data_addr ;置数据区首地址指针 • MOV DPTR,#addr_ch1 ;指向第1个通道 • MOV R2,#0NH   ;通道个数 • LOOP:MOVX @DPTR,A   ;启动A/D转换 •     ...          ;延时

  14. MOVX A,@DPTR   ;读取转换结果 • MOV @R1,A   ;结果转存到数据区 • INC DPTR     ;指向下一通道 • INC R1       ;修改数据区指针 • DJNZ R2,LOOP   ;若N路未转换完则继续转换

  15. 下面采用中断方式,对N(N≤8)路模拟信号进行A/D转换。下面采用中断方式,对N(N≤8)路模拟信号进行A/D转换。 • 初始化程序: • ADST: MOV R1,#dat_addr ;数据暂存区首地址 • MOV R2,#0NH ;共N路 • SETB ITl ;INT1下降沿触发 • SETB EA ;中断允许 • SETB EX1 ;开中断1 • MOV DPTR,#addr_ch1;指向第1通道 • MOVX @DPTR,A ;启动A/D转换 • MOV A,R2 ;通道数送A • LOOP: JNZ LOOP     ;N路未转换完等中断

  16.  中断服务程序: • MOVX A,@DPTR ;读取A/D转换结果 • MOVX @R1,A ;存A/D转换结果 • INC DPTR ;下一个通道 • INC R1  ;下一个数据存放单元 • MOVX @DPTR,A ;启动下一个通道 • DEC R2      ;通道数减1 • MOV A,R2 • RETI        ;中断返回

  17. 9.3.2 A/D 转换器的主要技术指标 • 1、分辨率 • 2、转换误差 •   3、转换速度

More Related