我正在尝试编程一种dmx controller
,因此我得到了一个RaspberryPi
,现在我想编写一个程序来控制一个 GPIO pi4j
。这个想法是询问应该作为输出的 GPIO,将其保存在 int 中并重用它来告诉pi4j
我希望哪个 GPIO 成为输出。
抱歉代码不好:)
我是一个母语为德语的人,所以println
都是德语。
System.out.println("GPIO des DMX Outputs :");
BufferedReader br_dmx_out = new BufferedReader(new InputStreamReader(System.in));
int dmx_out = Integer.parseInt(br_dmx_out.readLine());
System.out.println("Der DMX Output GPIO ist also GPIO " + dmx_out);
// GPIO Controll
String predef = ""+dmx_out;
/*
String def = MessageFormat.format("RaspiPin.GPIO_0{0}",predef);
System.out.println(def);
*/
Pin pin_dmx = "RaspiPin.GPIO_0"+ predef;
GpioController gpio = GpioFactory.getInstance();
GpioPinDigitalOutput dmx_output = gpio.provisionDigitalOutputPin(pin_dmx);
通常你的代码:
GpioPinDigitalOutput dmx_output = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01);
Java 说:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from String to Pin
at test.main(test.java:44)
我也试过了switch/case
,但这也不会
GpioController gpio = GpioFactory.getInstance();
switch(dmx_out)
{
case 2:
GpioPinDigitalOutput dmx_output = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_02);
break;
Java的错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
Duplicate local variable dmx_output
dmx_output cannot be resolved
dmx_output cannot be resolved
at test.main(test.java:59)