Hallo,
ich komme gleich sofort zu meinem Problem. Ich starte auf den Raspberry Pi mein .jar Programm, aber leider kommt folgender Fehler:
java.lang.RuntimeException: Unable to open GPIO edge interface for pin 6: Datei oder Verzeichnis nicht gefunden
folgenden Befehl verwende ich zum ausführen:
Code
/opt/jdk1.8.0_33/bin/java -classpath .:classes:/home/pi/NetbeansProjects/prj/dist/lib/'*' -jar MobileEVotingSystem.jar
Und hier hab ich auch noch den Quellcode wo ich GpioUtil.getEdgeDetection(...) ausführe:
Code
@Override
public void Rfm12Init() throws Exception
{
Gpio.pinMode(6,Gpio.INPUT);
if (Gpio.wiringPiSetupGpio() == -1)
{
System.out.println(" ==>> GPIO SETUP FAILED");
return;
}
else
{
System.out.println(" ==>> GPIO SETUP SUCCESSFUL");
}
if (GpioUtil.getEdgeDetection(6)==EDGE_FALLING) // 25 oder 6
{
rfmIrq();
}
System.out.println("GpioUtil.getEdgeDetection erfolgreich");
trans(Auswertung.hexStringToByteArray("FF00")); //Zeitgeber für Wake-up(Wake-Up-Timer)
trans(Auswertung.hexStringToByteArray("0000")); //Status
trans(Auswertung.hexStringToByteArray("CA00")); //FIFO-Steuerung(FIFO and Reset Mode CAxx)
trans(Auswertung.hexStringToByteArray("8280")); // Komponentenauswahl-Register(Power Managment 82xx)
trans(Auswertung.hexStringToByteArray("C2EE")); //Empfangsdatenrekonstruktion ( Data Filter C2xx) //DQD --> Schwelle 6
trans(Auswertung.hexStringToByteArray("C493")); //Automatische Frequenznachregelung AFC (C4xx)
trans(Auswertung.hexStringToByteArray("C800")); //Automatisch zyklischer Empfänger(Low-Duty-Cycle C8xx)
configByte = 1<<6 | 7;
rxctrlbyte = (byte) (1<<10 | 2<<8 | 4<<5 | 1<<3 | 1); //#VDI out, VDI medium, bandwith, gain, RSSI threshold
trans(Auswertung.hexStringToByteArray("0000"));
System.out.println("RFM12init abgeschlossen");
}
@Override
public String trans(byte[] val) throws Exception
{
SpiDevice spi = SpiFactory.getInstance(SpiChannel.CS0,
SpiDevice.DEFAULT_SPI_SPEED);
int fd = Spi.wiringPiSPISetup(0, 10000000);
if (fd <= -1)
{
System.out.println(" ==>> SPI SETUP FAILED");
}
byte[] result = spi.write(val);
System.out.println("trans erfolgreich");
return Auswertung.bytesToHex(result);
}
Alles anzeigen
Kann mir dabei irgendjemand weiterhelfen?
Gruß
regalhcs1