Gut.... MSVC++ und VB sind ja schon Sprachen, die von Haus aus von Vellemann unterstüzt werden. Dafür gibt es auch Beispiele.
Hier erstmal der Link zur Supportseite :
http://www.velleman.eu/distributor/s...de=k8055&type=
Dort findest du einen Link auf "Software DLL Rev 2"... das ist die DLL und Beispiele in VC++ und weiter unten findet sich einen Link auf ein Beispiel in VB.
Erstmal zu MSVC++:
Im Ordner "VC++ Projekt" findest du alles was du benötigst.
Hier findest du die DLL, die Importlibrary (K8055_D.lib), die Headerdatei (K8055_C.h) und die Dateien vom Beispielprojekt. Wenn du ein neues Projekt erstellst, dann musst du nur die Header und die Importlib in dein Projekt einbinden. Die DLL benötigst du nur zum starten des fertigen Programms. Ich hab schon sehr lange nichts mehr mit MSVC++ gemacht... kann deshalb nicht sagen,wie das bei den neuen Versionen genau geht. Und ganz wichtig: Bei .NET muss beachtet werden, daß es sich hier um unmanaged code handelt. Wie man den genau nutzt kann ich leider nicht sagen.
Zu VB:
Bei VB ist alles relativ einfach. Du musst VB nur sagen, welche Funktionen sich in der DLL befinden. Dann kannst du diese Funktionen direkt nutzen.
Code:
Private Declare Function OpenDevice Lib "k8055d.dll" (ByVal CardAddress As Long) As Long
Private Declare Sub CloseDevice Lib "k8055d.dll" ()
Private Declare Function ReadAnalogChannel Lib "k8055d.dll" (ByVal Channel As Long) As Long
Private Declare Sub ReadAllAnalog Lib "k8055d.dll" (Data1 As Long, Data2 As Long)
Private Declare Sub OutputAnalogChannel Lib "k8055d.dll" (ByVal Channel As Long, ByVal Data As Long)
Private Declare Sub OutputAllAnalog Lib "k8055d.dll" (ByVal Data1 As Long, ByVal Data2 As Long)
Private Declare Sub ClearAnalogChannel Lib "k8055d.dll" (ByVal Channel As Long)
Private Declare Sub SetAllAnalog Lib "k8055d.dll" ()
Private Declare Sub ClearAllAnalog Lib "k8055d.dll" ()
Private Declare Sub SetAnalogChannel Lib "k8055d.dll" (ByVal Channel As Long)
Private Declare Sub WriteAllDigital Lib "k8055d.dll" (ByVal Data As Long)
Private Declare Sub ClearDigitalChannel Lib "k8055d.dll" (ByVal Channel As Long)
Private Declare Sub ClearAllDigital Lib "k8055d.dll" ()
Private Declare Sub SetDigitalChannel Lib "k8055d.dll" (ByVal Channel As Long)
Private Declare Sub SetAllDigital Lib "k8055d.dll" ()
Private Declare Function ReadDigitalChannel Lib "k8055d.dll" (ByVal Channel As Long) As Boolean
Private Declare Function ReadAllDigital Lib "k8055d.dll" () As Long
Private Declare Function ReadCounter Lib "k8055d.dll" (ByVal CounterNr As Long) As Long
Private Declare Sub ResetCounter Lib "k8055d.dll" (ByVal CounterNr As Long)
Private Declare Sub SetCounterDebounceTime Lib "k8055d.dll" (ByVal CounterNr As Long, ByVal DebounceTime As Long)
Das sind einfache Subfunktions-Deklarationen, die auf die DLL verweisen.
Allgemeines Vorgehen beim K8055 - Board:
Zuerst musst du den Kommunikationkanal zum Board öffnen.
Das kannst du mit OpenDevice(adresse) machen. Danach kannst du auf das Board zugreifen, wenn alles funktioniert hat. Genaue Infos zu den Funktionen finden sich in der Doku auf der Vellemann-Seite.
Ich hoffe, ich konnte etwas Helfen.
Gruß,
SIGINT
P.S.: Anbei noch ein Beispiel für Excel.
Lesezeichen