Windows Forms: Serial Communication in C#
By FoxLearn 7/2/2017 8:38:33 PM 19.62K
Serial Communication [read serial port example] in C#
Step 1: Click New Project, then select Visual C# on the left, then Windows and then select Windows Forms Application. Name your project "COM" and then click OK
Step 2: Design your form as below
Step 3: Add code to button click event handler as below
using System; 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.Threading.Tasks; using System.Windows.Forms; namespace COM { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //Get all ports string[] ports = SerialPort.GetPortNames(); cboPort.Items.AddRange(ports); cboPort.SelectedIndex = 0; btnClose.Enabled = false; } private void btnOpen_Click(object sender, EventArgs e) { btnOpen.Enabled = false; btnClose.Enabled = true; try { //Open port serialPort1.PortName = cboPort.Text; serialPort1.Open(); } catch(Exception ex) { MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void btnSend_Click(object sender, EventArgs e) { try { if (serialPort1.IsOpen) { //Send text to port serialPort1.WriteLine(txtMessage.Text + Environment.NewLine); txtMessage.Clear(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void btnClose_Click(object sender, EventArgs e) { btnOpen.Enabled = true; btnClose.Enabled = false; try { serialPort1.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void btnReceive_Click(object sender, EventArgs e) { try { if (serialPort1.IsOpen) { //Read text from port txtReceive.Text = serialPort1.ReadExisting(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error); } } private void Form1_FormClosing(object sender, FormClosingEventArgs e) { if (serialPort1.IsOpen) serialPort1.Close(); } } }
VIDEO TUTORIALS
Categories
Popular Posts
Visual Studio: Auto increment version
04/01/2024
What is ARM architecture?
04/01/2024