我有som代码,可以通过intellij访问rpi上的gpio引脚。 我还构建了一些简单的javaFx代码,一个带有3个按钮的简单窗口。我希望这3个按钮可以打开,关闭和关闭窗口。我有我需要的所有代码,我只是不知道如何将其放在一起。都 代码可以独立工作。 我正在为植物构建一个冲洗系统,并且所有硬件都在工作。在第一个版本中,我只想使用简单的on off功能。
这是我的javafx代码,没有导入,非常简单。
<rpc-reply>
<configuration>
<system>
<preference>
<events>a</events>
<events>b</events>
</preference>
</system>
</configuration>
</rpc-reply>
这是我想将按钮链接到1和2的方法。
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) {
primaryStage.setTitle("Title of Window");
button1 = new Button("Start");
button2 = new Button("Stop");
button3 = new Button("Exit");
button1.setOnAction(e -> ); // Start gpio
button2.setOnAction(e -> ); // Stop gpio
button3.setOnAction(e -> primaryStage.close());
StackPane layout = new StackPane();
layout.getChildren().add(button1);
button1.setTranslateX(0);
button1.setTranslateY(20);
layout.getChildren().add(button2);
button2.setTranslateX(50);
button2.setTranslateY(20);
layout.getChildren().add(button3);
button3.setTranslateX(108);
button3.setTranslateY(20);
Scene scene = new Scene(layout, 600, 400);
primaryStage.setScene(scene);
primaryStage.show();
}
}
在这里找到代码https://pi4j.com/1.2/example/control.html
这可能很容易解决,但是对我来说很难破解,所以我希望向比我更有天赋的人学习,或者如果我可以指出类似问题的人。
答案 0 :(得分:0)
与button2
相同
button1.setOnAction(new EventHandler<ActionEvent>() {
@Override public void handle(ActionEvent e) {
final GpioController gpio = GpioFactory.getInstance();
final GpioPinDigitalOutput pin =
gpio.provisionDigitalOutputPin(RaspiPin.GPIO_07, "MyLED", PinState.HIGH);
pin.setShutdownOptions(true, PinState.LOW);
// toggle the current state of gpio pin #01 (should turn on)
pin.toggle();
System.out.println("--> GPIO state should be: ON");
}
});
PS :不要忘记必要的导入