Beispiel #1
0
        private void DisplayRefreshTimer_Tick(object sender, EventArgs e)
        {
            var nowcontainer = (DCWrapper)Program.DataContainers.Last();

            if (tmpcontainer == null)
            {
                tmpcontainer = nowcontainer;
            }

            tmpcontainer.Convert();
            tmpcontainer.SoftwareDownsample(true);
            bool toberefreshed = false;

            if (tmpcontainer.SDIndex != tmpcontainerpos)
            {
                DisplayQueueManipulation();
                toberefreshed = true;
            }
            if (nowcontainer != tmpcontainer)
            {
                tmpcontainer    = nowcontainer;
                tmpcontainerpos = 0;
                DisplayQueueManipulation();
                toberefreshed = true;
            }
            if (toberefreshed)
            {
                DataViewPanel.Refresh();
            }
        }
Beispiel #2
0
        private void startMeasurement()
        {
            if (measuring)
            {
                return;
            }

            var ow = OutputWave.Instance;

            ow.SetFrequency(0, Frequency[0], 45.0, false);
            ow.SetFrequency(1, Frequency[1], 225.0, true);

            var rbcp    = RBCP.Instance;
            var readout = Readout.Instance;

            keepRunning = true;
            measuring   = true;

            readout.Clean();
            Thread.Sleep(50); //!!! HARD CODED !!!
            readout.Clean();

            rbcp.ToggleIQDataGate(true);
            while (keepRunning)
            {
                var dcwrapper = new DCWrapper(dc_length);
                dcwrapper.SDCount = Program.SoftwareDownsampleCount;
                Program.DataContainers.Add(dcwrapper);
                dcwrapper.StartDateTime = DateTime.Now;
                readout.Read(dcwrapper, dcwrapper.Length);
            }
            rbcp.ToggleIQDataGate(false);

            measuring = false;
            //StartButton.Enabled = true;
        }