Exemple #1
0
        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);
            }
        }