private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { if (mainThread != null) { mainThread.Abort(); } PLAASerialPort.GetInstance().Abort(); }
private void getData() { bool isOver = false; while (!isOver) { lock (port.Lockbuffer) { if (port.DateList.Count < 1) { continue; } for (int i = 0; i < port.DateList.Count; i++) { byte[] data = port.DateList.Dequeue(); Trace.WriteLine(PLAASerialPort.byteToHexStr(data)); // 数据帧 if (data.Length == 19) { Equipment eqoo = mainList.Find(c => c.Address == data[1] && c.SensorType == (EM_HighType)data[2] && c.GasType == data[3]); if (eqoo == null) { continue; } EquipmentData ed = new EquipmentData(); ed.AddTime = Parse.GetDateTime(data, 9); // DateTime format_dt; // DateTime.TryParse(ed.AddTime,out format_dt); // ed.AddTime = format_dt; ed.Chroma = (float)Math.Round(Parse.GetFloatValue(data, 5), eqoo.Point); ed.EquipmentID = eqoo.ID; ed.UnitType = data[4]; if (!InputDataDal.AddOne(ed)) { LogLib.Log.GetLogger(this).Warn("插入数据库错误"); } this.Invoke(new Action <string>(addText), string.Format("{0},{1},浓度:{2},时间:{3}\r\n", eqoo.Name, eqoo.GasName, ed.Chroma, ed.AddTime)); } else if (data.Length == 6) // 结束桢 { isOver = true; port.IsInputData = false; this.Invoke(new Action <string>(addText), "上传完成----------------------------------------------------"); this.Invoke(new Action <string>(c => simpleButton1.Text = c), "开始上传"); break; } } } Thread.Sleep(200); } }
private void Form_InputData_Load(object sender, EventArgs e) { mainList = EquipmentDal.GetAllList(); var sql = from a in mainList group a by a.Name into g select new { g.Key }; sql.ToList().ForEach(c => { comboBoxEdit1.Properties.Items.Add(c.Key); }); if (sql.ToList().Count > 0) { comboBoxEdit1.SelectedIndex = 0; } port = PLAASerialPort.GetInstance(); }
private void simpleButtonCommunication_Click(object sender, EventArgs e) { if (simpleButtonCommunication.Text == "连接") { simpleButtonCommunication.Text = "断开"; comboBoxEditCommunication.Enabled = false; comboBoxEdit5.Enabled = false; comboBoxEdit6.Enabled = false; PLAASerialPort.Open(comboBoxEdit5.Text, int.Parse(comboBoxEdit6.Text)); } else { simpleButtonCommunication.Text = "连接"; comboBoxEditCommunication.Enabled = true; comboBoxEdit5.Enabled = true; comboBoxEdit6.Enabled = true; PLAASerialPort.Close(); } }
/// <summary> /// 获取界面系统配置参数 /// </summary> /// <returns></returns> private void SaveSystemConfig() { try { systemConfig.Port = comboBoxEdit_Port.Text; systemConfig.BaudRate = int.Parse(textEdit_BaudRate.Text); systemConfig.Preiod = int.Parse(textEdit_Preod.Text); systemConfig.PreiodUnit = comboBoxEdit_second.SelectedIndex; systemConfig.Xrange = int.Parse(textEdit_RealTime.Text); systemConfig.Temperature = float.Parse(textEdit_Temperature.Text); systemConfig.Volume = float.Parse(textEdit_Volume.Text); systemConfig.Molecular = int.Parse(textEdit_Molecular.Text); systemConfig.BackupPath = textEdit_Path.Text; systemConfig.Isbackup = checkEdit_Back.Checked; systemConfig.BackupPreiod = int.Parse(textEdit_BackupPreiod.Text); systemConfig.CenterIP = textEdit_CenterIP.Text; systemConfig.CenterPort = int.Parse(textEdit_centerPort.Text); systemConfig.Isauto = checkEdit_autosample.Checked; if (PLAASerialPort.serialport.IsOpen) { PLAASerialPort.GetInstance().Close(); PLAASerialPort.GetInstance().Open(systemConfig.Port, systemConfig.BaudRate); Gloabl.IsOpen = true; } else { PLAASerialPort.GetInstance().Open(systemConfig.Port, systemConfig.BaudRate); Gloabl.IsOpen = true; } XmlSerializerProvider xml = new XmlSerializerProvider(); xml.Serialize <SystemConfig>(AppDomain.CurrentDomain.BaseDirectory + "\\SystemConfig.xml", systemConfig); XtraMessageBox.Show("保存成功"); } catch (Exception ex) { XtraMessageBox.Show("保存失败"); LogLib.Log.GetLogger(this).Warn(ex); } }
// 初始化Form private bool InitializeForm() { try { Gloabl.IsAdmin = false; richTextBox1.Dock = DockStyle.None; chartControl_Main.Dock = DockStyle.Fill; if (!ReadSystemConfig()) { return(false); } // 登录 //Form_Login login = new Form_Login(systemConfig); //login.ShowDialog(); //if (login.DialogResult != System.Windows.Forms.DialogResult.OK) //{ // this.Close(); //} //else if (Gloabl.IsAdmin) //{ // chartControl_Main.Dock = DockStyle.Top; // richTextBox1.Dock = DockStyle.Fill; // richTextBox1.Visible = true; //} // 设置皮肤 defaultLookAndFeel1.LookAndFeel.SkinName = systemConfig.SkinName; //DevExpress.LookAndFeel.UserLookAndFeel.Default.SetSkinStyle(systemConfig.SkinName); // 设置数据库路径 SqliteHelper.SetConnectionString(string.Format("Data Source={0};Version=3;", AppDomain.CurrentDomain.BaseDirectory + "\\SDData.db3")); //SqliteHelper.SetConnectionString(AppDomain.CurrentDomain.BaseDirectory + "SDData.db"); mainList = EquipmentDal.GetAllList(); gridControl_Main.DataSource = mainList; gridView_Main.BestFitColumns(); gridControl_Add.DataSource = mainList; gridView_Add.BestFitColumns(); DateTime time = DateTime.Now; dateEdit_Start.DateTime = time.AddDays(-7); dateEdit_End.DateTime = time; dateEdit_StartAlert.DateTime = time.AddDays(-7); dateEdit_EndAlert.DateTime = time; InitSeries(); if (mainList.Count < 1) { LogLib.Log.GetLogger(this).Warn("mainList为空"); return(true); } mainList.ForEach(c => { comboBoxEdit_ID.Properties.Items.Add(c.Address); }); Equipment eee = mainList.First(); if (eee != null) { textEdit_AddressAdd.Text = eee.Address.ToString(); textEdit_GasNameAdd.Text = eee.EName; textEdit_RangeAdd.Text = eee.Range.ToString(); comboBoxEdit_UnitAdd.SelectedItem = eee.Unit; comboBoxEdit_PointAdd.SelectedIndex = eee.Point; textEdit_ReviseAdd.Text = eee.Revise.ToString(); textEdit_HighAdd.Text = eee.HighAlert.ToString(); textEdit_LowAdd.Text = eee.LowAlert.ToString(); comboBoxEdit_OpenAdd.SelectedIndex = eee.AlertType; textEdit_PlaceAdd.Text = eee.Place.ToString(); } player = new SoundPlayer(); player.SoundLocation = AppDomain.CurrentDomain.BaseDirectory + "\\" + systemConfig.SoundName; player.Load(); if (!PLAASerialPort.GetInstance().Open(systemConfig.Port, systemConfig.BaudRate)) { LogLib.Log.GetLogger(this).Warn("串口打开失败"); return(false); } Gloabl.IsOpen = true; } catch (Exception ex) { LogLib.Log.GetLogger(this).Warn(ex); return(false); } return(true); }
private void MainXtraForm_FormClosing(object sender, FormClosingEventArgs e) { PLAASerialPort.Close(); }