Đây là code trong C# của đệ:
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO.Ports;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
public bool open = true;
public Form1()
{
InitializeComponent();
Com4.DataReceived += new SerialDataReceivedEventHandler(Com4_DataReceived);
}
private void button_open_Click(object sender, EventArgs e)
{
if (open)
{
open = false;
button_open.Text = "Đóng cổng";
label3.Text = "Cổng Com đang mở";
Com4.Open();
}
else
{
open = true;
button_open.Text = "Mở cổng";
label3.Text = "Cổng Com đang đóng";
Com4.Close();
}
}
private void button1_Click(object sender, EventArgs e)
{
Com4.Close();
Close();
}
private void Com4_DataReceived(object sender, SerialDataReceivedEventArgs e)
{
String nhan = ""; // Luu du lieu nhan
if (sender == Com4)
{
nhan = Com4.ReadExisting().ToString();
tBox_Recei.Text = tBox_Recei.Text +nhan; //Lỗi xuất hiện ở dòng này
}
}
private void button_trans_Click(object sender, EventArgs e)
{
if (Com4.IsOpen)
{
Com4.WriteLine(tBox_trans.Text);
tBox_trans.Clear();
}
else MessageBox.Show("Cổng COM chưa mở! Hãy mở cổng COM");
}
}
}
Khi đệ dùng Terminal để gửi-nhận dữ liệu. Chiều từ C# đến Terminal thì rất tốt, chiều ngược lại thì C# báo lỗi. Đệ không biết là lỗi gì? Rất mong được các huynh chỉ giáo!