上位机学习笔记汇总
来源:互联网 发布:中国数据库市场规模 编辑:程序博客网 时间:2024/05/16 09:17
//检测可用串口 private void CheckAvailableSeriportPort() { comboBox_PortName.Items.Clear(); for (int i = 1; i < 20; i++) { try { serialPort1.PortName = "COM" + i; serialPort1.Open(); serialPort1.Close(); comboBox_PortName.Items.Add("COM" + i); } catch { } } }
//打开串口 private void Btn_OpenSerialport_Click(object sender, EventArgs e) { try { if (serialPort1.IsOpen) { serialPort1.Close(); Btn_OpenSerialport.Text = "打开串口"; } else { serialPort1.BaudRate = Convert.ToInt32(comboBox_BandRate.Text); serialPort1.PortName = comboBox_PortName.Text; serialPort1.Open(); Btn_OpenSerialport.Text = "关闭串口"; } } catch { MessageBox.Show("串口打开失败!"); } //是否连接数据库 if(checkBox_ConnectDataBase.Checked==true) { ConnectDataBase(); } }
//连接数据库 private void ConnectDataBase() { try { string strConn = @"data source=PANLEE-PC;initial catalog=nGoal;integrated security=true"; SqlConnection conn = new SqlConnection(strConn); conn.Open(); conn.Close(); } catch { MessageBox.Show("未能连接数据库!"); } }
//串口接收数据 public string TimeofDataReceived; private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e) { string data = serialPort1.ReadLine(); TimeofDataReceived = DateTime.Now.ToLongTimeString(); data_Analyse(data); }
//数据分析 private void data_Analyse(string Data) { string data_nodeNumber = Data.Substring(0, 1); string data_value = Data.Substring(1, 4); int node_number = Convert.ToInt32(data_nodeNumber); if (checkBox_ConnectDataBase.Checked == true) { dataBase_coperation(node_number, data_value); } switch(node_number) { case 1: this.Invoke(new Action(() => { chart1.Series[0].Points.AddXY(TimeofDataReceived, Convert.ToInt32(data_value, 16)); chart1.ChartAreas["ChartArea1"].AxisX.ScaleView.Scroll(ScrollType.Last); })); break; case 2: this.Invoke(new Action(() => { chart2.Series[0].Points.AddXY(TimeofDataReceived, Convert.ToInt32(data_value, 16)); chart2.ChartAreas["ChartArea1"].AxisX.ScaleView.Scroll(ScrollType.Last); })); break; case 3: this.Invoke(new Action(() => { chart3.Series[0].Points.AddXY(TimeofDataReceived, Convert.ToInt32(data_value, 16)); chart3.ChartAreas["ChartArea1"].AxisX.ScaleView.Scroll(ScrollType.Last); })); break; case 4: this.Invoke(new Action(() => { chart4.Series[0].Points.AddXY(TimeofDataReceived, Convert.ToInt32(data_value, 16)); chart4.ChartAreas["ChartArea1"].AxisX.ScaleView.Scroll(ScrollType.Last); })); break; default: break; } }
//增加数据到数据库 private void dataBase_coperation(int node_number, string data_value) { string sql; switch(node_number) { case 1: sql = "insert into FrequencyOfNode_1(data_value,data_time) values ('" + data_value + "','" + TimeofDataReceived + "')"; break; case 2: sql = "insert into FrequencyOfNode_2(data_value,data_time) values ('" + data_value + "','" + TimeofDataReceived + "')"; break; case 3: sql = "insert into FrequencyOfNode_3(data_value,data_time) values ('" + data_value + "','" + TimeofDataReceived + "')"; break; default: sql = ""; break; } try { string strConn = @"data source=PANLEE-PC;initial catalog=DB15728;integrated security=true"; SqlConnection conn = new SqlConnection(strConn); conn.Open(); SqlCommand cmd = new SqlCommand(sql, conn); cmd.CommandText = sql; cmd.ExecuteNonQuery(); } catch { MessageBox.Show("Error"); } }
0 0
- 上位机学习笔记汇总
- 上位机笔记
- GPRS/GSM学习笔记(二)--基于上位机开发GSM/GPRS
- STM32与上位机串口通讯的学习笔记(简明的数据帧设计方法)
- C#上位机初学应用笔记
- 上位机
- 上位机
- 上位机
- 上位机
- 上位机
- 上位机
- 笔记(上位机定时与下位机同步)
- VC2012/VS2012 MFC串口通讯上位机程序教程笔记
- VC2012/VS2012 MFC串口通讯上位机程序教程笔记
- Tinyos学习笔记汇总
- NUTCH学习笔记汇总
- ***********Linux学习笔记汇总***********
- Hadoop学习笔记汇总
- Mono源代码学习笔记:Console类(四)
- Oracle语句优化规则汇总(9)
- scikit-learn:3.4. Model persistence
- C 实现最小二乘,步骤以及代码
- Mono源代码学习笔记:Console类(三)
- 上位机学习笔记汇总
- Spring讲解------------本专栏代码包以及word版
- springMVC的全流程使用和分析
- Java 泛型的详解
- LeetCode109_Convert Sorted List to Binary Search t题目tiTree(将链表转成二叉排序树) Java题解
- android studio 引入第三方库
- Android IntentService完全解析 当Service遇到Handler
- Oracle语句优化规则汇总(10)
- 象棋AI算法(二)