Here is a Python script that successfully turns the relay on/offHere is a similar java code, but when executed, the relay turns on and freezes in the on position. It is impossible to remove the signal at pin 27 (or any other)What should I do? If there are any alternatives for Java? Or am I doing something wrong
implementation ("com.pi4j:pi4j-core:2.6.0")
implementation ("com.pi4j:pi4j-plugin-raspberrypi:2.6.0")
implementation ("com.pi4j:pi4j-plugin-gpiod:2.6.0")
Code:
import RPi.GPIO as GPIOimport timechannel = 27GPIO.setmode(GPIO.BCM)GPIO.setup(channel, GPIO.OUT)def motor_on(pin): GPIO.output(pin, GPIO.HIGH)def motor_off(pin): GPIO.output(pin, GPIO.LOW)if __name__ == '__main__': try: motor_on(channel) time.sleep(1) motor_off(channel) time.sleep(1) GPIO.cleanup() except KeyboardInterrupt: GPIO.cleanup()
Code:
import com.pi4j.context.Context;import com.pi4j.Pi4J;import com.pi4j.io.gpio.digital.DigitalOutput;import com.pi4j.io.gpio.digital.DigitalOutputConfig;import com.pi4j.io.gpio.digital.DigitalState;public class Main { public static void main(String[] args) throws InterruptedException { Context pi4j = Pi4J.newAutoContext(); DigitalOutputConfig config = DigitalOutput.newConfigBuilder(pi4j) .id("LED") .name("Simple LED Control") .address(27) .shutdown(DigitalState.LOW) .initial(DigitalState.LOW) .build(); DigitalOutput led = pi4j.create(config); led.state(DigitalState.HIGH); Thread.sleep(1000); led.state(DigitalState.LOW); pi4j.shutdown(); }}
implementation ("com.pi4j:pi4j-core:2.6.0")
implementation ("com.pi4j:pi4j-plugin-raspberrypi:2.6.0")
implementation ("com.pi4j:pi4j-plugin-gpiod:2.6.0")
Statistics: Posted by kvazarrius — Sat Jan 11, 2025 3:49 pm — Replies 0 — Views 18