单片机与ADC0809接口电路.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机与ADC0809接口电路

ADC0809主要信号引脚的功能说明 IN7~IN0——模拟量输入通道 2. ALE——地址锁存允许信号。对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。 3. START——转换启动信号。START上升沿时,复位ADC0809;START下降沿时启动芯片,开始进行A/D转换;在A/D转换期间,START应保持低电平。本信号有时简写为ST. 4. A、B、C——地址线。 通道端口选择线,A为低地址,C为高地址 5. CLK——时钟信号。ADC0809的内部没有时钟电路,所需时钟信号由外界提供,因此有时钟信号引脚。使用频率为10KHz~1280KHz的时钟信号 6. EOC——转换结束信号。EOC=0,正在进行转换;EOC=1,转换结束。使用中该状态信号即可作为查询的状态标志,又可作为中断请求信号使用。 7. D7~D0——数据输出线。为三态缓冲输出形式,可以和单片机的数据线直接相连。D0为最低位,D7为最高 8.OE——输出允许信号。用于控制三态输出锁存器向单片机输出转换得到的数据。OE=0,输出数据线呈高阻;OE=1,输出转换得到的数据。 9. Vcc—— +5V电源。 Vref——参考电源参考电压用来与输入的模拟信号进行比较,作为逐次逼近的基准。其典型值为+5V(Vref(+)=+5V, Vref(-)=0V). 原理图 电路连接说明及工作过程 AT89c51单片机的P1口用作数据复用总线与ADC0809的数据输出端相连(原理图未画出)。 单片机的低3位(P0.0~P0.2)数据线(选通abc)用于选择8路模拟量输入。 ADC0809的时钟信号CLK由单片机的ALE信号提供,由于单片机内部晶振频率为11.0592MHz,即单片机的ALE输出为1/6fosc=1.8432MHz,经四分频器得到输入到0809CLKk端的信号频率为460.8KHz,满足工作要求。 转换的启动信号START和8路模拟输入开关的地址锁存允许信号ALE由单片机的写信号WR(P3.6)及地址译码输出信号逻辑提供。由于0809内部具有地址锁存器,所以另外无需添加。 本接口用P2.0作 I/O 地址选择信号,相当于用ADC0809的片选信号作启动信号,即P2.0与ADC0809芯片的ALE相连接。 转换开始时,EOC端降为低电平,当转换结束后,EOC升为高电平。本电路用中断方式通知单片机转换已经结束。所以直接将EOC端接到单片机的INT1(外部中断1)端。 对本接口电路可编出相应的程序。在主程序中要对外部中断进行预置,然后启动ADC0809进行A/D转换。设由IN0路开始,8路模拟量轮流输入。转换结束后,转入中断服务子程序,把转换结果(此时P1口的数据)读入89C51单片机工作寄存器R0所指向的缓冲存储单元70H~77H,再由主程序进行处理。 参考程序如下: ORG 0000H ;程序入口地址 SJMP START ;程序跳转至start段 ORG 0013H ;中断1的中断服务程序入口地址 AJMP INTR1 ;无条件跳转至中断服务程序 MAIN: MOV R0,#70H ;片内ram首址70H送至工作寄存器R0 MOV R2,#08H ;8路通道寄存器 SETB IT1 ;设外部中断1为边沿触发 SETB EX1 ;开外部中断1 SETB EA ;cpu开中断 MOV A,#00H ;选中通道0 MOV P0,A ; SETB P2.0 ;使ADC0809的ALE端置高,进行地址锁存 START: SETB P3.6 ACALL DELAY CPL P3.6 ;上升沿输入start端,此时ADC0809复位 ACALL DELAY SETB P3.6 ;下降沿启动A/D转换 ACALL DELAY HERE: SJMP HERE ;等待转换完毕,若中断完毕,则EOC输出高电平,经反相器变低,触发单片机产生中断 DJNZ R2,START ;8路未全部采完,继续 INTR1:SETB P3.7 ;置OE为高,允许A/D转换结果输出 ACALL DELAY MOV P1,#0FFH ;51单片机置P1口为引脚输入方式 MOV @R0,P1 ;将P1口的数据,即转换结果,放到R0所指向的内存单元中 CPL P3.7 ;关闭读信号 INC P0 ;选通ADC0809的下一通道 INC R0 ;指向下一个将要存放的内存单元 RETI DELA

文档评论(0)

zhuwenmeijiale + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档