新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > ADC0809AD轉換器基本應用技術

        ADC0809AD轉換器基本應用技術

        作者: 時間:2013-04-02 來源:網絡 收藏

        T0X: NOP

        MOV TH0,#(65536-4000)/256

        MOV TL0,#(65536-4000) MOD 256

        MOV DPTR,#DPCD

        MOV A,DPCNT

        ADD A,#DPBUF

        MOV R0,A

        MOV A,@R0

        MOVC A,@A+DPTR

        MOV P1,A

        MOV DPTR,#DPBT

        MOV A,DPCNT

        MOVC A,@A+DPTR

        MOV P2,A

        INC DPCNT

        MOV A,DPCNT

        CJNE A,#8,NEXT

        MOV DPCNT,#00H

        NEXT: RETI

        DPCD: DB 3FH,06H,5BH,4FH,66H

        DB 6DH,7DH,07H,7FH,6FH,00H

        DPBT: DB 0FEH,0FDH,0FBH,0F7H

        DB 0EFH,0DFH,0BFH,07FH

        END

        8. C語言源程序

        #include AT89X52.H>

        unsigned char code dispbitcode[]={0xfe,0xfd,0xfb,0xf7,

         0xef,0xdf,0xbf,0x7f};

        unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,

        0x6d,0x7d,0x07,0x7f,0x6f,0x00};

        unsigned char dispbuf[8]={10,10,10,10,10,0,0,0};

        unsigned char dispcount;

        sbit ST=P3^0;

        sbit OE=P3^1;

        sbit EOC=P3^2;

        unsigned char channel=0xbc;//IN3

        unsigned char getdata;

        void main(void)

        {

        TMOD=0x01;

        TH0=(65536-4000)/256;

        TL0=(65536-4000)%256;

        TR0=1;

        ET0=1;

        EA=1;

        P3=channel;

        while(1)

        {

        ST=0;

        ST=1;

        ST=0;

        while(EOC==0);

        OE=1;

        getdata=P0;

        OE=0;

        dispbuf[2]=getdata/100;

        getdata=getdata%10;

        dispbuf[1]=getdata/10;

        dispbuf[0]=getdata%10;

        }

        }

        void t0(void) interrupt 1 using 0

        {

        TH0=(65536-4000)/256;

        TL0=(65536-4000)%256;

        P1=dispcode[dispbuf[dispcount]];

        P2=dispbitcode[dispcount];

        dispcount++;

        if(dispcount==8)

        {

        dispcount=0;

        }

        }


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 土默特左旗| 惠水县| 安吉县| 长沙县| 兰溪市| 剑河县| 红桥区| 通榆县| 周口市| 洞口县| 宝鸡市| 正安县| 边坝县| 曲周县| 海丰县| 北流市| 长沙市| 龙游县| 屯门区| 翼城县| 沙河市| 齐河县| 齐齐哈尔市| 宁安市| 甘南县| 长宁区| 连山| 久治县| 五华县| 高青县| 鄂托克前旗| 保亭| 遵义县| 柳河县| 疏勒县| 郓城县| 赞皇县| 新郑市| 普洱| 板桥市| 承德市|