Ik probeer de K8055 (USB experimenteerbord) aan te sturen van excel visual basic.
Bij het commando setalldigital is er geen probleem en gaan alle 8 leds aan.
Bij setdigitalchannel (1) komt er volgende foutmelding:
Kan het ingangspunt van DLL setdigitalchannel in K8055d.dll
niet vinden ??????
Heeft iemand hiermee ervaring ?
MVG,
Kurt
heb je de genoemde dll op je computer, zoja, op de juiste plaats, en zoja, is ie correct gecopieerd
ander deze dll opnieuw downloaden/intsalleren
id je dll wel juist gedeclareerd???
Heb de dll al opnieuw gedownload -> geen opl.
Andere commando's werken wel bvb.: setalldigital
Bij verkeerde commando's krijg ik een andere foutmelding
dus dat is het ook niet.
Bij het meegeleverde demoprogramma werkt alles op de interface kaart dus het zal wel aan mij liggen.
Zal misschien nog eens proberen om de hele boel opnieuw te installeren.
Alvast bedankt.
Beste Kurt en dompelpompje,
ook ik probeer het aan de gang te krijgen, maar nog zonder succes. mijn eerste call (OpenDevice) levert alleen maar min 1 op
. Aan de andere kant lijkt het feit dat er een min 1 terug komt er wel op te wijzen dat de functie iets doet.
Uit jullie uitwisseling maak ik op dat het juist declareren belangrijk is, aangezien registreren van de DLL via regsvr niet gaat.
Ik heb de DLL in de system32 dir staan (volgens mij zet de setup van het demo programma die daarin), en het excel bestand ergens anders.
in mijn excel module heb ik de volgende code:
Public Declare Sub K8055D Lib "K8055D.dll" ()
Public Declare Function OpenDevice Lib "K8055D" (CardAddress As Long) As Long
Public Sub test1()
Dim v1 As Long
v1 = OpenDevice(0)
MsgBox (v1)
End Sub
Als ik de routine test1 draai krijg ik steeds -1. De demo software draait zonder problemen.
Enig idee waar de fout zit?
Alvast bedankt..
Micheil,
Dit draait:
-------------------------------------------------------
Dim i As Long
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)
Public Sub test1()
Dim v1 As Long
v1 = OpenDevice(0)
MsgBox ("Card :" & v1)
ClearAllDigital
ClearAllAnalog
SetAllDigital
MsgBox ("SetAllDigital")
ClearAllDigital
MsgBox ("ClearAllDigital")
SetDigitalChannel (2)
MsgBox ("SetDigitalChannel (2)")
v1 = ReadAnalogChannel(1)
MsgBox ("Analog(1) :" & v1)
SetAllAnalog
MsgBox ("SetAllAnalog")
ClearAnalogChannel (2)
MsgBox ("ClearAnalogChannel (2)")
For i = 1 To 255
WriteAllDigital (i)
'/ OutputAnalogChannel(1, 222) << werkt niet ?
'/ OutputAnalogChannel(2, 137) << werkt niet ?
Next
MsgBox ("Ready")
ClearAllDigital
ClearAllAnalog
MsgBox ("all closed") '<< op dit moment brandt het PMW1 ledje / LD9 nog steeds
End Sub
---------------------------------
zoals je ziet nog wel wat rare zaken, die post ik even in een aparte topic..
Dank voor t meedenken nog.