• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 模擬技術 > 設計應用 > 模數轉換ADC0804的應用實例(含源程序及電路)

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

    作者: 時間:2012-08-18 來源:網絡 收藏

    的應用(含源程序及)

    本文引用地址:http://www.czjhyjcfj.com/article/185910.htm

    [實驗要求]

    的模擬量通道輸入0-5V 之間的模擬量,通過 轉換成數字量送給單片機,經單片機處理后在數碼管上以十進制形成顯示出來。

    [實驗目的]

    學習如果用單片機控制ADC0804芯片進行數模轉換,掌握數碼管動態掃描顯示的原理。

    動態掃描:就六位數碼管顯示123456舉例說明如下:先讓第一個數碼管顯示1,其余的全部不亮,1大約亮幾毫秒,然后熄滅,緊接著立即讓第二個數碼管顯示2,其余的全部不亮,2同樣亮幾毫秒,依次這樣亮到第六個數碼管,然后再回來顯示1,如此這樣以很快的速度不斷循環下去,由于人眼的視覺暫留時間大約為20毫秒左右,所以是感覺不出有不亮的數碼管存在的,看見的是六個數碼管同時在顯示,數值是123456,如果我們把這個過程一點點放慢,看見的是從第一個數碼管顯1,然后移到第二個再顯2,。。。也就是說在任一時刻只有一位數碼管是亮的。這就是數碼管動態掃描顯示的原理

    ADC0804: ADC0804是8位全MOS中速A/D 轉換器、它是逐次逼近式A/D 轉換器,片內有三態數據輸出鎖存器,可以和單片機直接接口。單通道輸入,轉換時間大約為100us。ADC0804 轉換時序是:當CS=0 許可進行A/D 轉換。WR由低到高時,A/D開始轉換,一次轉換一共需要66-73 個時鐘周期。CS與WR同時有效時啟動A/D轉換,轉換結束產生INTR 信號(低電平有效),可供查詢或者中斷信號。在CS和RD 的控制下可以讀取數據結果。本實驗沒有使用INTR信號。

    [硬件]

    [源代碼]

    //擰動AD旁邊的電位器,會在數碼管的前三位顯示0-255之間的數//值。這就是把模擬信號轉換成數字信號,即

    #includereg51.h>

    #include intrins.h>

    #define uint unsigned int

    #define uchar unsigned char

    sbit adrd=P3^7;//IO口定義

    sbit adwr=P3^6;

    sbit diola=P2^5;

    sbit dula=P2^6;

    sbit wela=P2^7;

    unsigned char j,k,adval;

    void delay(unsigned char i)//延時程序

    {

    for(j=i;j>0;j--)

    for(k=125;k>0;k--);

    }

    uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,//數碼管編碼

    0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};

    void display(uchar bai_c,uchar sh_c,uchar g_c)//顯示程序

    {

    P0=table[bai_c];//顯示百位

    dula=1;

    dula=0;

    P0=0xfe;

    wela=1;

    wela=0;

    delay(5);

    dula=0;

    P0=table[sh_c];//顯示十位

    dula=1;

    dula=0;

    DIY機械鍵盤相關社區:機械鍵盤DIY


    電路相關文章:電路分析基礎


    波段開關相關文章:波段開關原理



    上一頁 1 2 下一頁

    關鍵詞: 0804 ADC 模數轉換 電路

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 桂林市| 武汉市| 文水县| 内黄县| 洛南县| 三穗县| 黑水县| 婺源县| 革吉县| 巴彦淖尔市| 南华县| 林甸县| 和静县| 理塘县| 中江县| 平果县| 临江市| 岱山县| 肃宁县| 昆明市| 洛川县| 奉新县| 建湖县| 达孜县| 历史| 屯留县| 安塞县| 苏尼特左旗| 锡林浩特市| 南川市| 余姚市| 大洼县| 马龙县| 大洼县| 武清区| 武穴市| 勃利县| 长武县| 盖州市| 和平县| 玛曲县|