2017-04-02 3 views
0

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

Antwort

0

schließlich das Problem war, dass ich den Code auszuführen versuchte, und ich hatte die fertige Anwendung offen zugleich.

Jetzt funktioniert es richtig.

Problem gelöst.