新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機驅動12位AD轉換TLC2543電路圖+程序

        51單片機驅動12位AD轉換TLC2543電路圖+程序

        作者: 時間:2016-11-30 來源:網絡 收藏
        下面是電路圖和仿真圖:



        TI公司的12位AD轉換TLC2543芯片比ADC0832的8位AD轉換芯片,精度要高很多,ADC0832的精度是255分之1,而TLC2543 由于二進制數的位數是12bit,所以精度要高出很多,它的精度為4096分之一。以下為89C51單片機控制C語言程序和電路連接圖。完整的工程文件及hex文件下載:http://www.51hei.com/f/tlccadc.rar是用stc89c51單片機制作的 成品正在使用中.
        #include
        #define uint unsigned int
        #define uchar unsigned char
        sbit cs=P1^0;
        sbit clk=P1^3;
        sbit sdi=P1^4;
        sbit sdo=P1^5;
        sbit bit7=B^7;
        sbit freq_out=P3^7;
        bit cy;
        uint adval,volt,froq;
        uchar temp;
        uchar tab[]={0xc0,0xf9,0xa4,0xb0,0x99,
        0x92,0x82,0xf8,0x80,0x90};
        void delayms(uint ms)
        {
        uchar j;
        while(ms--)
        {
        for(j=0;j<120;j++);
        }
        }
        void delay()
        {
        uint i=5;
        while(i--);
        }
        void readADC(int ch)
        {
        uchar i;
        clk=0;
        cs=1;
        delay();
        cs=0;//CS=0開始轉換
        B=ch;
        for(i=8;i>0;i--)
        {
        cy=sdo;
        sdi=bit7;
        clk=1;
        B=B<<1;
        clk=0;
        temp=temp<<1;
        if(cy==1)
        temp++;
        }
        adval=temp;
        adval=adval<<4;
        for(i=4;i>0;i--)
        {
        cy=sdo;
        temp=temp<<1;
        if(cy==1)
        temp++;
        clk=1;
        clk=0;
        }
        cs=1;//十二位讀數完畢,結束轉換。
        adval +=temp;
        volt=adval;
        froq=adval;
        }

        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 东乌珠穆沁旗| 石家庄市| 闻喜县| 四子王旗| 龙海市| 平度市| 通城县| 宁夏| 尼勒克县| 呼和浩特市| 乌拉特前旗| 六枝特区| 丰原市| 漳浦县| 雷州市| 白玉县| 江津市| 绥宁县| 东山县| 凤山县| 十堰市| 杭州市| 西乌珠穆沁旗| 建宁县| 鄂托克旗| 新竹市| 雷州市| 泰兴市| 称多县| 大余县| 武安市| 增城市| 始兴县| 策勒县| 汉川市| 安西县| 镇江市| 弋阳县| 禹州市| 清丰县| 榕江县|