ADC0808/0809与8031单片机接口设计

AC-DC/DC-DC转换

116人已加入

描述

  ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。ADC0808是ADC0809的简化版本,功能基本相同。一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。

  AD0809 的逻辑结构ADC0809 是8 位逐次逼近型A/D转换器。它由一个8路模拟开关、一个地址锁存译码器、一个A/D 转换器和一个三态输出锁存器组成(见图1)。多路开关可选通8个模拟通道,允许8 路模拟量分时输入,共用A/D 转换器进行转换。三态输出锁存器用于锁存A/D 转换完的数字量,当OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。和偏文章主要就是说ADC0808/0809与8031单片机接口的三种方式,一起来了解一下。

  ADC0808/0809与8031单片机接口设计

  ADC0808/0809与8031单片机的硬件接口有三种方式,查询方式,中断方式和等待延时方式。究竟采用何种方式,应视具体情况,按总体要求而选择。这里我们主要谈谈延时方式和中断方式。

  1.延时方式

  ADC0809编程模式

  在软件编写时,应令p2.7=A15=0;A0,A1,A2给出被选择的模拟通道的地址; 执行一条输出指令,启动A/D转换; 执行一条输入指令,读取A/D转换结果。 通道地址:7FF8H~7FFFH

  下面的程序是采用延时的方法,分别对8路模拟信号轮流采样一次,并依次把结果转存到数据存储区的采样转换程序。

  START:

  MOV R1, #50H 置数据区首地址

  MOV DPTR, #7FF8H P2.7=0且指向通道0

  MOV R7, #08H 置通道数

  NEXT: MOVX @DPTR,A 启动A/D转换

  MOV R6, #0AH 软件延时

  DLAY: NOP

  NOP

  NOP

  DJNZ R6, DLAY

  MOVX A, @DPTR 读取转换结果

  MOV @ R1, A 存储数据

  INC DPTR 指向下一个通道

  INC R1 修改数据区指针

  DJNZ R7, NEXT 8个通道全采样完了吗

  2.中断方式

  将ADC0808/0809作为一个外部扩展的并行I/O口,直接由8031的P2.0和脉冲进行启动。通道地址为FEF8H~FEFFH

  用中断方式读取转换结果的数字量,模拟量输入通路选择端A,B,C分别与8031的P0.0,P0.1,P0.2(经74LS373)相连, CLK由8031的ALE提供。

  INTADC:SETB IT1 选择为边沿触发方式

  SETB EA 开中断

  SETB EX1

  MOV DPTR, #0FEF8H 通道地址送DPTR

  MOVX @DPTR,A 启动A/D转换

  PINT1:

  MOV DPTR, #0FEF8H 通道地址送DPTR

  MOVX A, @ DPTR;读取从IN0输入的转换结果存入

  MOV 50H, A 50H单元

  MOVX @DPTR,A 启动A/D转换

  RETI 中断返回

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分