Beispiel #1
0
        private void SetLADisplayColors()
        {
            AnalyzerDisplay.BackgroundColorEven = CCEvenBG.SelectedColor;
            AnalyzerDisplay.BackgroundColorOdd  = CCOddBG.SelectedColor;
            AnalyzerDisplay.ForegroundColorEven = CCEvenFG.SelectedColor;
            AnalyzerDisplay.ForegroundColorOdd  = CCOddFG.SelectedColor;

            AnalyzerDisplay.InvalidatePictures();
        }
Beispiel #2
0
        private void btDemo_Click(object sender, EventArgs e)
        {
            uint TStamp;
            int  k = 0;
            uint val;

            AnalyzerDisplay.QS.Clear();
            AnalyzerDisplay.SampleFrequency = (int)cbRate.SelectedValue;

            for (uint i = 0; i < 2000; i++)
            {
                TStamp = i;
                val    = i + (i << 16);
                AnalyzerDisplay.AddSample(TStamp, val);
            }

            AnalyzerDisplay.SampleValid = true;
            dgData.DataSource           = null;
            dgData.DataSource           = AnalyzerDisplay.QS;
        }
Beispiel #3
0
        private void ReadData2()
        {
            byte[] start = buildStartCommand();


            LAReset();
            LAID();

            AnalyzerDisplay.SampleFrequency = (int)cbRate.SelectedValue;
            Sample.TicksPerMicrosecond      = (double)AnalyzerDisplay.SampleFrequency / 1000000.0;

            uint Tick = 0;
            uint val  = 0;

            LASendCommand(start, start.Length);


            byte[] bit32word = new byte[4];
            do
            {
                do
                {
                    bit32word[3] = 0;
                    bit32word[2] = 0; //16
                    bit32word[1] = 0; //24
                    bit32word[0] = 0;

                    if (cg3.Checked)
                    {
                        LARead(1);  //Get 8 bits    reversed order
                        bit32word[3] = LABuff[0];
                    }
                    if (cg2.Checked)
                    {
                        LARead(1);
                        bit32word[2] = LABuff[0];//16
                    }

                    if (cg1.Checked)
                    {
                        LARead(1);
                        bit32word[1] = LABuff[0];//24
                    }

                    if (cg0.Checked)
                    {
                        LARead(1);  //Get 32 bits
                        bit32word[0] = LABuff[0];
                    }


                    val  = (uint)bit32word[3]; //MSB
                    val *= 256;


                    val += (uint)bit32word[2];  //8
                    val *= 256;

                    val += (uint)bit32word[1];  //8
                    val *= 256;

                    val += (uint)bit32word[0];  //LSB

                    AnalyzerDisplay.AddSample(Tick++, Rotate(val));
                } while (serialPort1.BytesToRead > 0);

                Thread.Sleep(200);
            } while (serialPort1.BytesToRead > 0);

            AnalyzerDisplay.SampleValid = true;
            dgData.DataSource           = null;
            dgData.DataSource           = AnalyzerDisplay.QS;
        }
Beispiel #4
0
        private void btRun_Click(object sender, EventArgs e)
        {
            this.Cursor = Cursors.WaitCursor;
            try
            {
                AnalyzerDisplay.ClearSamples();
                AnalyzerDisplay.ChannelVisibility();

                serialPort1.ReadTimeout  = (int)nRTOut.Value;
                serialPort1.WriteTimeout = (int)nWTOut.Value;


                if (cbPort.Text.Trim() != "")
                {
                    serialPort1.PortName = cbPort.Text;
                }
                if (cbBaud.SelectedValue != null)
                {
                    serialPort1.BaudRate = (int)cbBaud.SelectedValue;
                }

                try
                {
                    serialPort1.Open();
                }
                catch (Exception exx)
                {
                    MessageBox.Show("COM Port Error: " + exx.Message);
                }


                try
                {
                    ReadData();
                }

                catch (Exception exx)
                {
                    if (exx is System.TimeoutException)
                    {
                        if (AnalyzerDisplay.QS.Count < 2)
                        {
                            MessageBox.Show(exx.Message);
                        }
                    }
                    else
                    {
                        MessageBox.Show(exx.Message);
                    }
                }
            }
            finally
            {
                this.Cursor = Cursors.Default;
                if (serialPort1.IsOpen)
                {
                    serialPort1.Close();
                }

                AnalyzerDisplay.SampleValid = true;
                dgData.DataSource           = null;
                dgData.DataSource           = AnalyzerDisplay.QS;
            }
        }
Beispiel #5
0
        void ResetSettings()
        {
            // get the channels
            try
            {
                cbRate.DataSource    = Channels.SampleRates;
                cbRate.DisplayMember = "Name";
                cbRate.ValueMember   = "Frequency";


                nBuffSize.DataSource    = Channels.BufferSizes;
                nBuffSize.DisplayMember = "Name";
                nBuffSize.ValueMember   = "Size";


                foreach (string s in SerialPort.GetPortNames())
                {
                    cbPort.Items.Add(s);
                }

                Channels.Clear();
                Channels.ReadXml("ChannelsConfig.xml");
                AnalyzerDisplay.Channels = Channels;



                if (Channels.CurrentSettings.Rows.Count == 0)
                {
                    DSSettings.CurrentSettingsRow R1 = Channels.CurrentSettings.NewCurrentSettingsRow();
                    R1.Baud           = "9600";
                    R1.ComPort        = "COM1";
                    R1.ReadTOut       = 1500;
                    R1.WriteTOut      = 1500;
                    R1.SamplingClock  = 0;
                    R1.ChannelGroup_0 = true;
                    R1.ChannelGroup_1 = true;
                    R1.ChannelGroup_2 = true;
                    R1.ChannelGroup_3 = true;

                    R1.NoiseFilter = true;
                    R1.RLE         = false;

                    Channels.CurrentSettings.AddCurrentSettingsRow(R1);
                }

                if (Channels.Colors.Rows.Count == 0)
                {
                    DSSettings.ColorsRow CR1 = Channels.Colors.NewColorsRow();

                    CR1.ChannelLabelBG     = Color.Gray.ToArgb();
                    CR1.ChannelLabelFG     = Color.Gold.ToArgb();
                    CR1.EvenTraceBackColor = Color.Black.ToArgb();
                    CR1.EvenTraceColor     = Color.Gold.ToArgb();
                    CR1.OddTraceBackColor  = Color.Black.ToArgb();
                    CR1.OddTraceColor      = Color.Cyan.ToArgb();

                    Channels.Colors.AddColorsRow(CR1);
                }


                DSSettings.CurrentSettingsRow R = ((DSSettings.CurrentSettingsRow)Channels.CurrentSettings.Rows[0]);


                cg0.Checked = R.ChannelGroup_0;
                cg1.Checked = R.ChannelGroup_1;
                cg2.Checked = R.ChannelGroup_2;
                cg3.Checked = R.ChannelGroup_3;

                cbClock.SelectedIndex = R.SamplingClock;

                /*try
                 * {
                 * cbClock.SelectedIndex = R.SamplingClock;
                 * }
                 * catch
                 * {
                 * cbClock.SelectedIndex = 0;
                 * }
                 * cbNoiseFilter.Checked = R.NoiseFilter;
                 * cbRLE.Checked = R.RLE;
                 */

                if (serialPort1.IsOpen)
                {
                    serialPort1.Close();
                }

                DSSettings.ColorsRow CR = (DSSettings.ColorsRow)Channels.Colors.Rows[0];

                CCEvenBG.ARGBColor = CR.EvenTraceBackColor;
                CCOddBG.ARGBColor  = CR.OddTraceBackColor;
                CCEvenFG.ARGBColor = CR.EvenTraceColor;
                CCOddFG.ARGBColor  = CR.OddTraceColor;

                SetLADisplayColors();

                AnalyzerDisplay.ChannelVisibility();
                AnalyzerDisplay.InvalidatePictures();

                pnBeforeafter.Caption = string.Format("Before/After Ratio: {0}/{1}", tbRatio.Value, 100 - tbRatio.Value);
            }
            catch (Exception ex)
            {
                string s = ex.Message;
                MessageBox.Show(s);
            }
        }