我正在尝试编写一种static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
,因此我得到了dmx controller
,现在我想编写一个程序来使用RaspberryPi
控制GPIO。想法是要求提供应该作为输出的GPIO,将其保存为int并重用它来告诉pi4j
我希望将哪个GPIO作为输出。
很抱歉输入错误代码:)
我是德语母语人士,所以pi4j
是德语。
println
通常您会编码:
GpioPinDigitalOutput dmx_output = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01);
Java说:
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);
我也尝试过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
Java的错误:
GpioController gpio = GpioFactory.getInstance();
switch(dmx_out)
{
case 2:
GpioPinDigitalOutput dmx_output = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_02);
break;
答案 0 :(得分:0)
您正在尝试为Pin接口分配一个字符串。
https://pi4j.com/1.2/apidocs/com/pi4j/io/gpio/Pin.html
要获取其实现,您可能需要调用PinImpl的构造函数,如以下示例所示: