AD9208 Capture Issue @ 2625MHz Clock with ACE and ADS7-V2EBZ

I didn't succeed to capture AD9208 data using the attached test setup and the following test conditions: Fclock = 2625MHz, FPGA global clock = 328.125MHz, Full BW mode, L=8, M=1, F=1, N'=16 (as recommended in the wiki page). The clock signals have generated with an AD9530 PLL evaluation board. I have used this ACE installer version : http://swdownloads.analog.com/ACE/ACEInstall_1.7.2585.1050.exe

ACE Installer Software 1.7.2585.1050 [Sep 15 17]

I have the same issue with an AD6688 eval board. When I click on run once button the SW didn't stop without displaying any error message. Please advice asap as my project is blocked due to this issue ...

Parents
  • Hi,

    Please see attached on how to enable the software controls in ACE

    Example code is below

    desktop = winqueryreg('HKEY_CURRENT_USER', 'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', 'Desktop');

    delete(strcat(desktop,'\AD7616DumpVA0.csv'));

    delete(strcat(desktop,'\AD7616DumpVA0_meta.xml'));

    % Access the wave form generator

    delete(instrfind);

    wavegen = visa('ni','USB0::0xF4ED::0xEE3A::446J15109::INSTR');

    fopen(wavegen);

     

    % Setup the waveform

    fprintf(wavegen, 'C1: BSWV AMP,2.5V');

    fprintf(wavegen, 'C1: BSWV FRQ,5000HZ');

    fprintf(wavegen, 'C1: OUTP ON');

     

    % Access ACE

    NET.addAssembly('C:\Program Files (x86)\Analog Devices\ACE\Client\AnalogDevices.Csa.Remoting.Clients.dll');

    import AnalogDevices.Csa.Remoting.Clients.*;

    clientManager = ClientManager.Create();

    client = clientManager.CreateRequestClient(2357);

    client.ContextPath = '\System\Subsystem_1\AD7616 Eval Board\AD7616';

     

    %Setup DUT. Set input range to +/-2.5V (It seems like it is actually 2.5Vpp)

    client.SetBitfield('VA0','1','-1');

     

    %Change the waveform and collect some data

    Fs = 1e6;

    step = 1/Fs;

    amplitude = 2^15;

    figure(1);

    speed = 1;

    range_vals = {'SINE','RAMP','SQUARE'};

    localFile = 'c:\DataCaptureShare\';

    remoteFile = '\\<ComputerName>\DataCaptureShare';

    while 1

        %Sweep through amplitude of sine wave and ramp

        for j = 1:2

            ax = subplot(3,1,j);

            cla(ax);

            fprintf(wavegen, 'C1: BSWV FRQ,5000HZ');

            fprintf(wavegen, strcat('C1: BSWV WVTP,',range_vals{j}));       

            for i = 1:25

                client.ContextPath = '\System\Subsystem_1\AD7616 Eval Board\AD7616';    

                fprintf(wavegen, strcat('C1: BSWV AMP,',strcat(num2str(i*.1),'V')));

                pause(speed);

                client.Run('@AsyncDataCapture');

                client.PullCaptureDataToFile('0', strcat(localFile,'\AD7616DumpVA0.csv'),'-1','0','-1');  

                codes = csvread(strcat(remoteFile,'\AD7616DumpVA0.csv'));

                delete(strcat(remoteFile,'\AD7616DumpVA0.csv'));

                delete(strcat(remoteFile,'\AD7616DumpVA0_meta.xml'));

                x = step:step:1000*step;

                subplot(3,1,j);

                hold on;

                plot(x,FindPeak(codes));

                drawnow;

                axis([0,1000*step,-amplitude,amplitude]);

                set(gca,'FontSize',8);

                ylabel('codes');

                xlabel('time');

                title(strcat('Capture ', num2str(i)));

            end

        end

     

        %Sweep through frequency of sine wave

        hold off;

        fprintf(wavegen, strcat('C1: BSWV WVTP,SINE'));

        ax = subplot(3,1,3);

        cla(ax);

        for i = 10:34

            client.ContextPath = '\System\Subsystem_1\AD7616 Eval Board\AD7616';    

            fprintf(wavegen, strcat('C1: BSWV FRQ,',strcat(num2str(i*100),'HZ')));

            pause(speed);

            client.Run('@AsyncDataCapture');

            client.PullCaptureDataToFile('0', strcat(localFile,'\AD7616DumpVA0.csv'),'-1','0','-1');  

            codes = csvread(strcat(remoteFile,'\AD7616DumpVA0.csv'));

            delete(strcat(remoteFile,'\AD7616DumpVA0.csv'));

            delete(strcat(remoteFile,'\AD7616DumpVA0_meta.xml'));

            x = step:step:1000*step;

            subplot(3,1,3);

            hold on;

            plot(x,FindPeak(codes));

            drawnow;

            axis([0,1000*step,-amplitude,amplitude]);

            set(gca,'FontSize',8)

            ylabel('codes');

            xlabel('time');

            title(strcat('Capture ', num2str(i-9)));

        end

    end

    Thanks

    Umesh

    ACERemotingAPI.chm
Reply
  • Hi,

    Please see attached on how to enable the software controls in ACE

    Example code is below

    desktop = winqueryreg('HKEY_CURRENT_USER', 'Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders', 'Desktop');

    delete(strcat(desktop,'\AD7616DumpVA0.csv'));

    delete(strcat(desktop,'\AD7616DumpVA0_meta.xml'));

    % Access the wave form generator

    delete(instrfind);

    wavegen = visa('ni','USB0::0xF4ED::0xEE3A::446J15109::INSTR');

    fopen(wavegen);

     

    % Setup the waveform

    fprintf(wavegen, 'C1: BSWV AMP,2.5V');

    fprintf(wavegen, 'C1: BSWV FRQ,5000HZ');

    fprintf(wavegen, 'C1: OUTP ON');

     

    % Access ACE

    NET.addAssembly('C:\Program Files (x86)\Analog Devices\ACE\Client\AnalogDevices.Csa.Remoting.Clients.dll');

    import AnalogDevices.Csa.Remoting.Clients.*;

    clientManager = ClientManager.Create();

    client = clientManager.CreateRequestClient(2357);

    client.ContextPath = '\System\Subsystem_1\AD7616 Eval Board\AD7616';

     

    %Setup DUT. Set input range to +/-2.5V (It seems like it is actually 2.5Vpp)

    client.SetBitfield('VA0','1','-1');

     

    %Change the waveform and collect some data

    Fs = 1e6;

    step = 1/Fs;

    amplitude = 2^15;

    figure(1);

    speed = 1;

    range_vals = {'SINE','RAMP','SQUARE'};

    localFile = 'c:\DataCaptureShare\';

    remoteFile = '\\<ComputerName>\DataCaptureShare';

    while 1

        %Sweep through amplitude of sine wave and ramp

        for j = 1:2

            ax = subplot(3,1,j);

            cla(ax);

            fprintf(wavegen, 'C1: BSWV FRQ,5000HZ');

            fprintf(wavegen, strcat('C1: BSWV WVTP,',range_vals{j}));       

            for i = 1:25

                client.ContextPath = '\System\Subsystem_1\AD7616 Eval Board\AD7616';    

                fprintf(wavegen, strcat('C1: BSWV AMP,',strcat(num2str(i*.1),'V')));

                pause(speed);

                client.Run('@AsyncDataCapture');

                client.PullCaptureDataToFile('0', strcat(localFile,'\AD7616DumpVA0.csv'),'-1','0','-1');  

                codes = csvread(strcat(remoteFile,'\AD7616DumpVA0.csv'));

                delete(strcat(remoteFile,'\AD7616DumpVA0.csv'));

                delete(strcat(remoteFile,'\AD7616DumpVA0_meta.xml'));

                x = step:step:1000*step;

                subplot(3,1,j);

                hold on;

                plot(x,FindPeak(codes));

                drawnow;

                axis([0,1000*step,-amplitude,amplitude]);

                set(gca,'FontSize',8);

                ylabel('codes');

                xlabel('time');

                title(strcat('Capture ', num2str(i)));

            end

        end

     

        %Sweep through frequency of sine wave

        hold off;

        fprintf(wavegen, strcat('C1: BSWV WVTP,SINE'));

        ax = subplot(3,1,3);

        cla(ax);

        for i = 10:34

            client.ContextPath = '\System\Subsystem_1\AD7616 Eval Board\AD7616';    

            fprintf(wavegen, strcat('C1: BSWV FRQ,',strcat(num2str(i*100),'HZ')));

            pause(speed);

            client.Run('@AsyncDataCapture');

            client.PullCaptureDataToFile('0', strcat(localFile,'\AD7616DumpVA0.csv'),'-1','0','-1');  

            codes = csvread(strcat(remoteFile,'\AD7616DumpVA0.csv'));

            delete(strcat(remoteFile,'\AD7616DumpVA0.csv'));

            delete(strcat(remoteFile,'\AD7616DumpVA0_meta.xml'));

            x = step:step:1000*step;

            subplot(3,1,3);

            hold on;

            plot(x,FindPeak(codes));

            drawnow;

            axis([0,1000*step,-amplitude,amplitude]);

            set(gca,'FontSize',8)

            ylabel('codes');

            xlabel('time');

            title(strcat('Capture ', num2str(i-9)));

        end

    end

    Thanks

    Umesh

    ACERemotingAPI.chm
Children
No Data