Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.io.BufferedReader;
- import java.io.IOException;
- import java.text.ParseException;
- import java.text.SimpleDateFormat;
- import java.util.Date;
- import com.pi4j.io.gpio.GpioController;
- import com.pi4j.io.gpio.GpioFactory;
- import com.pi4j.io.gpio.GpioPinDigitalOutput;
- import com.pi4j.io.gpio.RaspiPin;
- public class Gpio {
- private GpioController gpio = GpioFactory.getInstance();
- private GpioPinDigitalOutput unit1 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01);
- private GpioPinDigitalOutput unit2 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_02);
- private GpioPinDigitalOutput unit3 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_03);
- private GpioPinDigitalOutput unit4 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_04);
- public void toggle (String signal) {
- switch (signal) {
- case "ON unit 1":
- unit1.high();
- break;
- case "ON unit 2":
- unit2.high();
- break;
- case "ON unit 3":
- unit3.high();
- break;
- case "ON unit 4":
- unit4.high();
- break;
- case "OFF unit 1":
- unit1.low();
- break;
- case "OFF unit 2":
- unit2.low();
- break;
- case "OFF unit 3":
- unit3.low();
- break;
- case "OFF unit 4":
- unit4.low();
- break;
- }
- }
- public void startTimer(BufferedReader input) {
- try {
- String time1 = input.readLine();
- final String action = input.readLine();
- SimpleDateFormat format = new SimpleDateFormat("HH:mm");
- String currentTime = format.format(new Date());
- Date time2 = format.parse(time1);
- Date time3 = format.parse(currentTime);
- final long difference = time2.getTime() - time3.getTime();
- Thread thread = new Thread(){
- public void run(){
- try {
- Thread.sleep(difference);
- toggle(action);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- };
- thread.start();
- } catch (ParseException | IOException e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement