Exemplo n.º 1
0
        /// <summary>
        /// Sends a file through the serial port.
        /// </summary>
        private void UploadFileWorker(object parameter)
        {
            StreamReader r = new StreamReader((string)parameter);

            while (!r.EndOfStream)
            {
                string line = r.ReadLine();
                for (int i = 0; i < line.Length; i++)
                {
                    mSerialPort.Send(line[i]);
                }
                mSerialPort.Send('\n');
            }
            r.Close();
        }
Exemplo n.º 2
0
        /// <summary>
        /// Sends a file through the serial port.
        /// </summary>
        private void UploadFileWorker(object parameter)
        {
            if (mQuickLoadEnabled)
            {
                mRexBoardForm.QuickUploadSrec((string)parameter);
                foreach (char c in "load\n")
                {
                    mSerialPort.Send(c);
                    Thread.Sleep(10);
                }

                StreamReader r = new StreamReader((string)parameter);
                while (!r.EndOfStream)
                {
                    string line = r.ReadLine();
                    // Just send the start address record the slow way.
                    if (line.StartsWith("S7"))
                    {
                        foreach (char c in line)
                        {
                            mSerialPort.Send(c);
                            Thread.Sleep(10);
                        }
                        mSerialPort.Send('\n');
                    }
                }
                r.Close();
            }
            else
            {
                StreamReader r = new StreamReader((string)parameter);

                if (mTypeLoadAuto)
                {
                    foreach (char c in "load\n")
                    {
                        mSerialPort.Send(c);
                        Thread.Sleep(10); // give time for BASYS board to be ready to recieve
                    }
                }

                while (!r.EndOfStream)
                {
                    string line = r.ReadLine();
                    for (int i = 0; i < line.Length; i++)
                    {
                        mSerialPort.Send(line[i]);
                    }
                    mSerialPort.Send('\n');
                }
                r.Close();
            }

            if (File.Exists((parameter as string).Replace(".srec", ".map")))
            {
                MemoryForm memoryForm = (MemoryForm)mRexBoardForm.mSubforms.Find(f => f.GetType() == typeof(MemoryForm));
                memoryForm.ParseDebugMap((parameter as string).Replace(".srec", ".map"));
            }
        }