Ich habe einen PhidgetRFID-Chip (P/N: 1023, Version 205). Ich versuche ein einfaches Programm zu erstellen, um Tags zu erkennen und ihre eindeutige ID-Nummer anzuzeigen. Ich fand den folgenden Quellcode von seinem Hersteller-WebsitePhidgetRFID-Chip: So erkennen Sie Tags
import com.phidgets.*;
import com.phidgets.event.*;
public class RFIDExample
{
public static final void main(String args[]) throws Exception {
RFIDPhidget rfid;
System.out.println(Phidget.getLibraryVersion());
rfid = new RFIDPhidget();
rfid.addAttachListener(new AttachListener() {
public void attached(AttachEvent ae)
{
try
{
((RFIDPhidget)ae.getSource()).setAntennaOn(true);
((RFIDPhidget)ae.getSource()).setLEDOn(true);
}
catch (PhidgetException ex) { }
System.out.println("attachment of " + ae);
}
});
rfid.addDetachListener(new DetachListener() {
public void detached(DetachEvent ae) {
System.out.println("detachment of " + ae);
}
});
rfid.addErrorListener(new ErrorListener() {
public void error(ErrorEvent ee) {
System.out.println("error event for " + ee);
}
});
rfid.addTagGainListener(new TagGainListener()
{
public void tagGained(TagGainEvent oe)
{
System.out.println("Tag Gained: " +oe.getValue() + " (Proto:"+ oe.getProtocol()+")");
}
});
rfid.addTagLossListener(new TagLossListener()
{
public void tagLost(TagLossEvent oe)
{
System.out.println(oe);
}
});
rfid.addOutputChangeListener(new OutputChangeListener()
{
public void outputChanged(OutputChangeEvent oe)
{
System.out.println(oe);
}
});
rfid.openAny();
System.out.println("waiting for RFID attachment...");
rfid.waitForAttachment(30000);
System.out.println("Serial: " + rfid.getSerialNumber());
System.out.println("Outputs: " + rfid.getOutputCount());
}
}
aber ich erhielt den folgenden Fehler:
Phidget21 - Version 2.1.8 - Built 22. Februar 2016 11.45.54 für RFID Befestigung warten ... Exception in thread "main" PhidgetException 13 (gegeben Timeout überschritten wurde.) bei com.phidgets.Phidget.waitForAttachment (native Methode) bei RFIDExample.main (RFIDExample.java:58)
Was ich schon versucht habe, ist, den Timer zu erhöhen, aber das Problem hat nicht gelöst. Ich habe versucht, die Anwendung des Herstellers für meinen RFID-Chip zu verwenden, und es hat funktioniert, es hat Tags richtig erkannt. Aber ich brauche Quellcode und nicht die fertige Anwendung.
Jede Hilfe wäre sehr nützlich! Vielen Dank im Voraus! :)
BR, Loukas