打印
[资料分享]

AD574与8031单片机及前置电路的一种实用接口电路

[复制链接]
546|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qaz098xsw|  楼主 | 2017-12-25 10:28 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
AD574与8031单片机及前置电路的一种实用接口电路

AD574是美国核拟器件公司Analog Devices) 生产的12 位逐次逼近型快速A/D 转换器。其转换35us,转换误差为土0.05%,是前我国应用广泛,价格适中的A/D转换器。其内部含三态电路,可直接与各种微处理器连接,且无须附加逻辑接口电路,便能与CMOS 及TTL 电平兼容。内部配置的高精度参考电压源和时钟电路,使它不需要任何外部电路和时钟信号,就能实现A/D转换功能,应用非常方便。
  许多文献有关于AD574与8031单片机接口技术的介绍, 但其控制功能引线基本局限于单一的AD574与8031的连接。由于8031无内部程序存贮器, 其内部数据存贮器也有限, 因而8031构成的测控系统, 往往都需外扩存贮器及I/O接口芯片, 这时单一的AD574与8031接口电路显然不能满足要求。
  本文针对这种情况, 介绍了一种AD574与8031及前置采样控制电路的实用数据采集电路接口。
  A/D转换器与微机接口的主要任务就是按照微机指令进行A/D转换和将转换数据送入微机的数据总线。A/D转换器在与微机接口时需要解决的问题
  1、 数据输出缓冲问题 微机的数据总线是CPU与存储器和I/O设备之间传送数据的公共通道。因此A/D转换器在与微机接口时要求A/D转换器的数据输出端是必须通过三态缓冲器与数据总线相连当未被选中时A/D转换器输出是高阻抗状态以免干扰数据总线上的数据传送。AD574A芯片具有三态输出缓冲器且片内控制时序能与微机总线时序配合输出端因此可直接与微机数据总线相连。
  2、 产生芯片选通信号和控制信号 在数据采集系统中为了区别于其他I/O设备必须赋予A/D转换器一特定地址。产生地址信号的译码器与地址总线的连接方式有系统所采用的I/O寻址方式及所拥有的地址总线决定。当系统采用内存映像方式时通常采用部分低位地址线传送地址码可用2-4译码器、3-8译码器、4-16译码器以及它们的组合进行译码并可根据具体情况选用固定式或开关可选式地址总线相连。
  3、 读出数据 为了能从A/D转换器中取出转换结果首先需要考虑解决A/D转换器与微机之间的联络方式问题。其中与微机之间的联络方式问题由于A/D转换须经过一定的转换时间只有在A/D转换结束并发出转换结束信号后微机读出的数据才是正确的。为便于微机检查转换状态的电平变化系统通常采用查询和中断两种联络方式。
一种实用接口电路
  在设计A/D转换器与微机接口电路时究竟是采用查询还是中断方式取决于所用A/D转换器的转换时间和用户的程序安排。一般来说当A/D转换时间较短时宜采用查询方式而转换时间长是宜采用中断方式。A/D574A与8051单片机连接时可采用查询法完成依次A/D转换。
  AD574内部具有参考电压和时钟电路, 无需外接任何元器件, 即可独立完成A/D转换,给用提供了很大方便。其模拟信号输人范围允许在0~+10V,0~ +20V以及士5V或士10V之间选择,输出为单极性二进制原码或双极性偏移二进制码,它可完成8 位转换,也可完成12位转换。由于AD574具有较强的功能,故执行读写操作所需的控制信号也较多,它有五条控制线(CE、CS.R/C、12/8、A),为了便于阅读本电路,将其作用功能列于表1。AD574还设有一标志状态端STS。STS 在转换启动后为高电平(BUSY),当转换结束时为低电平(EOC)。
  AD574 与8031单片机、采样保持器LF398及多路开关CD4051的接口电路如图1所示(图中未给出8031的外扩存贮器)。
  
  图1中,8031的POO经锁存后接至AD574的A.端,以防止A,在数据读取过程中发生变化。译码器74LS138的输出端Y作为AD574的片选信号CS,这样能很方便地扩展本电路的外围芯片。CE 由WR 和RD 信号通过一个与非门控制,所以不论是在写状态,还是在读状态,CE均为1。R/E信号由WR 产生,当执行写AD574口地址操作时,WR为低平,启动转换,当执行外部RAM 的读指令时,WR 为高电平,以完成读出转换结果的操作。12/8 接地,进行12位转换,转换结果分两次读出,读出时遵循左对齐原则。
  
  AD574的标志状态端STS通常用来完成当采用两个行务,一是用于转换结果的读取。查询方式读取转换结果数据时,STS 与8031的某-I/0口线相连(图1中为P.0),CPU直接查询该信号,以判断AD574的工作状态,当STS由高电平转为低电平时,CPU 即可读取数据。
  当采用中断方式读取转换结果数据时,STS 与8031的外部中断输人端相连,转换结束后,即向8031申请中断,读取数据。当然也可视具体情况,利用延时(或定时)方式读取转换结果数据而不用该引脚。二是用该信号经过反相做为采样/保持器LF398 的采样,保持控制信号。在这里,作者根据STS信号特点,还将其作为多路开关CD4051的禁止输人信号INH。当进行AD转换时,INH=1,通道断开,禁止模拟量输人,当A/D转换结束时,INH=0,通道接通,允许模拟量输人,即充分利用了AD574 STS 状态端的信息,又可节省8031的一根口线,不失为AD574与分路开关的优选接口的技术。关于软件编程,有关文献中介绍较多,读者可根据该接口电路方便地写出,这里不再叙述
  8051单片机与AD574的接口电路
  下图是8051 单片机与AD574A 的接口电路,其中还使用了三态锁存器74LS373 和74LS00 与非门电路,逻辑控制信号由( 、和A0)
 
  有8051 的数据口P0 发出,并由三态锁存器74LS373 锁存到输出端Q0、Q1 和Q2 上,用于控制AD574A 的工作过程。AD 转换器的数据输出也通过P0 数据总线连至8051,由于我们只使用了8 位数据口,12 位数据分两次读进8051,所以接地。当8051 的p3.0 查询到STS 端转换结束信号后,先将转换后的12 位A/D 数据的高8 位读进8051,然后再将低4 位读进8051。这里不管AD574A 是处在启动、转换和输出结果,使能端CE 都必须为1,因此将8051 的写控制线和读控制线通过与非门74LS00 与AD574A 的使能端CE 相连。


相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

632

主题

842

帖子

3

粉丝