コード例 #1
0
        private void buttonTestWaveformContinuous_Click(object sender, EventArgs e)
        {
            // Create a waveform object in PC RAM from waveform file
            SD_Wave wave = new SD_Wave("..\\..\\..\\..\\..\\..\\..\\Waveforms\\Triangular.csv");

            if (wave.getStatus() < 0)
            {
                printToConsole("Error opening waveform File");
                return;
            }
            int nWave = 0;

            // Switch off angle modulation and Amplitude modulation
            moduleAOU.modulationAngleConfig(nChannel, SD_ModulationTypes.AOU_MOD_OFF, 0);
            moduleAOU.modulationAmplitudeConfig(nChannel, SD_ModulationTypes.AOU_MOD_OFF, 0);

            // Erase all waveforms from module memory and load the waveform waveID in position nWave
            moduleAOU.waveformFlush();
            moduleAOU.waveformLoad(wave, nWave);

            // Config amplitude and setup AWG in nChannel
            moduleAOU.channelAmplitude(nChannel, 1.2);                                   // 1.2 Volts Peak
            moduleAOU.channelWaveShape(nChannel, SD_Waveshapes.AOU_AWG);

            // Flush channel waveform queue
            moduleAOU.AWGflush(nChannel);

            // Queue waveform nWave in nChannel
            moduleAOU.AWGqueueWaveform(nChannel, nWave, SD_TriggerModes.AUTOTRIG, 0, 0, 0);  // Cycles = 0

            printToConsole("Module configuration successfull. Press CONTINUE to start the AWG");
            runPause();

            moduleAOU.AWGstart(nChannel);

            printToConsole("AWG started. Press CONTINUE to pause the AWG.");
            runPause();

            moduleAOU.AWGpause(nChannel);

            printToConsole("AWG paused. Press CONTINUE to resume the AWG.");
            runPause();

            moduleAOU.AWGresume(nChannel);

            printToConsole("AWG resumed. Press CONTINUE to stop the AWG.");
            runPause();

            moduleAOU.AWGstop(nChannel);

            printToConsole("AWG stopped. Press CONTINUE to start the AWG.");
            runPause();

            moduleAOU.AWGstart(nChannel);

            printToConsole("AWG started. Press CONTINUE to stop the AWG.");
            runPause();

            moduleAOU.AWGstop(nChannel);

            printToConsole("AWG Stopped. Press CONTINUE to finish.");
            runPause();
        }