色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

ADC0804模數轉換器的應用實例

CHANBAEK ? 來源:郎哥編程課堂 ? 作者: 郎宏林 ? 2023-11-15 17:17 ? 次閱讀

實驗要求: 應用A/D轉換器將滑動電阻輸出的模擬電壓量轉換為數字電壓量,將數字電壓量輸出到四位數碼管,并通過電壓表給出模擬電壓量的讀數。下圖是實驗截圖。

圖片

實驗方案: 應用proteus設計實驗用模擬電路,A/D轉換器采用ADC0804模擬器件,滑動電阻采用proteus支持的POT-HG,四位數碼管采用7SEG-MPX4CA。

ADC0804模數轉換器

有20個引腳,分辨率為8位,轉換時間為100μs,輸入電壓范圍為0~5V。

分辨率:A/D轉換器對輸入模擬信號的分辨能力,ADC0804分辨率為8位,即輸出位數為8個二進制位,可以區分2^8(256)不同等級的輸入模擬電壓,能區分輸入的電壓最小值為滿量程輸入的1/2^8(1/256),若需要區分更小的輸入電壓。就需要增加輸出位數,提高A/D轉換器的分辨率。

轉換時間:A/D轉換器從接收到模擬電壓到輸出數字電壓需要的時間,不同類型的轉換器轉換時間不同,并行比較的A/D轉換器轉換時間可達50ns以內,逐次比較的A/D轉換器轉換時間一般在10~100μs之間,雙積分A/D轉換器轉換時間一般在幾十毫秒到幾百毫秒之間。

圖片

CS引腳:芯片的片選信號,低電平有效。若該引腳為低電平,芯片開始工作,若該引腳為高電平,芯片停止工作。當外接多個ADC0804芯片時,該引腳可作為芯片的選擇地址,通過不同的地址信號使用不同的ADC0804芯片,從而可以實現多個ADC通道的分時復用。

WR引腳:采樣觸發信號,低電平有效。若該引腳由高電平變為低電平時,芯片對模擬信號進行一次采樣,并進行AD轉換。

RD引腳:轉換數據完成信號,低電平有效。若檢測到該引腳為低電平,說明一次轉換完成,轉換完成的數據從DB0~DB7引腳讀取。

VIN+和VIN-引腳:模擬電壓輸入端,用以接收單極性、雙極性和差模輸入信號。雙極性輸入信號有正負電壓、零電壓,單極性輸入信號僅有正電壓。若為單極性輸入信號,VIN+接模擬電壓的輸入,VIN-接地;若為雙極性輸入信號,VIN+和VIN-分別接模擬輸入電壓的正極和負極。

VREF/2引腳:參考電壓接入引腳。該引腳可外接電壓,也可懸空。

CLKIN引腳:引入外部時鐘脈沖,用于芯片的時鐘信號。

CLKR引腳:內部時鐘發生器外接電阻端,與CLKIN端配合可由芯片自身產生時鐘脈沖,時鐘脈沖頻率范圍一般為100KHz~1460KHz。

INTR引腳:轉換結束輸出信號,低電平有效,當一次A/D轉換完成后,該引腳被設置為0。在實際應用中,該引腳可與外部中斷輸入引腳相連(如51單片機的INT0,INT1腳),觸發中斷請求,中斷發生后,還需等待RD=0才能正確讀出A/D轉換結果。若不使用中斷,該引腳可以懸空。

AGAND和DGAND引腳:模擬接地和數字接地,兩個引腳可以直接接地。

VCC引腳:接+5V電源

DB0~DB7引腳:輸出A/D轉換后的8位二進制結果。

四位數碼管7SEG-MPX4CA

實驗用顯示器件采用四位數碼管7SEG-MPX4CA,該器件共有12個引腳。其中1、2、3、4引腳為位選信號,用于控制幾個數碼管亮,A~G引腳為顯示數字的段選信號,DP引腳為小數點。

圖片

實驗電路設計

ADC0804中的VCC接入5V電源,REF/2引腳懸空(懸空則相當于與VCC共接5V電源),因此ADC轉換的參考電壓為VCC的值,即5V。DB0DB7引腳連接單片機的P1.0P1.7,RD和WR引腳連接單片機的P3.6和P3.7,VIN+引腳接滑動變阻器的可調節端,VIN-引腳接地,在VIN+和VIN-引腳之間接入電壓表,CLKIN引腳和CLKR引腳連接的電容和電阻構成外部時鐘脈沖。單片機P0.0~P0.7接四位數碼管的段選線。

圖片

單片機內運行的完整C程序如下:

#include
#include
#define uint unsigned int
#define uchar unsigned char
sbit wr=P3^6;
sbit rd=P3^7;
uchar code dis[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
void delay(uint x) 
{
   uchar i;
   while(x--)
     for(i=0;i< 120;i++);       
}
void display(uchar db)
{
    uchar bw,sw,gw;
         float value;
         int voltage;
         value = (float)db * 5 / 256 * 100;
         voltage = (int)value;
         bw=voltage/100;
         sw=voltage%100/10;
         gw=voltage%10;
      P2=0x01;
         P0=dis[bw]&0x7f;
         delay(5);
         P2=0x02; 
         P0=dis[sw];
         delay(5);
         P2=0x04;
         P0=dis[gw];
         delay(5);  
         P2=0x08;
         P0=dis[0];
         delay(5);
}  
void main()
{
       uchar i;
       while(1)
       {
              wr=0;
              _nop_();
              wr=1;
              delay(1);       
              P1=0xff;
              rd=0;
              _nop_();
              for(i=0;i< 10;i++)
                      display(P1); 
       } 
}

位變量wr和rd用于操作P3.6和P3.7,P3.6和P3.7連接到了ADC0804的WR和RD引腳,用于控制信號采樣和讀取采樣信號。數組變量dis[]定義了數碼管顯示的數字編碼。

delay(uint x)是延遲函數,參數x為延時的毫秒數。

display(uchar db)是數碼管顯示函數,參數db為P1口,P1口存儲了采集到的電壓數字量。ADC0804的分辨率為8位,可以區分2^8(256)不同等級的輸入模擬電壓,且輸入電壓量程為0 ~ 5V,ADC0804輸出的數值范圍為0~256,轉換為電壓(單位V)的公式為:

輸出的數值*輸入最大量程 / 256

下面的代碼將輸出的數值轉換為電壓的數字量(單位V),并分別計算出數字量的各個位數。

value = (float)db * 5 / 256 * 100;  
// 輸出數值轉換為電壓,乘以1000方便計算出數值的各個位數
voltage = (int)value;  
bw=voltage/100;     // 計算出百位數
sw=voltage%100/10;  // 計算出十位數
gw=voltage%10;      // 計算出個位數

語句P2=0x01選擇數碼管的第1位顯示數字,語句P0=dis[bw]&0x7f用于顯示數字和小數點,dis[bw]指定的數字的編碼,再和0x7f做與操作,顯示小數點。

main()函數是主控函數,應用while結構循環采集和轉換可變電阻輸出的電壓,并將采集的電壓輸出到數碼管顯示。語句wr=0將ADC0804的wr引腳設為低電平,通知ADC0804進行采樣,語句_nop_()執行_nop_()函數, nop ()函數不是C語言標準庫的函數,它是51單片機提供的指令,它執行一個機器周期的空操作,讓ADC0804完成數據采樣和模數轉換,其后執行語句wr=1,將ADC0804的wr引腳設為高電平。語句P1=0xff將P1各端口都設置為高電平,準備接收采集的數據,語句rd=0將ADC0804的rd引腳設為低電平,從DB0~DB7引腳讀取數據到P1口。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 轉換器
    +關注

    關注

    27

    文章

    8707

    瀏覽量

    147236
  • 數碼管
    +關注

    關注

    32

    文章

    1882

    瀏覽量

    91146
  • 模數轉換器
    +關注

    關注

    26

    文章

    3205

    瀏覽量

    126847
  • 引腳
    +關注

    關注

    16

    文章

    1196

    瀏覽量

    50538
  • adc0804
    +關注

    關注

    1

    文章

    31

    瀏覽量

    22206
收藏 人收藏

    評論

    相關推薦

    基于ADC0804單片集成A/D轉換器時序圖

    ADC0804單片集成A/D轉換器。它采用CMOS工藝20引腳集成芯片,分辯率為8位,轉換時間為100μs,輸入電壓范圍為0~5V。芯片內具有三態輸出數據鎖存,可直接接在數據總線上。
    的頭像 發表于 02-02 17:08 ?2089次閱讀
    基于<b class='flag-5'>ADC0804</b>單片集成A/D<b class='flag-5'>轉換器</b>時序圖

    單片機外設AD轉換器ADC0804時序圖

    如圖,為單片機AD轉換器的一種:ADC0804單片集成A/D轉換器。它采用CMOS工藝20引腳集成芯片,分辯率為8位,轉換時間為100μs,輸入電壓范圍為0~5V。芯片內具有三態輸出數
    發表于 07-11 07:54

    5962-9581501HXA高端AD模數轉換器

    AD10242TZ/883B高端AD模數轉換器IC ADC 12BIT 41MSPS DL 68CLCC5962-9581501HXA高端AD模數轉換器IC ADC 12BIT 2 C
    發表于 07-15 11:10

    模數轉換器ADC)的配置有哪些流程?

    模數轉換器ADC)是什么?模數轉換器ADC)的配置有哪些流程?配置流程的代碼是什么?
    發表于 07-14 08:43

    ADC模數轉換器

    文章目錄1. ADC1. ADCADC(Analog-to-digital converters,模數轉換器),
    發表于 08-06 06:08

    STM32之ADC模數轉換器介紹

    ADC模數轉換器是什么?ADC模數轉換器的相關寄存有哪些?
    發表于 11-08 08:47

    模數轉換器ADC簡介

    ESP32 之 ESP-IDF 學習筆記(七)——模數轉換器ADC)文章目錄ESP32 之 ESP-IDF 學習筆記(七)——模數轉換器ADC)一、簡介1、兩個
    發表于 02-17 06:28

    ADC0804中文資料.pdf

    ADC0804中文資料:所謂A/D 轉換器就是模擬/數字轉換器ADC),是將輸入的模擬信號轉換成數字信號。信號輸入端可以是傳感
    發表于 03-13 23:38 ?1211次下載
    <b class='flag-5'>ADC0804</b>中文資料.pdf

    模數轉換ADC0804的應用(含源程序及電路)

    模數轉換ADC0804的應用(含源程序及電路) [實驗要求] 從ADC0804 的模擬量通道輸入0-5V 之間的模擬量,通過ADC080
    發表于 07-16 10:04 ?1.1w次閱讀
    <b class='flag-5'>模數</b><b class='flag-5'>轉換</b><b class='flag-5'>ADC0804</b>的應用(含源程序及電路)

    電流積分模數轉換器(ADC),什么是電流積分模數轉換器(AD

    電流積分模數轉換器(ADC),什么是電流積分模數轉換器(ADC) 模數轉換器(Analog to digital Converter,簡稱
    發表于 03-24 13:31 ?3171次閱讀

    數模模數轉換芯片ADC0804數據手冊

    ADC0801、ADC0802、ADC0803、ADC0804ADC0805是CMOS 8位逐次逼近A/D使用微分電位階梯的
    發表于 07-06 17:40 ?57次下載

    adc0804工作原理

    集成A/D轉換器品種繁多,選用時應綜合考慮各種因素選取集成芯片。一般逐次比較型A/D轉換器用的比較多,ADC0804就是這類單片集成A/D轉換器A
    發表于 11-12 09:21 ?3.6w次閱讀
    <b class='flag-5'>adc0804</b>工作原理

    ADC0804模數轉換51單片機程序與電路

    集成A/D轉換器品種繁多,選用時應綜合考慮各種因素選取集成芯片。一般逐次比較型A/D轉換器用的比較多,ADC0804就是這類單片集成A/D轉換器A
    發表于 11-12 09:46 ?3.6w次閱讀
    <b class='flag-5'>ADC0804</b><b class='flag-5'>模數</b><b class='flag-5'>轉換</b>51單片機程序與電路

    adc0804adc0809區別

    adc0809是八個單端輸入,參考電壓:5V, 即Vref=5V。 adc0804是一個差分輸入,參考電壓:2.5V,即Vref=2.5V。其它參數一樣。ADC0804是單路的,ADC
    發表于 11-12 10:02 ?2.6w次閱讀

    adc0804操作方法

    ADC0804是逐次比較型A/D轉換器,它采用CMOS工藝20引腳集成芯片,分辨率為8位,轉換時間100us,輸入電壓范圍0~5V芯片內具有三態輸出數據鎖存,科直接連接在數據總線上。
    發表于 11-12 10:37 ?1.9w次閱讀
    <b class='flag-5'>adc0804</b>操作方法
    主站蜘蛛池模板: 99久久精品一区二区三区| 国产精品人妻无码久久久2022| 好爽别插了无码视频| 亞洲人妻AV無碼在線視頻| 久久免费国产视频| 苍井空a 集在线观看网站| 午夜国产精品免费观看| 国产自啪偷啪视频在线| 4438全国免费观看| 日本视频一区二区免费观看| 国产精品伊人| 1V1各种PLAY女主被肉| 日日色在线影院| 精品高潮呻吟99AV无码| japanesematur乱儿| 小SB几天没做SAO死了H| 美女厕所撒尿ass| 国产精品久久久久影院色| 制服丝袜 快播| 视频一区视频二区ae86| 久青草国产在视频在线观看| 俄罗斯XBXBXB兽交| 永久免费在线观看视频| 色即是空之甜性涩爱| 看看妇女的B免费看| 国产跪地吃黄金喝圣水合集| 综合伊人久久| 亚洲AV日韩AV欧美在线观看网| 美女被打开了屁股进去的视频 | 一本久道久久综合狠狠躁AV| 欧洲馒头大肥p| 久久久GOGO无码啪啪艺术| 高清不卡伦理电影在线观看| 最近中文字幕MV免费高清视频8 | 亚洲人成www在线播放| 日韩欧美 亚洲视频| 伦理79电影网在线观看| 狠狠色狠狠色综合日日2019| 吃胸亲吻吃奶摸下面免费视频| 中文字幕绝色少妇性| 武侠古典久久亚洲精品|