在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 基于MAX5891的差分輸出的測(cè)量方法簡(jiǎn)介

            基于MAX5891的差分輸出的測(cè)量方法簡(jiǎn)介

            作者: 時(shí)間:2012-10-26 來(lái)源:網(wǎng)絡(luò) 收藏

            VCODE是計(jì)算的輸出電壓值。

            下面的等式用于計(jì)算任意給定編碼的DNL:

            DNLCODE(LSBs) = [VCODE - VCode-1 - VLSB]/VLSB(公式4)

            其中

            CODE是要計(jì)算的數(shù)字編碼。

            VCODE是針對(duì)CODE計(jì)算的輸出電壓值。

            VCODE-1是針對(duì)CODE - 1計(jì)算的輸出電壓值。

            VLSB是公式2中計(jì)算的電壓值。

            以下舉例說(shuō)明利用MATLAB腳本計(jì)算MAX5889、MAX5890和的線性度。每次計(jì)算都得到最小和最大DNL和INL誤差編碼和誤差值。實(shí)例還為所有編碼畫(huà)出了傳輸函數(shù),得到INL和DNL。要求用戶輸入前面表格中所列出編碼的電壓測(cè)量值。必須按照所列順序輸入數(shù)值。

            計(jì)算16位線性度的MATLAB腳本

            function Lin16(Measurements)

            %Calculate INL and DNL of a 16-bit device with a 5-4-3-4 segmentation architecture

            % DacCodes is the range of possible input data to the 16-bit DAC

            DacCodes=[0:65535]’;

            %VOUT for each code is calculated from the measured points

            %create a VOUT variable and fill it with zeros

            VOUT=zeros(size(DacCodes));

            %The first measurement is the zero-scale point, or code (0x0000)

            ZS=Measurements(1);

            VOUT(1)=ZS;

            %The last measurement is the full-scale point, or code (0xFFFF)

            FS=Measurements(length(Measurements));

            VOUT(65536)=FS;

            %Midscale is stored at position 43 of the input data array

            MS=Measurements(43);

            %The device has four segmentation levels

            Segments=4;

            %The decimal values for the LSB codes are 1, 2, 4 and 8

            Seg1Codes=[1;2;4;8];

            %The voltages for the LSBs are in positions 2-5 of the input array

            for i=1:4

            Seg1V(i)=Measurements(i+1)-MS;

            end

            %The second level of segmentation is controlled with input codes 16 through

            %112 in steps of 16. Create the code array and fill the measurements for

            %this segmentation level

            Seg2Codes=[16:16:16*7]’;

            for i=1:7

            Seg2V(i)=Measurements(i+5)-MS;

            end

            %Segmentation level 3 uses input codes 128 through 1920 in steps of 128.

            %Create the code array and fill the measurements array.

            Seg3Codes=[128:128:128*(2^4-1)]’;

            for i=1:15

            Seg3V(i)=Measurements(i+12)-MS;

            end

            %Segmentation level 3 uses input codes 2048 through 63,488 in steps of 2048.

            %Create the code array and fill the measurements array.

            Seg4Codes=[2048:2048:2048*(2^5-1)]’;

            for i=1:31

            Seg4V(i)=Measurements(i+27)-ZS;

            end

            %The endpoints have been defined, now fill in the voltages for the

            %remaining points of the DAC transfer function.

            for i = 2:65535

            targetcode=i-1;

            VOUT(i)=ZS;

            for s=31:-1:1

            if Seg4Codes(s)=targetcode

            targetcode=targetcode-Seg4Codes(s);

            VOUT(i)=VOUT(i)+Seg4V(s);

            s=0;

            end

            end

            for s=15:-1:1

            if Seg3Codes(s)=targetcode

            targetcode=targetcode-Seg3Codes(s);

            VOUT(i)=VOUT(i)+Seg3V(s);

            s=0;

            end

            if targetcode==0

            s=0;

            end

            end

            for s=7:-1:1

            if Seg2Codes(s)=targetcode

            targetcode=targetcode-Seg2Codes(s);

            VOUT(i)=VOUT(i)+Seg2V(s);

            s=0;

            end

            if targetcode==0

            s=0;

            end

            end

            if targetcode==0

            s=0;

            end

            for s=4:-1:1

            if Seg1Codes(s)=targetcode

            targetcode=targetcode-Seg1Codes(s);

            VOUT(i)=VOUT(i)+Seg1V(s);

            end

            end

            end

            %Plot the transfer function

            figure(1)

            plot(DacCodes, VOUT);

            xlabel(‘DAC Input Code’);

            ylabel(‘Measured Voltage’);

            axis([0 65536 -1.1 1.1]);

            title(‘DAC Transfer Function’);

            set(gca,’XTick’,0:16384:65536)

            %Calculate the linearity

            LSB=(max(VOUT)-min(VOUT))/65535;

            INL(1)=0;

            DNL(1)=0;

            for i=2:65536

            INL(i)=(VOUT(i)-(VOUT(1)+(i-1)*LSB))/LSB;

            DNL(i)=(VOUT(i)-VOUT(i-1)-LSB)/LSB;

            end

            %Plot INL

            figure(2)

            plot(DacCodes, INL);

            title(‘DAC Integral Linearity’);

            xlabel(‘DAC Input Code’);

            ylabel(‘INL (LSBs)’);

            axis([0 65536 min(INL)*1.1 max(INL)*1.1]);

            set(gca,’XTick’,0:16384:65536)

            %Plot DNL

            figure(3)

            plot(DacCodes, DNL);

            title(‘DAC Differential Linearity’);

            xlabel(‘DAC Input Code’);

            ylabel(‘DNL (LSBs)’);

            axis([0 65536 min(DNL)*1.1 max(DNL)*1.1]);

            set(gca,’XTick’,0:16384:65536)

            txtstr=sprintf(‘INL MAX = %f’, max(INL));

            disp (txtstr);

            txtstr=sprintf(‘INL MIN = %f’, min(INL));

            disp (txtstr);

            txtstr=sprintf(‘DNL MAX = %f’, max(DNL));

            disp (txtstr);

            txtstr=sprintf(‘DNL MIN = %f’, min(DNL));

            disp (txtstr);

            16位腳本產(chǎn)生的曲線


            上一頁(yè) 1 2 3 下一頁(yè)

            關(guān)鍵詞: MAX5891 差分輸出 DAC

            評(píng)論


            相關(guān)推薦

            技術(shù)專(zhuān)區(qū)

            關(guān)閉