package com.henrypump.io; import mraa.Dir; import mraa.Gpio; import mraa.Result; /** * Created by patrickjmcd on 6/14/17. */ public class DigitalOut { int channel; Gpio gpioPin; public DigitalOut(int channel){ // if ((channel >=0 && channel <=5) || (channel == 8) || (channel == 9)) { this.channel = channel; gpioPin = new Gpio(channel); gpioPin.dir(Dir.DIR_OUT); // } else { // System.err.println("Error: This channel does not exist,."); // System.exit(Result.ERROR_INVALID_PARAMETER.swigValue()); // } } public void write(int value){ gpioPin.write(value); } public static void main(String[] args){ DigitalOut dO0 = new DigitalOut(21); DigitalOut dO1 = new DigitalOut(20); DigitalOut dO2 = new DigitalOut(16); DigitalOut dO3 = new DigitalOut(12); DigitalOut dO4 = new DigitalOut(25); DigitalOut dO5 = new DigitalOut(24); DigitalOut redLED = new DigitalOut(23); DigitalOut greenLED = new DigitalOut(18); System.out.println("Testing Digital Outputs"); try { dO0.write(1); Thread.sleep(500); dO1.write(1); Thread.sleep(500); dO2.write(1); Thread.sleep(500); dO3.write(1); Thread.sleep(500); dO4.write(1); Thread.sleep(500); dO5.write(1); Thread.sleep(500); dO5.write(0); Thread.sleep(500); dO4.write(0); Thread.sleep(500); dO3.write(0); Thread.sleep(500); dO2.write(0); Thread.sleep(500); dO1.write(0); Thread.sleep(500); dO0.write(0); Thread.sleep(500); System.out.println("Testing the status LEDs"); for (int i = 0; i < 10; i++) { redLED.write(0); greenLED.write(1); Thread.sleep(250); redLED.write(1); greenLED.write(0); Thread.sleep(250); } redLED.write(0); greenLED.write(0); } catch (InterruptedException e) { e.printStackTrace(); } } }