Class GpioBank
Provides access to bulk GPIO read and write operations.
Inherited Members
Namespace: Unosquare.PiGpio.ManagedModel
Syntax
public sealed class GpioBank
Properties
BankNumber
Gets the bank number; 1 or 2.
Declaration
public int BankNumber { get; }
Property Value
Type | Description |
---|---|
Int32 |
GpioCount
Gets the number of gpio pins for this bank.
Declaration
public int GpioCount { get; }
Property Value
Type | Description |
---|---|
Int32 |
MaxGpioIndex
Gets the maximum index of the gpio bank.
Declaration
public int MaxGpioIndex { get; }
Property Value
Type | Description |
---|---|
Int32 |
MinGpioIndex
Gets the minimum index of the gpio bank.
Declaration
public int MinGpioIndex { get; }
Property Value
Type | Description |
---|---|
Int32 |
Methods
ClearBits(BitMask)
Clears the bits according to the bit mask. For bank 1, the starting index is GPIO 00. For bank 2, the starting index is GPIO 32. This means that for bank 2, bit 33 is addressed as Bit01 in the bit mask.
Declaration
public void ClearBits(BitMask bitMask)
Parameters
Type | Name | Description |
---|---|---|
BitMask | bitMask | The bit mask. |
ReadBinLiteral()
Reads from the bank and returns a series of 0s and 1s from MSB to LSB. Please note the output of the Bit Array is reversed so that the MSB is the first character.
Declaration
public string ReadBinLiteral()
Returns
Type | Description |
---|---|
String | A string containing 0s and 1s. |
ReadBits()
Reads the value of all the GPIO pins at once, where the 0th index of the array is the lowest pin index (LSB) and the 31st index of the array is the highes pin index (MSB).
Declaration
public BitArray ReadBits()
Returns
Type | Description |
---|---|
BitArray | The bits read. |
ReadBytes()
Reads the value of all the GPIO pins at once as an array of 4 bytes. The 0th index of the result is the Least Significant Byte (low index pins pins). The 3rd index of the result is the Most Significant Byte (high index pins).
Declaration
public byte[] ReadBytes()
Returns
Type | Description |
---|---|
Byte[] | The bytes that were read. |
ReadHexLiteral()
Reads from the bank and returns a series of hexadecimal chars from MSB to LSB. Please note the output of the byte array is reversed so that the left-most characters are the MSB.
Declaration
public string ReadHexLiteral()
Returns
Type | Description |
---|---|
String | A string containing the hexadecimal chars. |
ReadValue()
Reads the value of all the GPIO pins at once as an unsigned, 32-bit integer.
Declaration
public uint ReadValue()
Returns
Type | Description |
---|---|
UInt32 | The current value of all pins. |
SetBits(BitMask)
Sets the bits according to the bit mask. For bank 1, the starting index is GPIO 00. For bank 2, the starting index is GPIO 32. This means that for bank 2, bit 33 is addressed as Bit01 in the bit mask.
Declaration
public void SetBits(BitMask bitMask)
Parameters
Type | Name | Description |
---|---|---|
BitMask | bitMask | The bit mask. |
ToBinLiteral(BitArray)
Returns a series of 0s and 1s from MSB to LSB. Please note the output of the Bit Array is reversed.
Declaration
public static string ToBinLiteral(BitArray bits)
Parameters
Type | Name | Description |
---|---|---|
BitArray | bits | The bits. |
Returns
Type | Description |
---|---|
String | A string containing 0s and 1s. |
ToHexLiteral(Byte[])
Returns a series of hexadecimal chars from MSB to LSB. Please note the output of the byte array is reversed.
Declaration
public static string ToHexLiteral(byte[] bytes)
Parameters
Type | Name | Description |
---|---|---|
Byte[] | bytes | The bytes. |
Returns
Type | Description |
---|---|
String | A string containing the hexadecimal chars. |