專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> 常用芯片 >> 瀏覽文章

A/D轉(zhuǎn)換器adc0809與單片機(jī)接口功能電路程序

作者:佚名   來源:不詳   點(diǎn)擊數(shù):  更新時(shí)間:2008年02月20日   【字體:

adc0809芯片管腳功能介紹如下圖,兩種形式的封裝均有:

adc0809管腳圖

 


 adc0809內(nèi)部功能電路

 ADC0809是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,它由8路模擬開關(guān)、地址鎖存與譯碼器、比較器、8位開關(guān)樹型D/A轉(zhuǎn)換器、逐次逼近
        寄存器、三態(tài)輸出鎖存器等其它一些電路組成。因此,ADC0809可處理8路模擬量輸入,且有三態(tài)輸出能力,既可與各種微處理器相連,也可單獨(dú)工作。輸入輸出與TTL兼容。

ADC0809A/D轉(zhuǎn)換芯片引腳功能
ADC0809芯片有28條引腳,采用雙列直插式封裝
IN0~I(xiàn)N7:8路模擬量輸入端。
2-1~2-8:8位數(shù)字量輸出端。
ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路.
ALE:地址鎖存允許信號(hào),輸入,高電平有效。
START: A/D轉(zhuǎn)換啟動(dòng)信號(hào),輸入,高電平有效。
EOC: A/D轉(zhuǎn)換結(jié)束信號(hào),輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。
OE:數(shù)據(jù)輸出允許信號(hào),輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開輸出三態(tài)門,輸出數(shù)字量。
CLK:時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KHZ。
REF(+)、REF(-):基準(zhǔn)電壓。
Vcc:電源,單一+5V。
GND:地。
 



   ADC0809內(nèi)部電路原理圖及引腳圖 

下面介紹一個(gè)ADC0809和單片機(jī)接口的c51程序:
#include <reg51.h>
#include <absacc.h>
#include <math.h>
#define uchar unsigned char
#define uint unsigned int
#define ADC0809 XBYTE[0x0B000] //P2.6選通   
float sum=0,fjg;
uint i,j,*q,*p,sd=5;
sbit p1_0=P1^0;
void wait(uint n);
void main(void)  ------adc0809程序開始
{ j=0;
    TMOD=0X01;//設(shè)置定時(shí)器0
    TH0=0XFC;//定時(shí)時(shí)間設(shè)為1ms
    TL0=0X18;
      EA=0;//先關(guān)中斷
      EA=1;//開總中斷
      ET0=1;
      //TR0=1;
    for(; ;)
    {
      if(j=20){
do{}while(!TF0);
q=0x30;
for(i=0;i<20;i++) //轉(zhuǎn)化后的數(shù)值求均方根
{sum=sum+(*q)*(*q);
q++;
}
    sum=sum/20;
fjg=sqrt(sum);
if(fjg>sd)          //判斷是否跳閘
p1_0=1;
j=0;
}}
}
void power(void)
{ uchar x;
for(;;)
        {ADC0809=0x01;
        wait(1000);
        x=ADC0809;
        P2=x;
        }
}

void wait(uint n)
{ uint i,j;
    for(i=0;i<n;i++)
    for(j=0;j<100;j++);
}
timer0()interrupt 1 using 1
{*p=ADC0809;
p++;
TH0=0XFC;
TL0=0X18;
TR0=1;
j++;
}        

  ADC0809A/D轉(zhuǎn)換芯片的工作過程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動(dòng) A/D轉(zhuǎn)換,之后EOC輸出信號(hào)變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖剑甘続/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作中斷申請。當(dāng)OE輸入高電平 時(shí),輸出三態(tài)門打開,轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上.

關(guān)閉窗口