// 用来打开串口的按钮 private void OpenComButton_Click(object sender, RoutedEventArgs e) { if (serial != null && serial.rs232.ComPortIsOpen) // 用串口的这个参数来获取串口是否打开这一状态 { // 已经打开了就提示一下,啥也不干 MessageBox.Show("串口已经打开"); return; } else { // 如果串口还未打开,就尝试打开串口 serial = new Serialmanip(); serial.Com_open(); // 应该都会成功吧,如果不成功应该在底层就会报错。保险起见留一个这个 if (serial.rs232.ComPortIsOpen) { TheTextBox.Text = "COM3 opened." + Environment.NewLine; _output.AppendLine("COM3 opened." + Environment.NewLine); } else { MessageBox.Show("串口打开失败,妹有打开"); } return; } }
// 将16进制的帧内容写进字符串中返回。 //public string FrameBytesInString() //{ // return frm.frame_header.ToString("X2") // + " " + frm.frame_type.ToString("X2") // + " " + frm.parameter_type.ToString("X2") // + " " + frm.port_id.ToString("X2") // + " " + frm.command.ToString("X2"); //} // 发送frm到指定的串口。 public bool SendFrame(Serialmanip com) { com.rs232.send(Tools.StructToBytes(frm)); return(true); }