StopBits Property

SerialPort.StopBits Property


Gets or sets the standard number of stopbits per byte.

Namespace:   System.IO.Ports
Assembly:  System (in System.dll)

public StopBits StopBits { get; set; }

Property Value

Type: System.IO.Ports.StopBits

One of the StopBits values.

Exception Condition

The StopBits value is StopBits.None.


The port is in an invalid state.

- or -

An attempt to set the state of the underlying port failed. For example, the parameters passed from this SerialPort object were invalid.

The default value for StopBits is One.

The StopBits.None value is not supported.

The following example shows how to set the StopBits property to One.

SerialPort mySerialPort = new SerialPort("COM1");

mySerialPort.BaudRate = 9600;
mySerialPort.Parity = Parity.None;
mySerialPort.StopBits = StopBits.One;
mySerialPort.DataBits = 8;
mySerialPort.Handshake = Handshake.None;
mySerialPort.RtsEnable = true;

The following example demonstrates the use of the SerialPort class to allow two users to chat from two separate computers connected by a null modem cable. In this example, the users are prompted for the port settings and a username before chatting. This code example is part of a larger example provided for the SerialPort class.

public static void Main()
    string name;
    string message;
    StringComparer stringComparer = StringComparer.OrdinalIgnoreCase;
    Thread readThread = new Thread(Read);

    // Create a new SerialPort object with default settings.
    _serialPort = new SerialPort();

    // Allow the user to set the appropriate properties.
    _serialPort.PortName = SetPortName(_serialPort.PortName);
    _serialPort.BaudRate = SetPortBaudRate(_serialPort.BaudRate);
    _serialPort.Parity = SetPortParity(_serialPort.Parity);
    _serialPort.DataBits = SetPortDataBits(_serialPort.DataBits);
    _serialPort.StopBits = SetPortStopBits(_serialPort.StopBits);
    _serialPort.Handshake = SetPortHandshake(_serialPort.Handshake);

    // Set the read/write timeouts
    _serialPort.ReadTimeout = 500;
    _serialPort.WriteTimeout = 500;

    _continue = true;

    Console.Write("Name: ");
    name = Console.ReadLine();

    Console.WriteLine("Type QUIT to exit");

    while (_continue)
        message = Console.ReadLine();

        if (stringComparer.Equals("quit", message))
            _continue = false;
                String.Format("<{0}>: {1}", name, message));


public static void Read()
    while (_continue)
            string message = _serialPort.ReadLine();
        catch (TimeoutException) { }

.NET Framework
Available since 2.0
Return to top
© 2015 Microsoft