我试图用相应的状态 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 做一些有趣的事情,谢谢你的帮助