Hallo Forum!! Ich habe folgendes Problem: Ich möchte ein C-Programm schreiben (erstmal ein ganz normales Konsolenprogramm, später GUI-Anwendung mit C++), dass über den FT232BM-Baustein der Firma FTDI auf USB zugreifen kann (schreiben/lesen). Ich habe mir schon den DLL-Treiber runtergeladen. - Brauche ich noch andere Dateien? - Wie muss ich mein Programm gestalten (was includen, welche Befehle)? Vielleicht kann mir jemand helfen, wie ich diesen im Programm nutzen kann... (es sollte wirklich mit dll gehen, nicht über WinAPI und dem virtuellen COM-Port). Vielen Dank! Gruß, Totti
Bei der dll ist eine Doku dabei in der die enthaltenen Funktionen aufgeführt und erklärt sind. Wenn mich nicht alles täuscht sogar eine Header Datei. Wie man eine dll (statisch oder dynamisch) "anzieht" ergoogelst du am besten, das steht schon 97576 mal im Netz... Du hast übrigens nicht geschrieben welche Entwicklungsumgebung du verwendest...
--> Entwicklungsumgebung Microsoft Visual C++. Die Befehle finde ich schon in der Doku. Leider wird da nur beschrieben, was diese machen. Nur hilft mir das nichts, wenn ich diese Funktionen nicht benutzen kann.. Also ich habe mittlerweile in mein C-Programm die Header-Datei FTD2XX.H eingebunden. Allein dadurch bekomme ich 102 Fehlermeldungen !? Durch Googeln kam ich leider auch nicht viel weiter.. Vielleicht kann mir jemand den Link einer guten Beschreibung posten..
Das Header-File alleine reicht natürlich nicht. Dein Compiler weiß dann
nur dass es die Funktionen gibt, aber nicht wo sie sind. Schau mal ob
eine LIB Datei noch dabei ist. Wenn ja weiß ich aber auch nicht genau
wie man die mit VisualStudio einbindet. Wenn nicht musst du Dir passend
zur Header Datei noch ein Modul schreiben, indem du dem Compiler sagst
welcher DLL die Funktionen genau sind und wie die jeweils in der DLL
heisen.
>Durch Googeln kam ich leider auch nicht viel weiter..
Das glaube ich jetzt einfach mal so nicht. Google nach z.B. "VisualC++
DLL einbinden" bringt mit Sicherheit mehr als du willst.
>--> Entwicklungsumgebung Microsoft Visual C++.
Welche Version ?
Link doch mal ftd2xx.lib mit dazu.
--> Version 6.0 nach dem ich #include "ftd2xx.lib" in die ftd2xx.h eingefügt habe, kam folgende Meldung: "Include-Datei kann nicht geoeffnet werden: 'ftd2xx.lib': No such file or directory" Ich habe dann einfach mal die .lib-Datei in mein Programmverzeichnis kopiert. Danach waren es wieder die 102 Fehlermeldungen (in der Header-Datei FTD2XX.H).
Hah! ok, ein Hoch auf Google... ich musste die ftd2xx.lib in das Projekt einbinden ("Die LIB-Datei einfach in der Dateiansicht des Projekts über rechte Maustaste, "Datei zu Projekt hinzufügen" ("Add file to project") dazunehmen, dann sollte VC sie automatisch richtig einordnen."). Danke erstmal!
hmm.. zu früh gefreut.. immer noch 102 Fehler ... also: ich habe jetzt folgende Konstellation: - in meinem Projektordner befinden sich jetzt zusätzlich: ftd2xx.h, ftd2xx.lib - system32-Ordner: ft2xx.dll In der .c-Datei wird #include "ftd2xx.h" aufgerufen. In der ftd2xx.h habe ich die Zeile #include "ftd2xx.lib" hinzugefügt. Ins Projekt habe ich wie oben beschrieben die .lib eingebunden...
Eine lib wird nirgendwo includiert. Das musst du mal wieder rausnehmen. Dann gehst du zu Projektoptionen -> Linker -> Libraries und dort gibst du die lib mit an. Musst du mal bissl schauen, ist schon einige Jahre her, dass ich mit der VC6 arbeiten "durfte" uargs. Jedenfalls musst du dem Linker bekannt machen, dass er die lib benutzen soll. Includiert werden nur Header-Files und in h-Dateien eines Herstellers wird überhaupt nix rumgeschrieben. Wenn du in den Projektoptionen die Linker-Lib-Option nicht findest, kannst du das dem Linker auch mit folgender Zeile am Anfang deiner cpp Datei kund tun:
1 | #pragma comment(lib, "ftd2xx.lib")
|
Außerdem könnte es helfen, das Beispielprogramm für VC von FTDI anzuschauen.
Und wenn Du Fehlermeldungen erhältst, ist deren Anzahl irrelevant, Du solltest Dir die ersten paar davon ansehen. Und, wenn Du sie nicht verstehst, hier posten.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.