久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

ADC0809模數轉換器的使用詳解與程序

作者:佚名   來源:本站原創   點擊數:  更新時間:2010年06月12日   【字體:

 帶我們的王老師剛評上碩導了,下學期開始帶研究生了。
  從他那里了解到每做一次實驗或者實踐,應該把它用規范的格式記錄下來,一來自己可以日后查看,二來同學間可以相互交流,共通過進步,甚為必要。現將本次實驗記錄如下。
  實驗
名稱:根據光強控制外圍器件的通斷。
  實驗原理;使用AD芯片將太陽能電池產生的光生伏打電壓轉化為數字信號,再通過單片機處理后,在數碼管上顯示電壓,同時根據設定電壓伐值,控制外圍器件的通斷。
  實驗所需的設備:51單片機燒寫器一個,電腦一臺,數字式示波器一個,數字式萬用表一個
  實驗所需的元件:太陽能電池一片,單片機一片,1k排阻一個,四位連體的數碼管一個,排針若干排,導線,萬用版一塊,焊錫。
  實驗前的理論準備;能熟練使用51單片機,示波器,keil軟件,isp下載軟件,看懂AD0809的英文pdf說明
  實驗的難點:難點一就是AD0809芯片的使用。
難點二就是將AD0809產生的0~256的數字換算成0~5.000的精確度,而又不至于溢出出錯。
難點三就是以上的理論準備全部系自學,呵呵
下面著重說明AD0809的使用難點。

  ADC0809是采樣頻率為8位的、以逐次逼近原理進行模—數轉換的器件。其內部有一個8通道多路開關,它可以根據地址碼鎖存譯碼后的信號,只選通8路模擬輸入信號中的一個進行A/D轉換。
  1.主要特性
  1)8路8位A/D轉換器,即分辨率8位。
  2)具有轉換起停控制端。
  3)轉換時間為100μs
  4)單個+5V電源供電
  5)模擬輸入電壓范圍0~+5V,不需零點和滿刻度校準。
  6)工作溫度范圍為-40~+85攝氏度
  7)低功耗,約15mW。
  2.內部結構
  ADC0809是CMOS單片型逐次逼近式A/D轉換器,內部結構如圖13.22所示,它由8路模擬開關、地址鎖存與譯碼器、比較器、8位開關樹型D/A轉換器、逐次逼近
  3.外部特性(引腳功能)
  ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖13.23所示。下面說明各引腳功能。
  IN0~IN7:8路模擬量輸入端。
  2-1~2-8:8位數字量輸出端。
  ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路
  ALE:地址鎖存允許信號,輸入,高電平有效。
  START: A/D轉換啟動信號,輸入,高電平有效。
  EOC: A/D轉換結束信號,輸出,當A/D轉換結束時,此端輸出一個高電平(轉換期間一直為低電平)。
  OE:數據輸出允許信號,輸入,高電平有效。當A/D轉換結束時,此端輸入一個高電平,才能打開輸出三態門,輸出數字量。
  CLK:時鐘脈沖輸入端。要求時鐘頻率不高于640KHZ。
  REF(+)、REF(-):基準電壓。
  Vcc:電源,單一+5V。
  GND:地。
  ADC0809的工作過程是:首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此 地址經譯碼選通8路模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復位。下降沿啟動 A/D轉換,之后EOC輸出信號變低,指示轉換正在進行。直到A/D轉換完成,EOC變為高電平,指示A/D轉換結束,結果數據已存入鎖存器,這個信號可 用作中斷申請。當OE輸入高電平 時,輸出三態門打開,轉換結果的數字量輸出到數據總線上。
 

  值得一提的是,我按照上面電路,把AD的ABC三腳共同接接地時,AD0809088始終輸出高電平,最后當我把BC共同接地,在程序中給A一個0,則AD0809正常運行,有輸出,并且發現當所給的時鐘頻率越低,最高精度的那位輸出越穩定,具體參數范圍從芯片資料里有詳細介紹,不過十全英文,專業詞匯哦。哈哈
  現將程序記錄如下:
 完整的程序從這里下載: http://m.zg4o1577.cn/ziliao/file/0809c51x.rar

 
#include< reg52.h> 
#define uint unsigned int 
#define uchar unsigned char 
uchar aa,qian,bai,shi,ge; 
uint temp; 
sbit clock=P2^0; 
sbit start=P2^1; 
sbit eoc=P2^2; 
sbit oe=P2^3; 
sbit ale=P2^4; 
sbit adda=P2^5; 
uchar code table[]={ 

0x3f,0x06,0x5b,0x4f, 
0x66,0x6d,0x7d,0x07, 
0x7f,0x6f,0x77,0x7c, 
0x39,0x5e,0x79,0x71 
}; 
//void display(uchar bai,uchar shi,uchar ge); 
void delay(uint z); 
void main() 
{ 
    TMOD=0x20;  //設置定時器1為工作方式2 
    TH1=0x216;    //216 
    TL1=0x216;    //216 
    EA=1;       //開總中斷 
    ET1=1;        //開t1中斷 
    TR1=1;         
    start=0;    //復位 
    oe=0;         //輸出 
    adda=0; 
    //eoc=0; 
    ale=0;           //關閉地址選擇 
    while(1) 
    { 
         
        start=0; 
        ///delay(10); 
        start=1;     //        復位 
        ale=1;           //     打開地址選擇 
        adda=0; 
        ///delay(10); 
     
        start=0;         //     開始轉換 
        ale=0;             //      關地址 
        //delay(1);     
        while(eoc==0);         //       等待eoc變為1 
        //delay(1); 
        oe=1;             //       打開輸出 
        //delay(1); 
        //P1=0xff; 
         
        temp=P1;             //      取p1到p3 
        oe=0;             //      關輸出 
         

  temp=temp*50; 
  temp=temp/256; 
   
  qian=temp/1000; 
  bai=temp%1000/100; 
  shi=temp%100/10; 
  ge=temp%10; 
   
  P3=0x00; 
  P0=0xfe; 
  P3=table[qian]; 
  delay(50); 
  P3=0x00; 
  P0=0xfd; 
  P3=table[bai]; 
  delay(50); 
  P3=0x00; 
  P0=0xfb; 
  P3=table[shi]; 
  delay(50); 
  P3=0x00; 
  P0=0xf7; 
  P3=table[ge]; 
  } 
} 
void delay(uint z) 
{ 
    uint x,y; 
    for(x=z;x>0;x--) 
        for(y=1;y>0;y--); 
} 
void cl() interrupt 3 
{ 
    clock=!clock; 
}  
  
關閉窗口

相關文章

主站蜘蛛池模板: 高清av电影 | 91久久| 操操操av| 久久综合狠狠综合久久综合88 | 国产精品欧美一区二区三区不卡 | 香蕉久久久久久 | 男女羞羞视频在线 | 国产1区| 成人视屏在线观看 | 亚洲一区在线日韩在线深爱 | 国产一区中文字幕 | 九九爱这里只有精品 | 亚洲第一av网站 | 激情网站在线 | 日韩欧美一区二区三区免费观看 | 亚洲另类自拍 | av网站在线看| 91夜色在线观看 | 欧美一区永久视频免费观看 | 正在播放国产精品 | 天天夜夜人人 | 99久久日韩精品免费热麻豆美女 | 亚洲第一成年免费网站 | 在线国产一区 | 成人精品一区二区三区 | 精品国产乱码一区二区三区a | www.久久艹 | 美日韩精品 | www.4虎影院| 日本网站免费在线观看 | 国产亚洲人成a在线v网站 | 奇米av | 久久精品国产精品青草 | 精品中文字幕一区二区三区 | 国产一区不卡 | 综合一区二区三区 | 夜久久 | 国产成人免费在线观看 | a a毛片 | 亚洲精品无 | 日日骚视频 |