1

我试图用相应的状态 GPIO 引脚更改布尔值状态,但我这样做并没有参与结果。

public class PlayWithGPIO {


    public static boolean pinCarica = false; 

    public static void main(String[] args) {



        //-----------------------------------------------------------
        // create gpio controller
        final GpioController gpio = GpioFactory.getInstance();
        // provision gpio pin #07 as an input pin with its internal pull down resistor enabled
        final GpioPinDigitalInput pinInput = gpio.provisionDigitalInputPin(RaspiPin.GPIO_07, PinPullResistance.PULL_DOWN);
        // set shutdown state for this input pin
        pinInput.setShutdownOptions(true);
        // create and register gpio pin listener
        pinInput.addListener(new GpioPinListenerDigital() {
            @Override
            public void handleGpioPinDigitalStateChangeEvent(GpioPinDigitalStateChangeEvent event) {
                // display pin state on console
                //System.out.println(" --> GPIO PIN STATE CHANGE: " + event.getPin() + " = " + event.getState());
                if (event.getState() == PinState.HIGH) { 
                    pinCarica = true; 
                }
            }

        });
        if (pinCarica == true)
    {
        System.out.println("-----------IN CARICA-----------");
    }

    }

}

为什么?我如何从 GPIO 计算 INPUT?为什么当我将所选 GPIO 置于 1 时不写任何东西?我需要用覆盆子 gpio 做一些有趣的事情,谢谢你的帮助

4

0 回答 0