public void InitializeDigitalInputAndOutput() { if (_bcm2835.bcm2835_init() == 0) { throw new InvalidOperationException("bcm2835_init failed. Are you running as root?"); } InitializeSpi(); // Clear MCP23S17 GPIOs ClearDigitalOutputBits(); ///*DIGITAL INPUT init decleration*/ var Gpio_Arr_in = new[] { (byte)DigitalInput.Gpio_J14_16, (byte)DigitalInput.Gpio_J14_15, (byte)DigitalInput.Gpio_J14_14, (byte)DigitalInput.Gpio_J14_13, (byte)DigitalInput.Gpio_J15_12, (byte)DigitalInput.Gpio_J15_11, (byte)DigitalInput.Gpio_J15_10, (byte)DigitalInput.Gpio_J15_9, (byte)DigitalInput.Gpio_J16_8, (byte)DigitalInput.Gpio_J16_7, (byte)DigitalInput.Gpio_J16_6, (byte)DigitalInput.Gpio_J16_5, (byte)DigitalInput.Gpio_J17_4, (byte)DigitalInput.Gpio_J17_3, (byte)DigitalInput.Gpio_J17_2, (byte)DigitalInput.Gpio_J17_1, }; for (var i = 0; i < Gpio_Arr_in.Length; ++i) { _bcm2835.bcm2835_gpio_fsel(Gpio_Arr_in[i], (byte)Bcm2835.bcm2835FunctionSelect.BCM2835_GPIO_FSEL_INPT); _bcm2835.bcm2835_gpio_set_pud(Gpio_Arr_in[i], (byte)Bcm2835.bcm2835PUDControl.BCM2835_GPIO_PUD_UP); } }