C#中串口类serialPort的用法!



最近由于任务需要用到了serialPort类,在此记录重要步骤。

    主要常用的属性为:

    PortName    //可用的COM端口号

    BaudRate    //波特率

    DataBits      //数据位

    StopBits      //停止位

    Parity           //奇偶校验

    BytesToRead //获取接收缓冲区的字节数

    BytesToWrite //获取发送缓冲区的字节数

其中前五个属性是打开一个串口最基本的参数。比如一般的串口调试工具都是默认数据位为8,停止位1,奇偶校验0,如下:

串口实例化后的对象为serialPort1,则

serialPort1.Parity = Parity.None;

serialPort1.DataBits = Convert.ToInt32(“8”);

serialPort1.StopBits = StopBits.One;

serialPort1.Open();

  常用的方法:

DiscardInBuffer         //丢弃接收缓存区的内容

DiscardOutBuffer     //丢弃发送缓冲区的内容

Open                          //打开串口

read                           //从输入缓冲区读取

这个方法需要特别说明,一般用到的重载方法为  public int  Read(

                                                                                                             byte[] buffer, //将输入写入到其中的字节数组

                                                                                                             int offset,      //缓冲区数中开始写入的偏移量

                                                                                                             int count       //要读取的字节数

                                                                                                                 )

表示从 SerialPort输入缓冲区读取一些字节并将那些字节写入字节数组中指定的偏移量处。并且利用read读出来的是字节数组,如果要转换为字符串的话还需要System.Text.Encoding.ASCII.GetString(buffer);

write(string)                         //将制定的字符串写入串行端口

常用事件:

DataReceived           //数据接收事件的方法

从 serialPort 对象接收数据时,将在辅助线程上引发DataReceived 事件,因此貌似这个事件是一直在“循环的”(只要接收缓冲区有数据就出发)。如果不调用该事件也可以实现实时的接受数据,但应该就要另外开辟一条线程了,目前我还没研究,以后有机会了应该要探究下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值