using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO.Ports; using System.Linq; using System.Text; using System.Windows.Forms; namespace SerialSignals { public partial class Form1 : Form { public Form1() { InitializeComponent(); initSerialPort(); } private System.IO.Ports.SerialPort theSerialPortA = new SerialPort(); private System.IO.Ports.SerialPort theSerialPortB = new SerialPort(); private System.IO.Ports.SerialPort theSerialPortC = new SerialPort(); private System.IO.Ports.SerialPort theSerialPortD = new SerialPort(); private void initSerialPort() { try { foreach (string s in SerialPort.GetPortNames()) { cbSerialPortA.Items.Add(s); cbSerialPortB.Items.Add(s); cbSerialPortC.Items.Add(s); cbSerialPortD.Items.Add(s); } cbSerialPortA.SelectedIndex = 0; cbSerialPortB.SelectedIndex = 0; cbSerialPortC.SelectedIndex = 0; cbSerialPortD.SelectedIndex = 0; cbDataBitsA.SelectedIndex = 1; cbDataBitsB.SelectedIndex = 1; cbDataBitsC.SelectedIndex = 1; cbDataBitsD.SelectedIndex = 1; cbParityA.SelectedIndex = 2; cbParityB.SelectedIndex = 2; cbParityC.SelectedIndex = 2; cbParityD.SelectedIndex = 2; cbBaudA.SelectedIndex = 7; cbBaudB.SelectedIndex = 7; cbBaudC.SelectedIndex = 7; cbBaudD.SelectedIndex = 7; cbStopA.SelectedIndex = 1; cbStopB.SelectedIndex = 1; cbStopC.SelectedIndex = 1; cbStopD.SelectedIndex = 1; } catch (Exception) { } } private void cbOpenPortA_Click(object sender, EventArgs e) { try { theSerialPortA.PortName = cbSerialPortA.Items[cbSerialPortA.SelectedIndex].ToString(); theSerialPortA.BaudRate = Convert.ToInt32((cbBaudA.Items[cbBaudA.SelectedIndex]).ToString()); string text = cbParityA.Items[cbParityA.SelectedIndex].ToString(); if (text == "Even") theSerialPortA.Parity = Parity.Even; else if (text == "Mark") theSerialPortA.Parity = Parity.Mark; else if (text == "None") theSerialPortA.Parity = Parity.None; else if (text == "Odd") theSerialPortA.Parity = Parity.Odd; else if (text == "Space") theSerialPortA.Parity = Parity.Space; text = cbStopA.Items[cbStopA.SelectedIndex].ToString(); if (text == "0") theSerialPortA.StopBits = StopBits.None; else if (text == "1") theSerialPortA.StopBits = StopBits.One; else if (text == "1.5") theSerialPortA.StopBits = StopBits.OnePointFive; else if (text == "2") theSerialPortA.StopBits = StopBits.Two; theSerialPortA.DataBits = Convert.ToInt32((cbDataBitsA.Items[cbDataBitsA.SelectedIndex]).ToString()); theSerialPortA.Open(); cbOpenPortA.Enabled = false; cbClosePortA.Enabled = true; } catch (Exception) { MessageBox.Show("Öffnen des seriellen Ports A fehlgeschlagen", "Sorry no Bonus, insert coin to continue the game"); } //theSerialPort.DtrEnable = true; //theSerialPort.RtsEnable = true; { } } private void cbOpenPortB_Click(object sender, EventArgs e) { try { theSerialPortB.PortName = cbSerialPortB.Items[cbSerialPortB.SelectedIndex].ToString(); theSerialPortB.BaudRate = Convert.ToInt32((cbBaudB.Items[cbBaudB.SelectedIndex]).ToString()); string text = cbParityB.Items[cbParityB.SelectedIndex].ToString(); if (text == "Even") theSerialPortB.Parity = Parity.Even; else if (text == "Mark") theSerialPortB.Parity = Parity.Mark; else if (text == "None") theSerialPortB.Parity = Parity.None; else if (text == "Odd") theSerialPortB.Parity = Parity.Odd; else if (text == "Space") theSerialPortA.Parity = Parity.Space; text = cbStopB.Items[cbStopB.SelectedIndex].ToString(); if (text == "0") theSerialPortB.StopBits = StopBits.None; else if (text == "1") theSerialPortB.StopBits = StopBits.One; else if (text == "1.5") theSerialPortB.StopBits = StopBits.OnePointFive; else if (text == "2") theSerialPortB.StopBits = StopBits.Two; theSerialPortB.DataBits = Convert.ToInt32((cbDataBitsB.Items[cbDataBitsB.SelectedIndex]).ToString()); theSerialPortB.Open(); cbOpenPortB.Enabled = false; cbClosePortB.Enabled = true; } catch (Exception) { MessageBox.Show("Öffnen des seriellen Ports B fehlgeschlagen", "Sorry no Bonus, insert coin to continue the game"); } //theSerialPort.DtrEnable = true; //theSerialPort.RtsEnable = true; { } } private void cbOpenPortC_Click(object sender, EventArgs e) { try { theSerialPortC.PortName = cbSerialPortC.Items[cbSerialPortC.SelectedIndex].ToString(); theSerialPortC.BaudRate = Convert.ToInt32((cbBaudC.Items[cbBaudC.SelectedIndex]).ToString()); string text = cbParityC.Items[cbParityC.SelectedIndex].ToString(); if (text == "Even") theSerialPortC.Parity = Parity.Even; else if (text == "Mark") theSerialPortC.Parity = Parity.Mark; else if (text == "None") theSerialPortC.Parity = Parity.None; else if (text == "Odd") theSerialPortC.Parity = Parity.Odd; else if (text == "Space") theSerialPortC.Parity = Parity.Space; text = cbStopC.Items[cbStopC.SelectedIndex].ToString(); if (text == "0") theSerialPortC.StopBits = StopBits.None; else if (text == "1") theSerialPortC.StopBits = StopBits.One; else if (text == "1.5") theSerialPortC.StopBits = StopBits.OnePointFive; else if (text == "2") theSerialPortC.StopBits = StopBits.Two; theSerialPortC.DataBits = Convert.ToInt32((cbDataBitsC.Items[cbDataBitsC.SelectedIndex]).ToString()); theSerialPortC.Open(); cbOpenPortC.Enabled = false; cbClosePortC.Enabled = true; } catch (Exception) { MessageBox.Show("Öffnen des seriellen Ports C ( Fernseher und Baum) fehlgeschlagen", "Sorry no Bonus, insert coin to continue the game"); } //theSerialPort.DtrEnable = true; //theSerialPort.RtsEnable = true; { } } private void cbOpenPortD_Click(object sender, EventArgs e) { try { theSerialPortD.PortName = cbSerialPortD.Items[cbSerialPortD.SelectedIndex].ToString(); theSerialPortD.BaudRate = Convert.ToInt32((cbBaudD.Items[cbBaudD.SelectedIndex]).ToString()); string text = cbParityD.Items[cbParityD.SelectedIndex].ToString(); if (text == "Even") theSerialPortD.Parity = Parity.Even; else if (text == "Mark") theSerialPortD.Parity = Parity.Mark; else if (text == "None") theSerialPortD.Parity = Parity.None; else if (text == "Odd") theSerialPortD.Parity = Parity.Odd; else if (text == "Space") theSerialPortD.Parity = Parity.Space; text = cbStopD.Items[cbStopD.SelectedIndex].ToString(); if (text == "0") theSerialPortD.StopBits = StopBits.None; else if (text == "1") theSerialPortD.StopBits = StopBits.One; else if (text == "1.5") theSerialPortD.StopBits = StopBits.OnePointFive; else if (text == "2") theSerialPortD.StopBits = StopBits.Two; theSerialPortD.DataBits = Convert.ToInt32((cbDataBitsD.Items[cbDataBitsD.SelectedIndex]).ToString()); theSerialPortD.Open(); cbOpenPortD.Enabled = false; cbClosePortD.Enabled = true; } catch (Exception) { MessageBox.Show("Öffnen des seriellen Ports D (FREI) fehlgeschlagen", "Sorry no Bonus, insert coin to continue the game"); } //theSerialPort.DtrEnable = true; //theSerialPort.RtsEnable = true; { } } private void cbClosePortA_Click(object sender, EventArgs e) { theSerialPortA.Close(); cbOpenPortA.Enabled = true; cbClosePortA.Enabled = false; } private void cbClosePortB_Click(object sender, EventArgs e) { theSerialPortB.Close(); cbOpenPortB.Enabled = true; cbClosePortB.Enabled = false; } private void cbClosePortC_Click(object sender, EventArgs e) { theSerialPortC.Close(); cbOpenPortC.Enabled = true; cbClosePortC.Enabled = false; } private void cbClosePortD_Click(object sender, EventArgs e) { theSerialPortD.Close(); cbOpenPortD.Enabled = true; cbClosePortD.Enabled = false; } private void cbDTRAOn_Click(object sender, EventArgs e) { theSerialPortA.DtrEnable = true; } private void cbDTRAOff_Click(object sender, EventArgs e) { theSerialPortA.DtrEnable = false; } private void cbRTSAOn_Click(object sender, EventArgs e) { theSerialPortA.RtsEnable = true; } private void cbRTSAOff_Click(object sender, EventArgs e) { theSerialPortA.RtsEnable = false; } private void cbDTRBOn_Click(object sender, EventArgs e) { theSerialPortB.DtrEnable = true; } private void cbDTRBOff_Click(object sender, EventArgs e) { theSerialPortB.DtrEnable = false; } private void cbRTSBOn_Click(object sender, EventArgs e) { theSerialPortB.RtsEnable = true; } private void cbRTSBOff_Click(object sender, EventArgs e) { theSerialPortB.RtsEnable = false; } private void cbDTRCOn_Click(object sender, EventArgs e) { theSerialPortC.DtrEnable = true; } private void cbDTRCOff_Click(object sender, EventArgs e) { theSerialPortC.DtrEnable = false; } private void cbRTSCOn_Click(object sender, EventArgs e) { theSerialPortC.RtsEnable = true; } private void cbRTSCOff_Click(object sender, EventArgs e) { theSerialPortC.RtsEnable = false; } private void cbDTRDOn_Click(object sender, EventArgs e) { theSerialPortD.DtrEnable = true; } private void cbDTRDOff_Click(object sender, EventArgs e) { theSerialPortD.DtrEnable = false; } private void cbRTSDOn_Click(object sender, EventArgs e) { theSerialPortD.RtsEnable = true; } private void cbRTSDOff_Click(object sender, EventArgs e) { theSerialPortD.RtsEnable = false; } if(theSerialPortA.IsOpen() theSerialPortA.Close;() if(theSerialPortB.IsOpen(); theSerialPortB.Close(); if(theSerialPortC.IsOpen); theSerialPortC.Close(); if(theSerialPortD.IsOpen); theSerialPortD.Close; private void label3_Click(object sender, EventArgs e) { } private void label18_Click(object sender, EventArgs e) { } private void label17_Click(object sender, EventArgs e) { } private void label20_Click(object sender, EventArgs e) { } private void label19_Click(object sender, EventArgs e) { } private void cbSerialPortA_SelectedIndexChanged(object sender, EventArgs e); private void timer1_Tick(object sender, EventArgs e) { } private void panel4_Paint() { } private void panel3_Paint() { } private void label18_Click() { } private void Form1_Load(object sender, EventArgs e) { } } }