Unosquare
    Show / Hide Table of Contents

    Class Serial

    Exposes methods to read from a serial transmission using bit-banging (software-based UART). Writing requires the use of the GpioWaveAddSerial(UserGpio, UInt32, UInt32, UInt32, UInt32, UInt32, Byte[]) method.

    Inheritance
    Object
    Serial
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: Unosquare.PiGpio.NativeMethods
    Syntax
    public static class Serial

    Methods

    GpioSerialRead(UserGpio, Byte[], Int32)

    Wrapper for the native Unosquare.PiGpio.NativeMethods.Serial.GpioSerialReadUnmanaged(Unosquare.PiGpio.NativeEnums.UserGpio,System.Byte[],System.UInt32).

    Declaration
    public static int GpioSerialRead(UserGpio userGpio, byte[] buffer, int readLength)
    Parameters
    Type Name Description
    UserGpio userGpio

    The user gpio.

    Byte[] buffer

    The buffer.

    Int32 readLength

    Length of the read.

    Returns
    Type Description
    Int32

    The amount of bytes read.

    GpioSerialRead(UserGpio, Int32)

    Wrapper for the native Unosquare.PiGpio.NativeMethods.Serial.GpioSerialReadUnmanaged(Unosquare.PiGpio.NativeEnums.UserGpio,System.Byte[],System.UInt32).

    Declaration
    public static byte[] GpioSerialRead(UserGpio userGpio, int readLength)
    Parameters
    Type Name Description
    UserGpio userGpio

    The user gpio.

    Int32 readLength

    Length of the read.

    Returns
    Type Description
    Byte[]

    The array containing the bytes that were read.

    GpioSerialReadClose(UserGpio)

    This function closes a GPIO for bit bang reading of serial data.

    Declaration
    public static ResultCode GpioSerialReadClose(UserGpio userGpio)
    Parameters
    Type Name Description
    UserGpio userGpio

    0-31, previously opened with GpioSerialReadOpen(UserGpio, UInt32, UInt32).

    Returns
    Type Description
    ResultCode

    Returns 0 if OK, otherwise PI_BAD_USER_GPIO, or PI_NOT_SERIAL_GPIO.

    GpioSerialReadInvert(UserGpio, Boolean)

    This function configures the level logic for bit bang serial reads.

    Use PI_BB_SER_INVERT to invert the serial logic and PI_BB_SER_NORMAL for normal logic. Default is PI_BB_SER_NORMAL.

    The GPIO must be opened for bit bang reading of serial data using GpioSerialReadOpen(UserGpio, UInt32, UInt32) prior to calling this function.

    Declaration
    public static ResultCode GpioSerialReadInvert(UserGpio userGpio, bool invert)
    Parameters
    Type Name Description
    UserGpio userGpio

    0-31.

    Boolean invert

    0-1.

    Returns
    Type Description
    ResultCode

    Returns 0 if OK, otherwise PI_BAD_USER_GPIO, PI_GPIO_IN_USE, PI_NOT_SERIAL_GPIO, or PI_BAD_SER_INVERT.

    GpioSerialReadOpen(UserGpio, UInt32, UInt32)

    This function opens a GPIO for bit bang reading of serial data.

    The serial data is returned in a cyclic buffer and is read using GpioSerialRead(UserGpio, Int32).

    It is the caller's responsibility to read data from the cyclic buffer in a timely fashion.

    Declaration
    public static ResultCode GpioSerialReadOpen(UserGpio userGpio, uint baudRate, uint dataBits)
    Parameters
    Type Name Description
    UserGpio userGpio

    0-31.

    UInt32 baudRate

    50-250000.

    UInt32 dataBits

    1-32.

    Returns
    Type Description
    ResultCode

    Returns 0 if OK, otherwise PI_BAD_USER_GPIO, PI_BAD_WAVE_BAUD, PI_BAD_DATABITS, or PI_GPIO_IN_USE.

    Comments

    Back to top Copyright © 2017-2019 Unosquare