VELLEMAN K8055 User guide

K8055D.DLL 1
Einführung zu der DLL für die USB Experiment Interface Board K8055
Die K8055 Interface Board hat 5 digitale Eingangskanäle und 8 digitale Ausgangskanäle. Zusätzlich
gibt es 2 analoge Eingänge, 2 analoge Spannungsausgänge und 2 PWM (Pulse Width Modulation)-
Die Anzahl der Ein-/Ausgänge können Sie noch vergrößern, indem Sie (bis maximal 4) Karten an die
USB-Stecker des Computers anschließen. Jeder Karte wird eine eigene Identifikationsnummer mittels
2 Steckbrücken, SK 5 und SK6, zugewiesen (siehe Tabelle 1 unten für die Nummerierung).
Alle Kommunikationsprogramme sind in einer Dynamic Link Library (DLL) K8055D.DLL gespeichert.
Dieses Dokument beschreibt alle Arbeitsweisen und Funktionen der DLL, die für Ihre
Applikationsprogramme verfügbar sind. Mithilfe dieser Arbeitsweisen und Funktionen, die durch die
DLL exportiert werden, können Sie maßgeschneiderte Windows-Applikationen (98SE, 2000, Me, XP)
in Delphi, Visual Basic, C++ Builder oder jedem anderen 32-Bit Windows-Hilfsprogramm für
Applikationen, das DLL unterstützt, schreiben.
Eine vollständige Übersicht dieser Funktionen und Methoden, die durch K8055D.DLL exportiert
werden, können Sie weiter in diesem Dokument finden. Am Ende dieses Dokumentes gibt es eine
Liste von Programmbeispielen. Diese werden Ihnen helfen, einen Einblick in die Art und Weise zu
gewinnen, auf die Sie Ihre eigenen Applikationen entwickeln können. Die Beispiele sind in Delphi,
Visual Basic und C++ Builder geschrieben. In der Übersicht werden die Funktionen und die Methoden
der DDL erklärt.
Bitte achten Sie darauf, dass die Beispiele in den Beschreibungen der Funktionen und Methoden für
Delphi geschrieben sind.
SK5
SK6
CARD ADDRESS
(ADRESSE DER
KARTE)
EIN
EIN0AUS
EIN1EIN
AUS
2
AUS
AUS
3
TABELLE 1: Steckbrücke SK5, SK6: Einstellungen
Anmerkung
: Die Einstellungen müssen bestimmt werden, bevor das USB-Kabel an die K8055-Karte
angeschlossen ist oder der PC angeschaltet wird.
© 2003 ... Velleman
Description of the DLL2
Übersicht der Arbeitsweisen und Funktionen der K8055D.DLL
Allgemeine Arbeitsweisen
OpenDevice(CardAddress)
Öffnet den Kommunikationslink zu dem K8055-
Gerät
CloseDevice
Schließt den Link zu dem K8055-Gerät
Analog in Digital konvertieren: Arbeitsweise
ReadAnalogChannel(Channelno)
Liest den Status eines analogen Eingangskanals
ReadAllAnalog(Data1, Data2)
Liest den Status der beiden analogen
Eingangskanäle
Digital in Analog konvertieren: Arbeitsweise
OutputAnalogChannel(Channel,Data)
Stellt den analogen Ausgangskanal nach den
Daten ein
OutputAllAnalog(Data1,Data2)
Stellt die beiden Ausgangskanäle nach den Daten
ein
ClearAnalogChannel(Channel)
Stellt den analogen Ausgangskanal auf das
Minimum ein
ClearAllAnalog
Stellt alle Ausgangskanäle auf das Minimum ein
SetAnalogChannel(Channel)
Stellt den analogen Ausgangskanal auf das
Maximum ein
SetAllAnalog
Stellt alle Ausgangskanäle auf das Maximum ein
Digitaler Ausgang: Arbeitsweise
WriteAllDigital(Data)
Stellt alle digitalen Ausgänge nach den Daten ein
ClearDigitalChannel(Channel)
Löscht den Ausgangskanal
ClearAllDigital
Löscht alle Ausgangskanäle
SetDigitalChannel(Channel)
Stellt den Ausgangskanal ein
SetAllDigital
Stellt alle Ausgangskanäle ein
Digitaler Eingang: Arbeitsweise
und Funktionen
ReadDigitalChannel(Channel)
Liest den Status des Eingangskanals
ReadAllDigital(Buffer)
Liest den Status aller Eingangskanäle
Zählerfunktionen und Arbeitsweise
ResetCounter(CounterNr)
Stellt den 16-bit Pulszähler 1 oder 2 auf Null
ReadCounter(CounterNr)
Liest den Inhalt des Pulszählers 1 oder 2
SetCounterDebounceTime(CounterNr, DebounceTime)
Stellt die Entprellung (debounce time) für den
Zähler ein
© 2003 ... Velleman
K8055D.DLL 3
Funktionen und Arbeitsweisen der K8055D.DLL
OpenDevice
Syntax
FUNCTION OpenDevice(CardAddress: Longint): Longint;
Parameter
CardAddress
:
Wert zwischen 0 und 3, der mit der Steckbrücke (SK5, SK6) auf K8055 übereinstimmt
(siehe Tabelle 1).
Ergebnis
Longint:
Bei Erfolg wird der Rückgabewert die Adresse der Karte sein, die von der K8055-
Hardware gelesen wird.
Beschreibung
Öffnet den Kommunikationslink mit der K8055-Karte. Ladet die Treiber, die zur Kommunikation über
den USB-Port erforderlich sind. Dieses Verfahren soll erst erledigt sein, bevor Sie versuchen eine
Kommunikation mit K8055 zustande zu bringen.
Diese Funktion kann auch verwendet werden um die tätige K8055-Karte zu selektieren und sie zu
lesen und die Daten zu schreiben. Alle Kommunikationsroutinen nach der Selektion werden dieser
bestimmten Karte zugewiesen bis eine andere Karte selektiert wird.
Beispiel
var h: longint
;
BEGIN
h:=OpenDevice(0); // Opens the link to card number 0
END;
CloseDevice
Syntax
PROCEDURE CloseDevice;
Beschreibung
Entladet die Kommunikationsroutinen für die K8055-Karte und entladet den Treiber für die
Kommunikation über den USB-Port. Diese Handlung ist der letzte Schritt im Applikationsprogramm vor
Beendigung.
Beispiel
BEGIN
CloseDevice; // The communication to the K8055 device is closed
END;
ReadAnalogChannel
Syntax
FUNCTION ReadAnalogChannel (Channel: Longint): Longint;
© 2003 ... Velleman
Description of the DLL4
Channel:
Wert zwischen 1 und 2, der mit dem zu lesenden Status des AD-Kanals, übereinstimmt.
Ergebnis
Longint:
Die entsprechenden Daten vom 'Analogue to Digital Converter' werden gelesen.
Beschreibung
Die Eingangsspannung des selektierten 8-Bit 'Analogue to Digital Converter' –Kanals wird in einen
Wert, der zwischen 0 und 255 liegt, umgesetzt.
Beispiel
var data: longint;
BEGIN
data := ReadAnalogChannel(1);
// AD channel 1 is read to variable 'data'
END;
ReadIAllAnalog
Syntax
PROCEDURE ReadAllAnalog(var Data1, Data2: Longint);
Parameter
Data1, Data2:
'Pointers' auf die 'long integers' wo die Daten gelesen werden.
Beschreibung
Der Status von den beiden 'Analogue to Digital Converters' wird in einem Datenfeld von 'long integers'
gelesen.
Beispiel
procedure TForm1.Button1Click(Sender: TObject);
var Data1, Data2: Longint;
begin
ReadAllAnalog(Data1, Data2); // Read the data from the K8055
Label1.caption:=inttostr(Data1); // Display CH1 data
Label2.caption:=inttostr(Data2); // Display CH2 data
end;
OutputAnalogChannel
Syntax
PROCEDURE OutputAnalogChannel(Channel: Longint; Data: Longint);
Parameter
Channel:
Wert zwischen 1 und 2, der mit der 8-Bit DA Kanal-Nummer, deren Daten eingestellt
werden sollen, übereinstimmt.
Data:
Wert zwischen 0 und 255, der zu dem 8-Bit 'Digital to Analogue Converter' geschickt werden
soll.
Beschreibung
Der angegebene 8-Bit 'Digital to Analogue Converter'-Kanal ist nach den neuen Daten geändert
worden. Das bedeutet, dass die Daten einer spezifischen Spannung entsprechen. Der Wert 0 stimmt
mit der minimalen Ausgangsspannung überein (0 Volt) und der Wert 255 ist die maximale
Ausgangsspannung (+5V).
© 2003 ... Velleman
K8055D.DLL 5
Ein Wert von 'Data' zwischen diesen 2 Äußersten kann mit der folgenden Formel wiedergegeben
werden: Data / 255 x 5V.
Beispiel
BEGIN
OutputAnalogChannel (1,127);
// DA channel 1 is set to 2.5V
END;
OutputAllAnalog
Syntax
PROCEDURE OutputAllAnalog(Data1: Longint; Data2: Longint);
Parameter
Data1, Data2:
Wert zwischen 0 und 255, der zu dem '8-Bit Digital to Analogue Converter' geschickt
werden soll.
Beschreibung
Die beiden 'Digital to Analogue Converter'-Kanäle sind nach diesen neuen Daten geändert worden.
Das heißt, dass die Daten einer spezifischen Spannung entsprechen. Der Wert 0 stimmt mit der
minimalen Ausgangsspannung (0 Volt) überein und der Wert 255 stimmt mit der maximalen
Ausgangsspannung (+5V) überein. Der Wert 'Data1' oder 'Data2' zwischen diesen 2 Äußersten kann
mit der folgenden Formel wiedergegeben werden: Data / 255 x 5V.
Beispiel
BEGIN
OutputAllAnalog(127, 255);
// DA channel 1 is set to 2.5V and channel 2 is set to 5V
END;
ClearAnalogChannel
Syntax
PROCEDURE ClearAnalogChannel(Channel: Longint);
Parameter
Channel:
Der Wert zwischen 1 und 2, der mit der '8-Bit DA' Kanalnummer, in der die Daten gelöscht
werden sollen, übereinstimmt.
Beschreibung
Der ausgewählte DA-Kanal ist auf die minimale Ausgangsspannung (0 Volt) eingestellt.
Beispiel
BEGIN
ClearAnalogChannel (1); // DA channel 1 is set to 0V
END;
© 2003 ... Velleman
Loading...
+ 10 hidden pages