//public static double[] force = new double[n]; //public static double[] delx = new double[n]; public MainWindow() { Mainworker.WorkerReportsProgress = true; Mainworker.DoWork += Mainworker_DoWork; Mainworker.ProgressChanged += Mainworker_ProgressChanged; Stageworker.WorkerReportsProgress = true; Stageworker.DoWork += Stageworker_DoWork; Stageworker.ProgressChanged += Stageworker_ProgressChanged; msgchnl = new MessageChannel(); mr = new mrj4commander(msgchnl); InitializeComponent(); msgchnl.msgChanged += new MessageEventHandler(MessageChanged); msgchnl.OnChanged(EventArgs.Empty); jogmode.IsEnabled = false; upbutton.IsEnabled = false; downbutton.IsEnabled = false; posmode.IsEnabled = false; posrun.IsEnabled = false; //distlabel.IsEnabled = false; //disttb.IsEnabled = false; steplabel.IsEnabled = false; steptb.IsEnabled = false; port = new SerialPort(); try { if (port.IsOpen == true) { port.Close(); } port.PortName = "COM13";//Change COM port here or Load Cell port.BaudRate = 9600; port.DataBits = 8; port.StopBits = (StopBits)Enum.Parse(typeof(StopBits), "1"); port.Parity = (Parity)Enum.Parse(typeof(Parity), "2"); System.Threading.Thread.Sleep(2000); port.DataReceived += new SerialDataReceivedEventHandler(Datahnd); port.Open(); } catch (Exception e) { Console.WriteLine("Error in openning the COM Port\n" + e.Message + "\n" + e.StackTrace + "\nException is: \n" + e.InnerException); Console.ReadKey(); } Voltport = new SerialPort(); try { if (Voltport.IsOpen == true) { Voltport.Close(); } Voltport.PortName = "COM4";//Change COM port here or Votage Reading Voltport.BaudRate = 9600; Voltport.DataBits = 8; Voltport.StopBits = (StopBits)Enum.Parse(typeof(StopBits), "1"); Voltport.Parity = (Parity)Enum.Parse(typeof(Parity), "0"); System.Threading.Thread.Sleep(2000); Voltport.DataReceived += new SerialDataReceivedEventHandler(VoltportReceive); Voltport.Open(); //Voltport.Write("*IDN?"); //Thread.Sleep(1000); //Voltage.Content = "IDN: " + volt; } catch (Exception e) { Console.WriteLine("Error in openning the COM Port\n" + e.Message + "\n" + e.StackTrace + "\nException is: \n" + e.InnerException); Console.ReadKey(); } string path = ""; // Configure open file dialog box Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog(); dlg.Title = "Save Log File Location"; dlg.InitialDirectory = "C:\\piezodata"; dlg.FileName = "LogFile"; // Default file name dlg.DefaultExt = ".csv"; // Default file extension dlg.Filter = "Comma Seperated Values (.csv)|*.csv"; // Filter files by extension //dlg.Filter = "Text File (.txt)|*.txt"; // Show open file dialog box Nullable <bool> result = dlg.ShowDialog(); // Process open file dialog box results if (result == true) { path = dlg.FileName; } else { path = "C:\\piezodata\\default"; } saveFilePath.Content = path.ToString(); datafile = System.IO.Path.Combine(path); this.Mainworker.RunWorkerAsync(); }
public mrj4commander(MessageChannel i_msgchnl) { this.msgchnl = i_msgchnl; ec = ErrorCode.None; readBuffer = new byte[32]; try { msgchnl.setcurrMessage("Initilazing MRJ-4"); // Find and open the usb device. MyUsbDevice = UsbDevice.OpenUsbDevice(MyUsbFinder); // If the device is open and ready if (MyUsbDevice == null) { throw new Exception("Device Not Found."); } // If this is a "whole" usb device (libusb-win32, linux libusb) // it will have an IUsbDevice interface. If not (WinUSB) the // variable will be null indicating this is an interface of a // device. wholeUsbDevice = MyUsbDevice as IUsbDevice; if (!ReferenceEquals(wholeUsbDevice, null)) { // This is a "whole" USB device. Before it can be used, // the desired configuration and interface must be selected. // Select config #1 wholeUsbDevice.SetConfiguration(1); // Claim interface #0. wholeUsbDevice.ClaimInterface(0); } // open read endpoint 1. reader = MyUsbDevice.OpenEndpointReader(ReadEndpointID.Ep01); // open write endpoint 1. writer = MyUsbDevice.OpenEndpointWriter(WriteEndpointID.Ep02); msgchnl.setcurrMessage("Initilazing Completed"); } catch (Exception ex) { msgchnl.setcurrMessage((ec != ErrorCode.None ? ec + ":" : String.Empty) + ex.Message); } this.posdirection = posup; this.jogdirection = jogup; #region ASCII encode definition encode.Add("0 ", 0x20); encode.Add("00", 0x30); encode.Add("01", 0x31); encode.Add("02", 0x32); encode.Add("03", 0x33); encode.Add("04", 0x34); encode.Add("05", 0x35); encode.Add("06", 0x36); encode.Add("07", 0x37); encode.Add("08", 0x38); encode.Add("09", 0x39); encode.Add("0A", 0x41); encode.Add("0B", 0x42); encode.Add("0C", 0x43); encode.Add("0D", 0x44); encode.Add("0E", 0x45); encode.Add("0F", 0x46); encode.Add("0L", 0x4C); encode.Add("0O", 0x4F); encode.Add("0P", 0x50); encode.Add("0R", 0x52); encode.Add("0S", 0x53); encode.Add("0T", 0x54); #endregion #region ASCII decode definition decode.Add(0x30, '0'); decode.Add(0x31, '1'); decode.Add(0x32, '2'); decode.Add(0x33, '3'); decode.Add(0x34, '4'); decode.Add(0x35, '5'); decode.Add(0x36, '6'); decode.Add(0x37, '7'); decode.Add(0x38, '8'); decode.Add(0x39, '9'); decode.Add(0x41, 'A'); decode.Add(0x42, 'B'); decode.Add(0x43, 'C'); decode.Add(0x44, 'D'); decode.Add(0x45, 'E'); decode.Add(0x46, 'F'); #endregion #region Hex Conversion definition hexdic.Add(0, '0'); hexdic.Add(1, '1'); hexdic.Add(2, '2'); hexdic.Add(3, '3'); hexdic.Add(4, '4'); hexdic.Add(5, '5'); hexdic.Add(6, '6'); hexdic.Add(7, '7'); hexdic.Add(8, '8'); hexdic.Add(9, '9'); hexdic.Add(10, 'A'); hexdic.Add(11, 'B'); hexdic.Add(12, 'C'); hexdic.Add(13, 'D'); hexdic.Add(14, 'E'); hexdic.Add(15, 'F'); #endregion }