Seite: 3/26 USB-RFID: Technische Daten Technische Daten Charakteristik • Leseeinheit für RFID-Transponder • Schnittstelle: USB • 16-Bit Mikrocontroller • Stromversorgung aus der USB-Schnittstelle • ABS Gehäuse Schnittstelle • USB-Schnittstelle nach dem Standard USB 2.0 Anschluss: USB-Buchse Typ B Datenübertragungsrate: bis zu 12 MBit/s (Full Speed) RFID-Leseeinheit •...
Seite: 5/26 USB-RFID: Beschreibung Beschreibung Anschlüsse und Konfigurationselemente Das RFID-Modul verfügt über einen USB-Steckverbinder für die Da- ten-Schnittstelle und die Stromversorgung (siehe Abb. 1). Weiterhin befindet sich in dem Gerät eine mehrfarbige Leuchtdiode für die Sta- tusanzeige, für die Bedeutung der Farben siehe Tab. 1. Nach dem Öffnen des Moduls ist ein Programmierstecker und zwei Kurzschluss-...
Seite: 6/26 USB-RFID: Beschreibung USB-Schnittstelle Das Modul verfügt über eine USB-Schnittstelle zur Datenübertragung zwischen dem Modul und einem Steuerrechner (üblicherweise einem PC). Die Datenübertragungsrate beträgt 230,4 kBaud, wodurch kurze Antwortzeiten gesichert sind. Die USB-Schnittstelle erfordert einen kurzen Abstand zwischen dem Steuerrechner und dem Modul, durch die Datenkabel wird der Steuer- rechner mit dem Modul galvanisch verbunden.
Seite: 7/26 USB-RFID: Beschreibung muniziert intern mit dem Mikrocontroller mit der o.g. Datenübertra- gungsrate von 230,4 kBaud. Die USB-Schnittstelle ist mit der USB-Version 2.0 kompatibel, sie nutzt den Full-Speed Mode, d.h. dass die Übertragung über USB mit der Datenrate von maximal 12 MBit/s erfolgt. Der Anschluss ist der B- Steckverbinder (CN2 in Abb.
Seite: 8/26 USB-RFID: Inbetriebnahme Inbetriebnahme Das Modul USB-RFID benötigt für seine Funktion eine funktionierende USB-Schnittstelle. Für den Anschluss ist ein passendes Datenkabel erforderlich. Um die Funktion des Moduls zu überprüfen, gehen Sie wie folgt vor: • Schließen Sie das Modul mit Hilfe eines Datenkabels an eine USB- Schnittstelle des PCs an.
Seite 9
Seite: 9/26 USB-RFID: Inbetriebnahme nikation neu zu starten. Gelingt es auch dann nicht, eine fehlerfreie Antwort von dem RFID-Modul zu erhalten, liegt ein grundlegender Fehler vor. Überprüfen Sie das Anschlusskabel und die Funktion der benutzten USB-Schnittstelle des PCs. • Funktioniert alles fehlerfrei, können Sie durch Drücken der Tasten 'n', 'd' und 'v' weitere Produktinformationen abfragen.
Seite: 10/26 USB-RFID: Treiberinstallation Treiberinstallation Installation des virtuellen Ports für die USB-Schnittstelle Der virtuelle Porttreiber ist für den Anschluss des Moduls an eine USB-Schnittstelle erforderlich. Die Installationsdaten befinden sich im Verzeichnis "USB" des beiliegenden Softwarepakets. Beachten Sie dabei folgendes: • Alternativ zu den Treibern aus der beiliegenden CD können aktuelle Treiber von der Homepage des Herstellers des USB-Adapters her- untergeladen werden.
Die Details entnehmen Sie dem Benutzerhand- buch Ihres Compilers. Die Definitionen der Benutzerfunktionen sind in der Datei USB-RFID.h enthalten. Sollte Ihr Compiler keine Importbib- liothek aus der dynamischen Linkbibliothek erstellen können, steht Ih- nen die Datei USB-RFID.lib zur Verfügung.
Seite 12
Seite: 12/26 USB-RFID: Softwareschnittstelle Tab. 2. Rückgabewerte der Funktionen Rückga- Fehlermeldung Beschreibung bewert No error Die Datenübertragung endete er- folgreich. No notification data Es wurden keine automatisch ü- is available bermittelten Daten empfangen. Diesen Rückgabewert liefert nur die Funktion USB_RFID_CheckAutoInput.
Seite 13
Seite: 13/26 USB-RFID: Softwareschnittstelle Tab. 3. I/O-Fehler Rückga- Fehlermeldung Beschreibung bewert No error Die Funktion endete erfolgreich. Nummer des Kommunikationska- PortNumber out of range nals PortNumber war größer als maximal zulässig. Port not allocated Bei der Initialisierung konnte dem Kommunikationskanal kein Spei- cher zugeteilt werden.
Seite 14
Seite: 14/26 USB-RFID: Softwareschnittstelle Rückga- Fehlermeldung Ursache bewert Error setting the Die Steuerleitungen der Schnitt- control lines of the stelle konnten nicht angesteuert port werden. Error reading the Der Zustand der Statusleitungen status lines of the der Schnittstelle konnte nicht er- port mittelt werden.
Schnittstelle zuzuordnen. Wird Programm beendet, Softwareschnittstelle USB-RFID.dll exklusiv benutzt hat, werden alle geöffneten Kom- munikationskanäle automatisch geschlossen. Der Programmierer muss in einem solchen Falle keine Sorge dafür tragen. Funktion USB_RFID_Purge int pascal USB_RFID_Purge (WORD PortNumber); Löscht die Schnittstellenpuffer und liefert einen Fehlercode nach Tab.
Seite 16
Seite: 16/26 USB-RFID: Softwareschnittstelle Funktion USB_RFID_Buffer_State int pascal USB_RFID_Buffer_State (WORD PortNumber, BOOL & empty); Gibt in der Variable empty den Zustand des Empfangspuffers des RFID-Moduls zurück und liefert einen Fehlercode nach Tab. 2. Die Funktion kann verwendet werden, um vor einem Transfer einer größe- ren Datenmenge sicherzustellen, dass in dem Empfangspuffer genug Platz dafür vorhanden ist.
Seite: 17/26 USB-RFID: Softwareschnittstelle RFID-Leseeinheit Funktion USB_RFID_EnableRFID int pascal USB_RFID_EnableRFID (WORD PortNumber, BOOL Enable); Schaltet den RFID-Empfänger ein oder aus. Ist der Empfänger aus- geschaltet, werden keine neuen Transponder identifiziert und der zu- letzt eingelesene Code wird als ungültig markiert.
Seite 18
Seite: 18/26 USB-RFID: Softwareschnittstelle diert werden, gleicht der Rückgabewert -1 d.h. alle 8 Bytes gleichen 255 (FFh). Für eine Entscheidung über die Gültigkeit der übermittelten Zahl Value reicht es also das MSB auf -1 zu testen. Für die Definiti- on dieser Konstanten siehe auch Tab. 4.
Daten seit dem letzten Aufruf dieser Funktion oder der Funktion USB_RFID_GetAutoMask empfangen wurden. Der Wert ist eine Bitkombination aus den in der Datei USB-RFID.h defi- nierten Werten AUTO_xxx. (siehe Tab. 5). Je nach den gesetzten Bits in der Bitmaske CommandMask sollen entsprechende Funktionen zur Ermittlung der empfangenen Daten aufgerufen werden, diese sind e- benfalls in der Tabelle 5 als Empfangsfunktionen aufgelistet.
Seite: 20/26 USB-RFID: Softwareschnittstelle sprechenden Fehlerbehandlung. Ist der Rückgabewert gleich Null, entscheidet die Bitmaske CommandMask, ob automatisch übermittelte Daten empfangen wurden. Wenn die Bitmaske CommandMask eben- falls gleich Null ist, lagen keine neuen Daten vor. Die Funktion USB_RFID_CheckAutoInput soll periodisch aufgeru- fen werden, wenn das RDID-Modul Daten automatisch sendet.
Seite 21
Seite: 21/26 USB-RFID: Softwareschnittstelle Funktion USB_RFID_GetAutoMask int pascal USB_RFID_GetAutoMask (WORD PortNumber, WORD & CommandMask); Gibt die Bitmaske CommandMask zurück, die angibt, welche Daten seit dem letzten Aufruf dieser Funktion oder der Funktion USB_RFID_CheckAutoInput empfangen wurden. Alle Funktionen der Softwareschnittstelle, welche Daten von dem RFID-Modul empfangen, können auch automatisch übermittelte Daten...
Seite: 22/26 USB-RFID: Softwareschnittstelle Fehlerbehandlung Funktion USB_RFID_State int pascal USB_RFID_State (WORD PortNumber); Liefert einen Fehlercode nach Tab. 2. Die Funktion kann verwendet werden, um das Ergebnis der letzten Operation erneut abzufragen. Die Funktion hat keinen Einfluss auf die Kommunikation und kann zu jeder Zeit aufgerufen werden.
Funktion USB_RFID_Version WORD pascal USB_RFID_Version(); Liefert die Version der Softwareschnittstelle (der dynamischen Link- bibliothek USB-RFID.dll). Die Funktion soll verwendet werden, um festzustellen, ob eine Softwareschnittstelle mit der passenden Version verwendet wird. Die Funktion soll aufgerufen werden, bevor die restli- chen Funktionen der Softwareschnittstelle verwendet werden.
Seite 24
Seite: 24/26 USB-RFID: Softwareschnittstelle Der Rückgabewert ist wie bei der Funktion USB_RFID_Version eine vorzeichenlose 16 Bit-Zahl Version. Die dynamische Linkbibliothek USB-RFID.dll. und die Firmware des RFID-Moduls sind miteinander kompatibel, wenn die Hauptversionsnummern identisch sind. Funktion USB_RFID_FW_Date int pascal USB_RFID_FW_Date (WORD PortNumber, char * DateString);...
Seite: 25/26 USB-RFID: Softwareschnittstelle Rumpf eines Kommunikationsprogramms #include <stdio.h> #include <windows.h> #include "USB-RFID.h" int main() // check the DLL version: if ((USB_RFID_Version() & 0xFF00) != 0x0100) printf ("Wrong DLL Version: expected 1.x, found %d.%02d\n", USB_RFID_Version() / 0x100, USB_RFID_Version() & 0xFF);...
Seite 26
Seite: 26/26 USB-RFID: Softwareschnittstelle if (USB_RFID_GetLastRFID (PortNum, Data)) printf ("%s\n", USB_RFID_ErrorMessage (PortNum)); else // handle RFID data here // insert further cases here // insert service of other commands here //finish the program: return 0; CGC Instruments CGC Instruments CGC Instruments CGC Instruments Tel.: +49 (371) 355 098–55...