ADC0808/0809与8031单片机接口设计
eeskill 2022-11-29

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中断返回

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • 单片机
  • 嵌入式
  • MCU
  • STM
  • 如何采用FIFO存储器实现A/D转换器与ARM的接口设计

    在高频超声波数据采集系统中,很多高速A/D转换器往往不能直接与处理器相连接,这时就需要使用FIFO在处理器与A/D转换器之间架一座桥梁,FIFO的先入先出特性可

    4小时前
  • 超声波无损检测系统的A/D与ARM接口设计

    在高频超声波数据采集系统中,很多高速A/D转换器往往不能直接与处理器相连接,这时就需要使用FIFO在处理器与A/D转换器之间架一座桥梁,FIFO的先入先出特性可

    4小时前
  • 单片机定时器使用过程中常见的两种问题

    在单片机的学习过程中,单片机定时器的合理设置和应用是非常关键的一步,也是刚开始接触单片机知识的新人工程师们比较容易出错误的一个环节之一。在今天的文章中,我们为大

    02-03
  • 51单片机定时器的寄存器

    标准的51单片机内部有T0和T1这两个定时器,T就是Timer的缩写,现在很多51系列单片机还会增加额外的定时器,在这里我们先讲定时器0和1。前边提到过,对于单

    02-03
  • 单片机学习的必须步骤

    任何一款单片机,其实学习步骤都是一样的,不管是8位的入门芯片,还是32位的高速芯片。以下这些步骤是必须的,你得一步步来!1、数字I/O的使用使用按键输入信号,发

    02-03
  • 基于STM32F0的SPI通信的FLASH程序分析

    Ⅰ、概述关于SPI(SerialPeripheralInterface)串行外设接口可以说是单片机或者嵌入式软件开发人员必须掌握的一项通信方式,就是你在面试相关

    02-02
  • 8位微控制器五个隐藏成本

    自成本是8位微控制器(MCU)设计中的关键驱动因素以来,市场上充斥着极低成本的型号。在本白皮书中,我们将给您介绍在规格表中找不到的8位微控制器(MCU)的常见隐

    02-02
  • 单片机烧写的三种方式

    编程器就是工具,在进行单片机开发时,你可以编程写了许多代码,只要执行此代码,单片机便依你的指示工作了,但如何将这些代码(或数据)写进单片机内,这就用到编程器了。

    02-02
  • 单片机控制开关电源的几种方式

    单片机控制开关电源,单从对电源输出的控制来说,可以有几种控制方式。其一是单片机输出一个电压(经DA芯片或PWM方式),用作电源的基准电压。这种方式仅仅是用单片机

    02-02
  • 单片机通信时序分析是什么?

    所谓“时序”从字面意义上来理解,一是“时间问题”,二是“顺序问题”。先说“顺序问题”,这个相对简单一些。我们在学UART串口通信的时候,先1位起始位,再8位数据

    02-02
  • 说说51单片机I/O口

    双向IO口的输出:互补推挽在51单片机的P0口工作在普通IO口模式下,为准双向IO口。而工作在第二功能状态下时,则为标准的双向IO口。由于双向IO口的输出,要求

    02-02
  • 总结:6种常见的单片机数字滤波算法

    单片机主要作用是控制外围的器件,并实现一定的通信和数据处理。但在某些特定场合,不可避免地要用到数学运算,尽管单片机并不擅长实现算法和进行复杂的运算。下面主要是介

    02-02
下载排行榜
更多
广告