18.03.2008, 09:35
(Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2008 09:45 von joe1234.)
Beitrag #1
|
|
|
18.03.2008, 10:35
Beitrag #2
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
CPC
Deine Frage verwirrt etwas. Worum geht es konkret?
Geht es um die komplette Einbindung der dll in LV, wie hier suggeriert?
' schrieb:Da ich das Gerät in LV nicht über eine Schnittstelle auswählen kann, muss ich irgendwie die .dll einbinden. Jedoch habe ich genau hier Probleme und wollte um Rat bitten!!!
Dann viel Spass, bei den ganzen Strukturen, die da in den Header-Dateien definiert werden...
Oder geht es "nur" darum, HEX-Werte in Dezimalwerte zu wandeln?
' schrieb:Das Gerät liefert mir Hexadezimalwerte und ich möchte diese Werte direkt in Dezimalwerte um wandeln, so dass ich die Änderung der Werte live verfolgen kann.
Dann such mal im Forum, hatten wir schon öfters.
MfG, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
18.03.2008, 10:56
Beitrag #3
|
joe1234
LVF-Gelegenheitsschreiber
Beiträge: 136
Registriert seit: Sep 2007
2010
2007
kA
Deutschland
|
CPC
' schrieb:Deine Frage verwirrt etwas. Worum geht es konkret?
Geht es um die komplette Einbindung der dll in LV, wie hier suggeriert?
Dann viel Spass, bei den ganzen Strukturen, die da in den Header-Dateien definiert werden...
Oder geht es "nur" darum, HEX-Werte in Dezimalwerte zu wandeln?
Dann such mal im Forum, hatten wir schon öfters.
MfG, Jens
Meine Aufgabe besteht eigentlich darin, das bzw. die Ergebnisse von Hexadezimal in Dezimal umzuwandeln. Was eigentlich nicht so schwer wäre, wenn ich das Gerät mit LV auslesen könnte. Und genau da liegt der Wurm, ich habe keine Ahnung wie ich es auslesen soll!!!
Gruß Joe
|
|
|
18.03.2008, 12:21
Beitrag #4
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
CPC
Deine Frage lautet (momentan) also im Klartext:
Wer kann mir bei der Einbindung der CPC-CAN-DLL in LV behilflich sein?
Dann frag das halt auch, anstatt das noch mit HEX->DEZ Konversionen (wofür es übrigens ein VI in der String-Palette gibt) zu vermischen.
MfG, Jens
P.S.: Ach ja, meine Antwort lautet nein, habe bei einer solchen DLL mit Structures hoch 5 keine Lust, mich einzuarbeiten.
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
18.03.2008, 12:52
(Dieser Beitrag wurde zuletzt bearbeitet: 18.03.2008 12:55 von jg.)
Beitrag #5
|
StefanHH
LVF-User
Beiträge: 35
Registriert seit: Aug 2006
7.0, 8.21, 8.5, 2013
2006
DE_EN
21220
Deutschland
|
CPC
Hallo Joe,
selbiges habe ich vor einiger Zeit auch machen dürfen, allerdings mit anderer HW... Mit Hilfe des NI Wizards "Import shared library" unter LV 8.5 (Menuleiste: Tools/Import/SharedLibrary(.dll)), geht das. Dort gibst du den Pfad zur DLL und Headerfile an und LV erkennt automatisch welche Funktionen zu importieren sind. Für die Strukturen bist du gezwungen eigene Cluster anzulegen, die die structs aus dem header abbilden. Wichtig, wenn du auf selbst definierten Clustern arbeitest, musst du dem CallLibraryFunctionNode, die struktur als Übergabeparameter zur Verfügung stellen (also: am Eingang und Ausgang anschließen.) Ich empfehle die Structs bzw. Cluster als TypeDef anzulegen und alles in einer Bibliothek zu bündeln. Zudem bietet LV tolle Möglichkeiten, die API gleich mit in die VI Dokumentation mit einzubinden.
Diese Aufgabe ist tatsächlich mit etwas Aufwand verbunden und würde zulange dauern, um sich "by the way" damit zu beschäftigen. Aber, falls spezielle Fragen auftreten, helfe ich gerne.
Auf der NI Homepage sind Beispiele dazu zu finden. (Ein hilfreiches war: http://zone.ni.com/devzone/cda/tut/p/id/2818) und wie Jens geschrieben hatte, sind im Forum schon einige Fragen dazu gefallen.
Schönen Gruß,
Stefan
Unter Intuition versteht man die Fähigkeit gewisser Leute,
eine Lage in Sekundenschnelle falsch zu beurteilen.
-Friedrich Dürrenmatt-
|
|
|
18.03.2008, 12:56
Beitrag #6
|
joe1234
LVF-Gelegenheitsschreiber
Beiträge: 136
Registriert seit: Sep 2007
2010
2007
kA
Deutschland
|
CPC
' schrieb:Wer kann mir bei der Einbindung der CPC-CAN-DLL in LV behilflich sein?
Die Frage ist so nicht ganz richtig. Ich will das Gerät nur "abhören". Wenn ich eine Schnittstelle zum Auswählen hätte, würde ich dananch nur noch "read"-Befehl einbauen, aber genau diese Schnittstelle habe ich nicht!
Das "simple" Konvertieren in Dezimal schaffe ich auch selber.
Gruß Joe
|
|
|
20.03.2008, 15:10
Beitrag #7
|
joe1234
LVF-Gelegenheitsschreiber
Beiträge: 136
Registriert seit: Sep 2007
2010
2007
kA
Deutschland
|
CPC
' schrieb:Hallo Joe,
selbiges habe ich vor einiger Zeit auch machen dürfen, allerdings mit anderer HW... Mit Hilfe des NI Wizards "Import shared library" unter LV 8.5 (Menuleiste: Tools/Import/SharedLibrary(.dll)), geht das. Dort gibst du den Pfad zur DLL und Headerfile an und LV erkennt automatisch welche Funktionen zu importieren sind. Für die Strukturen bist du gezwungen eigene Cluster anzulegen, die die structs aus dem header abbilden. Wichtig, wenn du auf selbst definierten Clustern arbeitest, musst du dem CallLibraryFunctionNode, die struktur als Übergabeparameter zur Verfügung stellen (also: am Eingang und Ausgang anschließen.) Ich empfehle die Structs bzw. Cluster als TypeDef anzulegen und alles in einer Bibliothek zu bündeln. Zudem bietet LV tolle Möglichkeiten, die API gleich mit in die VI Dokumentation mit einzubinden.
Diese Aufgabe ist tatsächlich mit etwas Aufwand verbunden und würde zulange dauern, um sich "by the way" damit zu beschäftigen. Aber, falls spezielle Fragen auftreten, helfe ich gerne.
Auf der NI Homepage sind Beispiele dazu zu finden. (Ein hilfreiches war: http://zone.ni.com/devzone/cda/tut/p/id/2818) und wie Jens geschrieben hatte, sind im Forum schon einige Fragen dazu gefallen.
Schönen Gruß,
Stefan
Danke Stefan, das ist schon um einiges hilfreicher. Ich mache mich gerade damit vertraut und werde mich sicher bald wieder melden.
Ansonsten wünsche ich allen Frohe Ostern und viel Spass beim Eiersuchen!!! ;-)
Gruß Joe
|
|
|
25.03.2008, 10:05
Beitrag #8
|
joe1234
LVF-Gelegenheitsschreiber
Beiträge: 136
Registriert seit: Sep 2007
2010
2007
kA
Deutschland
|
CPC
' schrieb:Hallo Joe,
selbiges habe ich vor einiger Zeit auch machen dürfen, allerdings mit anderer HW... Mit Hilfe des NI Wizards "Import shared library" unter LV 8.5 (Menuleiste: Tools/Import/SharedLibrary(.dll)), geht das. Dort gibst du den Pfad zur DLL und Headerfile an und LV erkennt automatisch welche Funktionen zu importieren sind. Für die Strukturen bist du gezwungen eigene Cluster anzulegen, die die structs aus dem header abbilden. Wichtig, wenn du auf selbst definierten Clustern arbeitest, musst du dem CallLibraryFunctionNode, die struktur als Übergabeparameter zur Verfügung stellen (also: am Eingang und Ausgang anschließen.) Ich empfehle die Structs bzw. Cluster als TypeDef anzulegen und alles in einer Bibliothek zu bündeln. Zudem bietet LV tolle Möglichkeiten, die API gleich mit in die VI Dokumentation mit einzubinden.
Diese Aufgabe ist tatsächlich mit etwas Aufwand verbunden und würde zulange dauern, um sich "by the way" damit zu beschäftigen. Aber, falls spezielle Fragen auftreten, helfe ich gerne.
Auf der NI Homepage sind Beispiele dazu zu finden. (Ein hilfreiches war: http://zone.ni.com/devzone/cda/tut/p/id/2818) und wie Jens geschrieben hatte, sind im Forum schon einige Fragen dazu gefallen.
Schönen Gruß,
Stefan
Hallo,
ich habe nun die cpcwin.dll mit dem Headerfile cpclib.h angegeben. Dabei hatte ich mehrere VIs erhalten. Jedoch ist mir aufgefallen, dass LV nicht alle Funktionen übernommen hat. Dies liegt wohl daran, dass manche Funktionen einen nicht-Standard Übergabeparameter haben (also kein int, char...). Kann das irgendwie umgehen? Also ich würde gerne alle Funktionen übernehmen.
Gruß Joe
|
|
|
25.03.2008, 10:58
Beitrag #9
|
jg
CLA & CLED
Beiträge: 15.864
Registriert seit: Jun 2005
20xx / 8.x
1999
EN
Franken...
Deutschland
|
CPC
Aha, sind wir also doch hier:
' schrieb:Deine Frage lautet (momentan) also im Klartext:
Wer kann mir bei der Einbindung der CPC-CAN-DLL in LV behilflich sein?
Dann frag das halt auch, anstatt das noch mit HEX->DEZ Konversionen (wofür es übrigens ein VI in der String-Palette gibt) zu vermischen.
MfG, Jens
P.S.: Ach ja, meine Antwort lautet nein, habe bei einer solchen DLL mit Structures hoch 5 keine Lust, mich einzuarbeiten.
Schon das LVF-Tutorial gelesen?
MfG, Jens
Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)
!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!
Einführende Links zu LabVIEW, s. GerdWs Signatur.
|
|
|
26.03.2008, 11:36
(Dieser Beitrag wurde zuletzt bearbeitet: 26.03.2008 11:42 von joe1234.)
|
|
|
| |