Advertisement
Guest User

Untitled

a guest
Apr 21st, 2015
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.84 KB | None | 0 0
  1. import java.io.BufferedReader;
  2. import java.io.IOException;
  3. import java.text.ParseException;
  4. import java.text.SimpleDateFormat;
  5. import java.util.Date;
  6.  
  7. import com.pi4j.io.gpio.GpioController;
  8. import com.pi4j.io.gpio.GpioFactory;
  9. import com.pi4j.io.gpio.GpioPinDigitalOutput;
  10. import com.pi4j.io.gpio.RaspiPin;
  11.  
  12.  
  13. public class Gpio {
  14. private GpioController gpio = GpioFactory.getInstance();
  15. private GpioPinDigitalOutput unit1 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_01);
  16. private GpioPinDigitalOutput unit2 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_02);
  17. private GpioPinDigitalOutput unit3 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_03);
  18. private GpioPinDigitalOutput unit4 = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_04);
  19.  
  20. public void toggle (String signal) {
  21. switch (signal) {
  22. case "ON unit 1":
  23. unit1.high();
  24. break;
  25. case "ON unit 2":
  26. unit2.high();
  27. break;
  28. case "ON unit 3":
  29. unit3.high();
  30. break;
  31. case "ON unit 4":
  32. unit4.high();
  33. break;
  34. case "OFF unit 1":
  35. unit1.low();
  36. break;
  37. case "OFF unit 2":
  38. unit2.low();
  39. break;
  40. case "OFF unit 3":
  41. unit3.low();
  42. break;
  43. case "OFF unit 4":
  44. unit4.low();
  45. break;
  46. }
  47. }
  48.  
  49.  
  50. public void startTimer(BufferedReader input) {
  51.  
  52. try {
  53. String time1 = input.readLine();
  54. final String action = input.readLine();
  55. SimpleDateFormat format = new SimpleDateFormat("HH:mm");
  56.  
  57. String currentTime = format.format(new Date());
  58. Date time2 = format.parse(time1);
  59.  
  60. Date time3 = format.parse(currentTime);
  61. final long difference = time2.getTime() - time3.getTime();
  62.  
  63. Thread thread = new Thread(){
  64. public void run(){
  65. try {
  66. Thread.sleep(difference);
  67. toggle(action);
  68. } catch (InterruptedException e) {
  69. e.printStackTrace();
  70. }
  71. }
  72. };
  73. thread.start();
  74.  
  75. } catch (ParseException | IOException e) {
  76. e.printStackTrace();
  77. }
  78.  
  79. }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement