serialport(serialport以16进制发送)
serial port有什么用
1)serial port,即串行端口,可用于两个终端间的数据传递。
现在大多数硬件设备均采用串口技术与计算机相连,因此串口的应用程序开发越来越普遍。例如,在计算机没有安装网卡的情况下,将本机上的一些信息数据 传输到另一台计算机上,那么利用串口通信就可以实现。运行本程序,在“发送数据”文本框中输入要传送的数据,单击【发送】按钮,将传送的数据发送到所选择 的端口号中;单击【接收】按钮,传递的数据被接收到“接收数据”文本框中。
2)也有专指NET编程软件中的serial port类,该类主要实现串口数据通信等。
参考:百度百科“serialport”词条。
串行端口指的是什么意思?
串行端口是一种允许 PC 一次一位地发送或接收数据的接口。它是最古老的接口类型之一,曾一度常用于将打印机和外部调制解调器连接到 PC。现代串行端口用于科学仪器、收银机等系统以及工业机械系统等应用。
与并口相比,串口的数据传输速率较慢。
通常,串口是公口,而并口是母口。为每个端口选择系统资源配置,并由 COM1、COM2、COM3、COM4 等标识。每个 COM 位置代表一个输入/输出 (I/O) 和一个中断请求 (IRQ) 地址。I/O 地址与外围设备(如鼠标或键盘)之间传输和接收数据。
C#中如何使用SerialPort控件向单片机发送数据?
这个功能其实主要是使用C#中的SerialPort控件进行发送的。
方法很简单,只要大家拉一个控件然后处理一下两个方法就可以了,当然第一个是发送数据的,另外一个DataReceived事件是当有数据返回时触发的,意思就是接收数据了。好了下载直接看代码吧。
private?void?btnGo_Click(object?sender,?EventArgs?e)
????????{
?
????????????try
????????????{
????????????????serialPort1.PortName?=?"COM1";
????????????????serialPort1.Open();
????????????????byte[]?data?=?Encoding.Unicode.GetBytes(textBox1.Text);
????????????????string?str?=?Convert.ToBase64String(data);
????????????????serialPort1.WriteLine(str);
????????????????serialPort1.Close();
????????????????MessageBox.Show("数据发送成功!",?"系统提示");
????????????}
????????????catch?(Exception?ex)
????????????{
????????????????MessageBox.Show(ex.Message?.ToString?(),"提示信息");
????????????}
????????}
?
????????//当有数据到达里触发
????????private?void?serialPort1_DataReceived(object?sender,?SerialDataReceivedEventArgs?e)
????????{
????????????serialPort1.PortName?=?"COM1";
????????????serialPort1.Open();
?
????????????byte[]?data?=?Convert.FromBase64String(serialPort1.ReadLine());
????????????textBox2.Text?=?Encoding.Unicode.GetString(data);
????????????serialPort1.Close();
????????????MessageBox.Show("数据接收成功!",?"系统提示");
????????}
c#serialport很不稳定
c#serialport很不稳定是硬件上下载端口和调试打印端口用的同一个串口。mcu接收数据后的处理程序有问题。c#serialport很不稳定通讯出问题都是由于两次通讯间隔太短造成的,这样的情况一般都是这个原因,通讯失败不是本句造成的,和前后的代码有很大关系。