我是java开发人员和pi4j乞丐。我正在开发能够控制伺服的java应用程序(raspberry pi 4型号b)。
错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/pi4j/wiringpi/Gpio
at me.Olex7iMatix.CatBotSoftware.Main.main(Main.java:9)
Caused by: java.lang.ClassNotFoundException: com.pi4j.wiringpi.Gpio
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522)
... 1 moreJRE系统库: JavaSE-1.8
代码
package me.Olex7iMatix.CatBotSoftware;
import com.pi4j.wiringpi.Gpio;
public class Main {
public static void main(String[] args) {
Gpio.pwmWrite(2, 50);
}
}发布于 2022-09-10 21:32:53
编辑:我刚刚正确地阅读了erorr消息,您可能需要安装软件包,安装指南
为了让一个伺服系统与RPi/Java一起工作,您缺少了相当多的代码。
首先,您需要告诉Pi您正在使用的GPIO引脚和输出模式所述的引脚。
com.pi4j.wiringpi.Gpio.pinMode({ENTER YOUR GPIO PIN HERE}, com.pi4j.wiringpi.Gpio.PWM_OUTPUT);您还需要设置PWM模式
com.pi4j.wiringpi.Gpio.pwmSetMode(com.pi4j.wiringpi.Gpio.PWM_MODE_MS);
com.pi4j.wiringpi.Gpio.pwmSetClock(192);然后设置PWM范围。
com.pi4j.wiringpi.Gpio.pwmSetRange(2000); // this may differ for your servo然后你可以设置一个回路,做一个伺服系统。
while (true) {
com.pi4j.wiringpi.Gpio.pwmWrite({YOUR GPIO PIN}, 50);
Thread.sleep(10) // make this thread wait for 10 milliseconds
}https://stackoverflow.com/questions/73671607
复制相似问题