C#SerialPort类的学习

最近频繁使用串口,有必要好好学习下串口技术。C#SerialPort类:


1.可以看出,使用时需要引进 System.IO.Ports空间命名。

2.构造函数有好几种,这个是常用的,如增加端口名(COM1,COM2等),速度9600等,奇偶数,数位,停止等。

SerialPort类的基本属性:


常用函数:

public static string[] GetPortNames();获取当前计算机的串行端口名称数组。

 public void Close();关闭端口连接,将 System.IO.Ports.SerialPort.IsOpen 属性设置为 false,并释放内部 stream 对象.

public void DiscardInBuffer()丢弃来自串口的接收缓冲区的数据。

public void DiscardOutBuffer()丢弃来自串口的传输缓冲区的数据。

public void Open();打开一个新的串行端口连接。如出现一些状况会出现异常报错:

a.前进程或系统上的另一个进程已经打开了指定的 COM 端口

b.打开的实例的一个或多个属性无效,如设定参数不是规定的参数。

c.端口名称不是以“COM”开始的。

d.此端口处于无效状态,或已经打开。

综合上述,使用时需要注意!!进行检查再打开。

 public int Read(char[] buffer, int offset, int count);

输入缓冲区中读取大量字符,然后将这些字符写入到一个字符数组中指定的偏移量处;buffer---输入写入到其中的字符数组; offset---缓冲区数组中从其开始读取的偏移量;count---要读取的字符数;返回结果---读取的字符数。

 public int Read(byte[] buffer, int offset, int count);类似上,一个为字符数组一个为字节数组。其他类似。在ASCI码类似,在其他码不同。

public int ReadByte();

输入缓冲区中同步读取一个字节,强制转换为 System.Int32 的字节;或者,如果已读取到流的末尾,则为 -1。

public int ReadChar()

输入缓冲区中同步读取一个字符。返回为 读取的字符。

 public string ReadExisting();SerialPort 对象的流和输入缓冲区中所有立即可用的字节,返回 对象的流和输入缓冲区的内容。

public string ReadLine();一直读取到输入缓冲区中的 System.IO.Ports.SerialPort.NewLine 值。

public string ReadTo(string value);

一直读取到输入缓冲区中的指定 value 的字符串。返回输入缓冲区中直到指定 value 的内容。

 public void Write(string text);将指定的字符串写入串行端口。

public void Write(byte[] buffer, int offset, int count)使用缓冲区的数据将指定数量的字节写入串行端口。

 public void Write(char[] buffer, int offset, int count)使用缓冲区的数据将指定数量的字符写入串行端口

public void WriteLine(string text);将指定的字符串和 System.IO.Ports.SerialPort.NewLine 值写入输出缓冲区。



  • 8
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值