Beispiel #1
0
        private void txtBox2_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            int line    = txtBox2.GetLineFromCharIndex(txtBox2.SelectionStart);
            var cmdLine = txtBox2.Lines[line];

            bool bRes = false;

            do
            {
                // Проверяем тип адаптера
                //
                if (!CheckAdaptor("DX1011"))
                {
                    break;
                }

                // В зависимости от выбранной микросхемы, загружаем соответствующий алгоритм и прошивку для XILINX.
                //
                //if( !SendAlgo( @"c:\Program Files (x86)\SP6100\algo1\Sram_t_1_dec.usb" ) )
                //{
                //}

                // В зависимости от выбранной микросхемы, загружаем заполненную структуру.
                //
                if (!SendProgStruc(ref _pinsSDED5))
                {
                    break;
                }
                //Task.Factory.StartNew( () =>
                //{
                //	while( true )
                //	{
                //		Thread.Sleep( 200 );
                //		CheckInsertIC();
                //	}
                //} );

                if (!CheckInsertIC(ref _pinsSDED5))
                {
                    break;
                }

                Log.L.Out("Отправляем в программатор команду на подачу питания на микросхему.");
                var cmd = new CMD_PROG()
                {
                    Cmd = 1, ProgProcNum = 14
                };
                if (!FrmMain._main.USB_Write(2, cmd))
                {
                    break;
                }

                if (!FrmMain._main.USB_ReadPipe(3))
                {
                    Log.L.OutError("Программатор не ответил на запрос.\n");
                    break;
                }

                var start = txtBox.TextLength;
                txtBox.Select(start, 0);
                txtBox.Focus();

                DOCSHELL.Cmd(cmdLine);

                bRes = true;
            }while(false);

            if (!bRes)
            {
                var start = txtBox.TextLength;
                txtBox.Select(start, 0);
                txtBox.Focus();

                Log.L.Out("Отправляем в программатор команду на снятие питания с микросхемы.");
                var cmd = new CMD_PROG()
                {
                    Cmd = 1, ProgProcNum = 15
                };
                bRes = FrmMain._main.USB_Write(2, cmd);

                if (!FrmMain._main.USB_ReadPipe(3))
                {
                    Log.L.OutError("Программатор не ответил на запрос.\n");
                }
            }
        }
Beispiel #2
0
        private void dINFOToolStripMenuItem_Click(object sender, EventArgs e)
        {
            bool bRes = false;

            do
            {
                // Проверяем тип адаптера
                //
                if (!CheckAdaptor("DX1011"))
                {
                    break;
                }

                // В зависимости от выбранной микросхемы, загружаем соответствующий алгоритм и прошивку для XILINX.
                //
                //if( !SendAlgo( @"c:\Program Files (x86)\SP6100\algo1\Sram_t_1_dec.usb" ) )
                //{
                //}

                // В зависимости от выбранной микросхемы, загружаем заполненную структуру.
                //
                if (!SendProgStruc(ref _pinsSDED5))
                {
                    break;
                }
                //Task.Factory.StartNew( () =>
                //{
                //	while( true )
                //	{
                //		Thread.Sleep( 200 );
                //		CheckInsertIC();
                //	}
                //} );

                if (!CheckInsertIC(ref _pinsSDED5))
                {
                    break;
                }

                Log.L.Out("Отправляем в программатор команду на подачу питания на микросхему.");
                var cmd = new CMD_PROG()
                {
                    Cmd = 1, ProgProcNum = 14
                };
                if (!FrmMain._main.USB_Write(2, cmd))
                {
                    break;
                }

                if (!FrmMain._main.USB_ReadPipe(3))
                {
                    Log.L.OutError("Программатор не ответил на запрос.\n");
                    break;
                }

                var start = txtBox.TextLength;
                txtBox.Select(start, 0);
                txtBox.Focus();

                //DOCSHELL.Cmd( "DIMAGE /WINSRC:00000 /FILETRG:sded5.img" );
                DOCSHELL.Cmd("DIMAGE /FILESRC:sded5_0_.img /WINTRG:0");
                //DOCSHELL.Cmd( "DFORMAT /WIN:00000 /BDKL0:512K /BDTLL0:1M /BDTLL1:1M /BDTLL2:1M /BDTLL3:1M" );
                //DOCSHELL.Cmd( "DFORMAT /WIN:00000 /UNFORMAT" );
                //DOCSHELL.Cmd( "DINFO /WIN:00000 /IPL" );
                //DOCSHELL.Cmd( "DINFO /WIN:00000 /BDTL" );
                //mainEntry( "" );

                bRes = true;
            }while(false);

            if (!bRes)
            {
                var start = txtBox.TextLength;
                txtBox.Select(start, 0);
                txtBox.Focus();

                Log.L.Out("Отправляем в программатор команду на снятие питания с микросхемы.");
                var cmd = new CMD_PROG()
                {
                    Cmd = 1, ProgProcNum = 15
                };
                bRes = FrmMain._main.USB_Write(2, cmd);

                if (!FrmMain._main.USB_ReadPipe(3))
                {
                    Log.L.OutError("Программатор не ответил на запрос.\n");
                }
            }
        }