StopBits Enumeration


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Specifies the number of stop bits used on the SerialPort object.

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

public enum StopBits

Member nameDescription

No stop bits are used. This value is not supported by the StopBits property.


One stop bit is used.


1.5 stop bits are used.


Two stop bits are used.

You use this enumeration when setting the value of the StopBits property on the SerialPort class. Stop bits separate each unit of data on an asynchronous serial connection. They are also sent continuously when no data is available for transmission.

The SerialPort class throws an ArgumentOutOfRangeException exception when you set the StopBits property to None.

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 code example displays the possible values of the StopBits enumeration to the console, then prompts the user to choose one. This code example is part of a larger code example provided for the SerialPort class.

public static StopBits SetPortStopBits(StopBits defaultPortStopBits)
    string stopBits;

    Console.WriteLine("Available StopBits options:");
    foreach (string s in Enum.GetNames(typeof(StopBits)))
        Console.WriteLine("   {0}", s);

    Console.Write("Enter StopBits value (None is not supported and \n" +
     "raises an ArgumentOutOfRangeException. \n (Default: {0}):", defaultPortStopBits.ToString());
    stopBits = Console.ReadLine();

    if (stopBits == "" )
        stopBits = defaultPortStopBits.ToString();

    return (StopBits)Enum.Parse(typeof(StopBits), stopBits, true);

.NET Framework
Available since 2.0
Return to top