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

    EEPW首頁 > 嵌入式系統 > 設計應用 > 2051的比較器模擬AD源程序(C語言)

    2051的比較器模擬AD源程序(C語言)

    作者: 時間:2011-05-17 來源:網絡 收藏

    2051的(C)

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

    /* io分配: *
    ;* OUTPUT: *
    ;* P1.0 ...... 量輸入 *
    ;* P1.1 ...... DA輸入基準電壓 *
    ;* P1.2~7..... R-2R DA電阻網絡 *
    ;* P3.7 ...... LED 亮度輸出 *
    ;* CPU CLOCK EQU 6M */
    //xiaoqi last edit in 2001.11
    //#pragma src
    #i nclude AT89x051.h
    #i nclude stdlib.h>
    #i ncludemath.h>
    #i ncludeintrins.h>

    //變量類型標識的宏定義,大家都喜歡這么做
    #define Uchar unsigned char
    #define Uint unsigned int

    #define Ledlight() (P3 = 0x7f)
    #define Leddark() (P3 |= 0x80)

    sbit P36 = P3^6; // 器內部判斷腳
    sbit LED = P3^7; // 一個發光二級管觀察亮度變化

    // 內部標志位定義
    bit less; // 比較是否大于 1.小于,0.大于

    // 全局變量定義
    Uchar timer1, // 通用延時計數器
    timer2, // 按鍵蜂鳴器反應定時器
    adcdata, // ad轉換變量
    pwm1; // PWM輸出比例

    // 函數列表
    void DelayMs(unsigned int number); // 毫秒延時
    void timers0(); // 在定時器中斷中做數碼管的掃描顯示(ct0)
    void Initall(void); // 系統初始化
    void timers1(void); // TC1定時器中斷用于掃描顯示與鍵盤
    Uchar adcread(void); // adc轉換程序

    void main(void) using 0
    {
    DelayMs(120);
    Initall();
    pwm1 = adcread();
    LED=1;
    while(1)
    {
    pwm1 = adcread();
    timer2=10;
    while (timer2);
    }
    }

    // 毫秒延時
    void DelayMs(unsigned int number)
    {
    unsigned char temp;

    for(;number!=0;number--)
    for(temp=112;temp!=0;temp--);
    }

    /*************************************
    在定時器中斷中做LED的PWM輸出
    *************************************/
    void timers0() interrupt 1 using 1
    {
    TH0 = 0xff;
    TL0 = 0xd0;
    timer1--;
    if (timer1==pwm1)LED=0;
    if (timer1==0){
    LED=1;
    timer1=0x40;
    timer2--;
    };
    }

    比較器相關文章:比較器工作原理


    塵埃粒子計數器相關文章:塵埃粒子計數器原理
    蜂鳴器相關文章:蜂鳴器原理

    上一頁 1 2 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 平和县| 泊头市| 墨玉县| 崇义县| 呼伦贝尔市| 二手房| 阿坝县| 称多县| 平顺县| 定结县| 正阳县| 来安县| 赞皇县| 凤山县| 图木舒克市| 嘉兴市| 荥经县| 庆安县| 陆川县| 西昌市| 塘沽区| 临潭县| 含山县| 简阳市| 丘北县| 浪卡子县| 沙坪坝区| 朔州市| 绥江县| 普安县| 静乐县| 西宁市| 汽车| 平南县| 松潘县| 新津县| 静乐县| 永昌县| 营口市| 商河县| 博客|