Ở phần trước, mình đã hướng dẫn thiết kế 1 form trong C# và cách thiết lập các cài đặt cơ bản cho cổng COM trong C#. Bạn nào chưa đọc thì xem tai lại bài hướng dẫn Tạo form setting trong C# – Phần 1: Tạo Form.
Ở bài hướng dẫn này chúng ta sẽ thử kết nối (Connect), sau đó ngắt kết nối (Disconnect) với cổng COM ảo sau khi thực hiện thành công bước này chúng ta sẽ băt đầu lập trình giao tiếp giữa vi điều khiển với máy tính thông qua cổng COM.
- Xử lý sự kiện Kết nối (Connect).
Thông qua sự kiện Click Button Connect người dùng báo cho Windows thực hiện công việc kết nối cổng COM để truyền nhận tín hiệu. Để khởi tạo sự kiện Connect chúng ta thực hiện theo 3 bước như ở hình dưới:
– Bước 1: Click ( 1 cái ) vào Button Connect
– Bước 2: Click ( 1 cái ) vào biểu tưởng trong hình vuông.
– Bước 3: Double Click vào ô bên cạnh chữ Click.
Chúng ta thêm đoạn code sử lý sự kiện vào và kết quả là được đoạn code:
private void btnConnect_Click(object sender, EventArgs e)
{
// Cai dat thong so cho ComPort
ComPort.PortName = Properties.Settings.Default.PortName;
ComPort.BaudRate = Properties.Settings.Default.BaudRate;
ComPort.DataBits = Properties.Settings.Default.DataBits;
ComPort.StopBits = Properties.Settings.Default.StopBits;
ComPort.Parity = Properties.Settings.Default.Parity;
ComPort.Handshake = Properties.Settings.Default.Handshake;
// Khoi tao su kien nhan du lieu cho ComPort
ComPort.DataReceived += new SerialDataReceivedEventHandler(DataReceive);
// Ket noi voi cong COM
try
{
ComPort.Open(); // Mo cong com
btnDisconnect.Enabled = true;
btnConnect.Enabled = false;
lbStatus.Text = "Port is connecting with " + ComPort.PortName;
}
catch
{
MessageBox.Show("Not connect", "Try", MessageBoxButtons.OK, MessageBoxIcon.Error);
btnConnect.Enabled = true;
}
}
2. Tương tự với Disconnect
private void btnDisconnect_Click(object sender, EventArgs e)
{
if (!(ComPort == null))
{
if (ComPort.IsOpen)
{
try
{
// Wait for the transmit buffer to empty
while (ComPort.BytesToWrite > 0) { }
ComPort.Dispose();
ComPort.Close();
}
catch (TimeoutException) { }
}
}
btnConnect.Enabled = true;
btnDisconnect.Enabled = false;
lbStatus.Text = "Port is closed!";
}
Kết quả kết nối thành công;
[stream provider=youtube flv=http%3A//www.youtube.com/watch%3Fv%3DTgp9E9kAoQw img=x:/img.youtube.com/vi/Tgp9E9kAoQw/0.jpg embed=false share=false width=640 height=360 dock=true controlbar=over bandwidth=high autostart=false responsive=16:9 /]
Kết thúc bước này Project sẽ có thêm đoạn code xử lý. Khi chạy sẽ được như video trên. Để tiện cho các bạn code tới bước này có thể download ở đây:
[dl url=”http://sh.st/eBd3g” title=”Download” desc=”Project bước 2″ type=”RAR”]
Bình luận mới