Stap 3: Test code
GPIO controle entiteit klassepakket com.test;
importeren van java.io.BufferedReader;
importeren van java.io.File;
importeren van java.io.FileReader;
importeren van java.io.FileWriter;
importeren van java.io.IOException;
openbare klasse GPIO_Pin {}
private String modeURI = "/ sys/devices/virtuele/misc/gpio/modus /";
private String statusURI = "/ sys/devices/virtuele/misc/gpio/pin /";
private int pin = 0;
openbare statische def. String hoge = "1", laag = "0", INPUT = "0", OUTPUT = "1" INPUT_PU = "8";
openbare GPIO_Pin (int pin) {}
modeURI += "gpio" + pin;
statusURI += "gpio" + pin;
this.PIN = pin;
}
openbare GPIO_Pin (String pin) {}
Finaliseren van de bestandspaden
modeURI += "gpio" + pin;
statusURI += "gpio" + pin;
this.PIN = Integer.parseInt(pin);
}
public int getPin() {}
retourneren van de geheime code;
}
public void overrideURI (String uri) {}
modeURI = uri "modus/gpio" + pin;
statusURI = uri "pin/gpio" + pin;
}
public void setMode (String modus) {}
writeToFile(getModeURI(), modus);
}
openbare nietige reeks (String staat) {}
writeToFile(getStatusURI(), staat);
}
openbare nietige setHIGH() {}
writeToFile(getStatusURI(), hoge);
}
openbare nietige setLOW() {}
writeToFile(getStatusURI(), laag);
}
openbare nietige setModeINPUT() {}
writeToFile(getModeURI(), INPUT);
}
openbare nietige setModeOUTPUT() {}
writeToFile(getModeURI(), OUTPUT);
}
openbare nietige setModeINPUT_PU() {}
writeToFile(getModeURI(), INPUT_PU);
}
public String getModeURI() {}
Return modeURI;
}
public String getStatusURI() {}
retourneren statusURI;
}
public String getPinMode() {}
Probeer {}
BufferedReader lezer = nieuwe BufferedReader (nieuwe FileReader(getModeURI()));
String data = reader.readLine();
Reader.Close();
retourneren van gegevens;
} vangst (IOException e) {}
}
terug "";
}
public String getPinStatus() {}
Probeer {}
BufferedReader lezer = nieuwe BufferedReader (nieuwe FileReader(getStatusURI()));
String data = reader.readLine();
Reader.Close();
retourneren van gegevens;
} vangst (IOException e) {}
}
terug "";
}
private void writeToFile (String URI, tekenreeksgegevens) {}
Probeer {}
Bestand = nieuwe File(URI);
File.Delete();
Dossier newFile = nieuw File(URI);
NewFile.createNewFile ();
FileWriter writer = new FileWriter(URI);
Writer.write(Data);
Writer.Close();
} vangst (IOException e) {}
e.printStackTrace();
}
}
openbare statische nietige leiding (koord [] args) gooit InterruptedException {}
GPIO_Pin ledpin = nieuwe GPIO_Pin(1);
ledpin.setModeOUTPUT();
terwijl (waar) {}
ledpin.setHIGH();
Thread.Sleep(400);
ledpin.setLOW();
Thread.Sleep(400);
}
}
}
Testen van klasse
pakket com.trc.gpio;
openbare klasse test {}
/**
* args
* InterruptedException
*/
openbare statische nietige leiding (koord [] args) gooit InterruptedException {}
TODO automatisch gegenereerde methode stub
GPIO_Pin buttenpin = nieuwe GPIO_Pin(9);
GPIO_Pin ledpin = nieuwe GPIO_Pin(8);
buttenpin.setModeINPUT();
ledpin.setModeOUTPUT();
terwijl (waar) {}
System.out.println ();
ledpin.setLOW();
System.out.println(buttenpin.getPinMode());
Thread.Sleep(4);
}
}
}