示例#1
0
 public MTKPSoCProgrammerDialog()
 {
     InitializeComponent();
     MTKProg    = new MTKPSoCProgrammer();
     Programmer = new MTKPSoCProgrammer();
     if (!Programmer.PSoCProgrammerInstalled || !Programmer.IsCorrectVersion())
     {
         this.Visible = false;
         return;
     }
     AddProgrammers();
 }
示例#2
0
        protected override void OnLoad(EventArgs e)
        {
            if (!Programmer.PSoCProgrammerInstalled || !Programmer.IsCorrectVersion())
            {
                this.DialogResult = DialogResult.Cancel;
                this.Close();
                return;
            }
            ProgrammerPortsComboBox.Text = Programmer.SelectedProgrammer;
            VoltageComboBox.Text         = Programmer.SelectedVoltageSetting;
            AcquireModeToComboBox(Programmer.SelectedAquireMode);
            ConnectorToComboBox(Programmer.SelectedConnectorType);
            HexFilePathTextBox.Text    = Programmer.SelectedHEXFilePath;
            ClockComboBox.Text         = Programmer.SelectedClock;
            ValidateCheckBox.Checked   = Programmer.ValidateAfterProgramming;
            globalProgCheckBox.Checked = Programmer.GlobalProgrammerSelected;
            if (Programmer.SelectedAction == PSoCProgrammerAction.Program)
            {
                ProgramRadioButton.Checked    = true;
                FlashEraseRadioButton.Checked = false;
            }
            else if (Programmer.SelectedAction == PSoCProgrammerAction.Erase)
            {
                ProgramRadioButton.Checked    = false;
                FlashEraseRadioButton.Checked = true;
            }

            if (ProgrammerPortsComboBox.SelectedIndex == -1)
            {
                VoltageComboBox.Enabled         = false;
                ProgModeComboBox.Enabled        = false;
                ConnectorComboBox.Enabled       = false;
                ConnectorComboBox.SelectedIndex = -1;
                ClockComboBox.Enabled           = false;
            }

            if (ProgrammerPortsComboBox.Text != "" || ProgrammerPortsComboBox.Text != "Configure...")
            {
                this.Invoke(new MethodInvoker(() => OKButton.Text      = "Disconnect"));
                this.Invoke(new MethodInvoker(() => OKButton.ForeColor = Color.Gray));
            }
            else
            {
                this.Invoke(new MethodInvoker(() => OKButton.Text      = "Connect"));
                this.Invoke(new MethodInvoker(() => OKButton.ForeColor = Color.Black));
            }

            base.OnLoad(e);
        }
示例#3
0
 private void AddTestButton_Click(object sender, EventArgs e)
 {
     if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[0])
     {
         MTKTestRXPER     RXPERTest  = new MTKTestRXPER(Log, MTKPort, DUTPort);
         MTKTestPERDialog TempDialog = new MTKTestPERDialog();
         TempDialog.Text = "RX PER Test Configuration";
         if (TempDialog.ShowDialog() == DialogResult.OK)
         {
             RXPERTest.ChannelNumber    = TempDialog.ChannelNumber.SelectedIndex;
             RXPERTest.PowerLevel       = int.Parse(MTKTest.GetPowerLevel(TempDialog.PowerLevel.Text));
             RXPERTest.NumberOfPackets  = (int)TempDialog.NumberOfPackets.Value;
             RXPERTest.PacketType       = TempDialog.PacketTypeComboBox.Text;
             RXPERTest.PacketLength     = (int)TempDialog.PacketLengthNumericUpDown.Value;
             RXPERTest.PERPassCriterion = (double)TempDialog.PERPassCriterionNumericUpDown.Value;
             UpdateTestProgramWithNewTest(RXPERTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[1])
     {
         MTKTestTXPER     TXPERTest  = new MTKTestTXPER(Log, MTKPort, DUTPort);
         MTKTestPERDialog TempDialog = new MTKTestPERDialog();
         TempDialog.Text = "TX PER Test Configuration";
         if (TempDialog.ShowDialog() == DialogResult.OK)
         {
             TXPERTest.ChannelNumber    = TempDialog.ChannelNumber.SelectedIndex;
             TXPERTest.PowerLevel       = int.Parse(MTKTest.GetPowerLevel(TempDialog.PowerLevel.Text));
             TXPERTest.NumberOfPackets  = (int)TempDialog.NumberOfPackets.Value;
             TXPERTest.PacketType       = TempDialog.PacketTypeComboBox.Text;
             TXPERTest.PacketLength     = (int)TempDialog.PacketLengthNumericUpDown.Value;
             TXPERTest.PERPassCriterion = (double)TempDialog.PERPassCriterionNumericUpDown.Value;
             UpdateTestProgramWithNewTest(TXPERTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[2])
     {
         MTKTestTXCW       TXCWTest   = new MTKTestTXCW(Log, MTKPort, DUTPort);
         MTKTestTXCWDialog TempDialog = new MTKTestTXCWDialog();
         TempDialog.Text = "TX CW Test Configuration";
         if (TempDialog.ShowDialog() == DialogResult.OK)
         {
             TXCWTest.ChannelNumber   = TempDialog.ChannelNumber.SelectedIndex;
             TXCWTest.PowerLevel      = int.Parse(MTKTest.GetPowerLevel(TempDialog.PowerLevel.Text));
             TXCWTest.DurationForTXCW = (int)TempDialog.DurationForTXCW.Value;
             UpdateTestProgramWithNewTest(TXCWTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[3])
     {
         MTKTestTXP        TXPTest    = new MTKTestTXP(Log, MTKPort, DUTPort);
         MTKTestRxTxDialog TempDialog = new MTKTestRxTxDialog();
         TempDialog.Text = "TX Packet Test Configuration";
         if (TempDialog.ShowDialog() == DialogResult.OK)
         {
             TXPTest.ChannelNumber   = TempDialog.ChannelNumber.SelectedIndex;
             TXPTest.PowerLevel      = int.Parse(MTKTest.GetPowerLevel(TempDialog.PowerLevel.Text));
             TXPTest.NumberOfPackets = (int)TempDialog.NumberOfPackets.Value;
             TXPTest.PacketType      = TempDialog.PacketTypeComboBox.Text;
             TXPTest.PacketLength    = (int)TempDialog.PacketLengthNumericUpDown.Value;
             UpdateTestProgramWithNewTest(TXPTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[4])
     {
         MTKTestRXP        RXPTest    = new MTKTestRXP(Log, MTKPort, DUTPort);
         MTKTestRxTxDialog TempDialog = new MTKTestRxTxDialog();
         TempDialog.Text = "RX Packet Test Configuration";
         if (TempDialog.ShowDialog() == DialogResult.OK)
         {
             RXPTest.ChannelNumber   = TempDialog.ChannelNumber.SelectedIndex;
             RXPTest.PowerLevel      = int.Parse(MTKTest.GetPowerLevel(TempDialog.PowerLevel.Text));
             RXPTest.NumberOfPackets = (int)TempDialog.NumberOfPackets.Value;
             RXPTest.PacketType      = TempDialog.PacketTypeComboBox.Text;
             RXPTest.PacketLength    = (int)TempDialog.PacketLengthNumericUpDown.Value;
             UpdateTestProgramWithNewTest(RXPTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[5])
     {
         MTKPSoCProgrammer MTKProgrammer = new MTKPSoCProgrammer(Log);
         if (MTKProgrammer.PSoCProgrammerInstalled && MTKProgrammer.IsCorrectVersion())
         {
             MTKPSoCProgrammerDialog TempDialog = new MTKPSoCProgrammerDialog(MTKProgrammer);
             if (TempDialog.ShowDialog() == DialogResult.OK)
             {
                 UpdateTestProgramWithNewTest(MTKProgrammer);
             }
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[6])
     {
         MTKTestDelay       MTKDelayInMS = new MTKTestDelay(Log);
         MTKTestDelayDialog TempDialog   = new MTKTestDelayDialog();
         if (TempDialog.ShowDialog() == DialogResult.OK)
         {
             MTKDelayInMS.DelayInMS = (int)TempDialog.DelayNumericUpDown.Value;
             UpdateTestProgramWithNewTest(MTKDelayInMS);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[7])
     {
         if (IsBDAProgrammerPresent())
         {
             MessageBox.Show("Only one instance of BDA Programmer can be added to a test program.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
         }
         else
         {
             MTKTestBDADialog TempDialog = new MTKTestBDADialog(BDAProgrammer);
             if (BDAProgrammer.BDAProgrammer.PSoCProgrammerInstalled && BDAProgrammer.BDAProgrammer.IsCorrectVersion())
             {
                 if (TempDialog.ShowDialog() == DialogResult.OK)
                 {
                     CyBLE_MTK_Application.Properties.Settings.Default.BDA              = TempDialog.BDATextBox.GetTextWithoutDelimiters();
                     CyBLE_MTK_Application.Properties.Settings.Default.BDAIncrement     = BDAProgrammer.AutoIncrementBDA;
                     CyBLE_MTK_Application.Properties.Settings.Default.BDAUseProgrammer = BDAProgrammer.UseProgrammer;
                     CyBLE_MTK_Application.Properties.Settings.Default.Save();
                 }
                 MTKTestBDAProgrammer MTKBDAProgrammer = new MTKTestBDAProgrammer(Log);
                 UpdateTestProgramWithNewTest(MTKBDAProgrammer);
             }
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[8])
     {
         MTKTestAnritsu AnritsuTest = new MTKTestAnritsu(Log);
         UpdateTestProgramWithNewTest(AnritsuTest);
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[9])
     {
         MTKTestSTC       STCTest = new MTKTestSTC(Log, MTKPort, DUTPort);
         MTKTestSTCDialog temp    = new MTKTestSTCDialog(STCTest);
         if (temp.ShowDialog() == DialogResult.OK)
         {
             UpdateTestProgramWithNewTest(STCTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[10])
     {
         MTKTestCUS       CustomTest = new MTKTestCUS(Log, MTKPort, DUTPort);
         MTKTestCUSDialog temp       = new MTKTestCUSDialog(CustomTest);
         if (temp.ShowDialog() == DialogResult.OK)
         {
             UpdateTestProgramWithNewTest(CustomTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[11])
     {
         MTKPSoCProgrammer MTKProgrammer = new MTKPSoCProgrammer(Log);
         if (MTKProgrammer.PSoCProgrammerInstalled && MTKProgrammer.IsCorrectVersion())
         {
             MTKTestProgramAll       CustomTest = new MTKTestProgramAll(Log, MTKPort, DUTPort);
             MTKTestProgramAllDialog temp       = new MTKTestProgramAllDialog(CustomTest);
             if (temp.ShowDialog() == DialogResult.OK)
             {
                 UpdateTestProgramWithNewTest(CustomTest);
             }
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[12])
     {
         MTKTestI2C       CustomTest = new MTKTestI2C(Log);
         MTKTestI2CDialog temp       = new MTKTestI2CDialog(CustomTest);
         if (temp.ShowDialog() == DialogResult.OK)
         {
             UpdateTestProgramWithNewTest(CustomTest);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[13])
     {
         MTKTestRSX       GetRSSI = new MTKTestRSX(Log, MTKPort, DUTPort);
         MTKTestRSXDialog temp    = new MTKTestRSXDialog(GetRSSI);
         if (temp.ShowDialog() == DialogResult.OK)
         {
             UpdateTestProgramWithNewTest(GetRSSI);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[14])
     {
         MTKTestRBA ReadBDA = new MTKTestRBA(Log, MTKPort, DUTPort);
         UpdateTestProgramWithNewTest(ReadBDA);
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[15])
     {
         MTKTestXOCalibration XOCalibration = new MTKTestXOCalibration(Log, MTKPort, DUTPort);
         MTKTestXOCalDialog   temp          = new MTKTestXOCalDialog(XOCalibration);
         if (temp.ShowDialog() == DialogResult.OK)
         {
             UpdateTestProgramWithNewTest(XOCalibration);
         }
     }
     else if (AvailableTestListBox.GetItemText(AvailableTestListBox.SelectedItem) == ListOfAvailableTests[16])
     {
         MTKTestDUTCurrentMeasure dutCurrMeas = new MTKTestDUTCurrentMeasure(Log, MTKPort, DUTPort);
         DUTCurrentMeasureDialog  temp        = new DUTCurrentMeasureDialog();
         if (temp.ShowDialog() == DialogResult.OK)
         {
             UpdateTestProgramWithNewTest(dutCurrMeas);
         }
     }
     else if (ListBoxDoubleClick == false)
     {
         MessageBox.Show("Select a test to add to the program.", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     ListBoxDoubleClick = false;
 }