Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

die USB2LPT von Haftmann unter Freebasic

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Profi-Forum
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
srsgp



Anmeldungsdatum: 30.01.2013
Beiträge: 15

BeitragVerfasst am: 18.07.2017, 19:42    Titel: die USB2LPT von Haftmann unter Freebasic Antworten mit Zitat

Parallelport unter Windows 10x64
Die USB2LPT von H. Haftmann funktioniert bei mir unter WIN10x64 nicht.
Muss ich die INPOUT32.DLL zusätzlich in FB einbinden?
Wer hat schon Erfahrung mit der USB2LPT, oder hat eine Lösung.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
St_W



Anmeldungsdatum: 22.07.2007
Beiträge: 886
Wohnort: Austria

BeitragVerfasst am: 25.07.2017, 16:21    Titel: Antworten mit Zitat

Ich kenne leider USB2LPT nicht, aber auf deren Homepage steht:
Zitat:
Not recommended for new designs
[..] Moreover, it is slow and will not work at all for 64-bit versions of Windows. [..] In conjunction with my InpOut32.dll, USB2LPT is capable to run on 64-bit Windows.
Abgesehen davon, dass das recht abenteuerlich klingt, wird erwähnt dass InpOut32 notwendig ist um auf einem 64-bit System zu funktionieren.

Was ich mich frage ist, ob du dieses USB2LPT überhaupt brauchst und nicht direkt den Parallel-Port via InpOut32 ansteuern kannst?

Dazu findet man auch einige Beispiele, wie z.B. folgende:
http://www.tech-ecke.de/index_quereinstieg.htm?/delphi/hardware_inpout32_dll.htm (Delphi)
https://johannes-mittendorfer.com/artikel/2012/01/elektronik-uber-den-lpt-port-steuern (C#)
Sind zwar keine für FreeBasic, aber das ist ja egal, denn das Prinzip ist gleich.
_________________
Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
srsgp



Anmeldungsdatum: 30.01.2013
Beiträge: 15

BeitragVerfasst am: 25.07.2017, 16:39    Titel: Antworten mit Zitat

Hallo St-W,
neue PC's haben keinen Parallelport mehr. Auch über eine PCIe zu parallel Karte geht es nicht mehr.
Ich weiß nur nicht wie die InpOut32.dll von H. Haftmann in Freebasic, oder in Windows 10x64 eingebunden wird.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
St_W



Anmeldungsdatum: 22.07.2007
Beiträge: 886
Wohnort: Austria

BeitragVerfasst am: 25.07.2017, 20:21    Titel: Antworten mit Zitat

Hallo, ich hab mir jetzt die Dokumentation und teilweise den Code von USB2LPT durchgeschaut und soweit ich es herausgelesen habe funktioniert das so:
USB2LPT besteht aus einer eigenen, per USB angebundenen Hardware und einem speziellen Treiber, der Zugriffe auf den LPT Port abfängt und entsprechend zu dieser USB-Hardware umleitet. Verwendet wird das entweder via eigener API, wobei das Gerät einfach als Datei angesprochen wird, oder über eine spezielle version von inpout32.dll.
Letztere wurde vom Autor so erweitert, dass sich via USB2LPT Treiber auf diese Hardware zugreifen kann. Außerdem gibt es zusätzliche Lpt Hilfsfunktionen, soweit ich gesehen hab.

Wenn ich das richtig verstanden habe kannst du also InpOut32 ganz normal verwenden, so wie ohne dieses USB2LPT. Alternativ (und wohl besser) verwendest du die spezifischen Lpt Funktionen (LptOpen, etc.) dieser InpOut32 DLL.
Dass das hooken (abfangen) der direkten Gerätezugriffe auf 64-bit Systemen nicht möglich ist, ist verständlich. Was mir hingegen nicht ganz klar ist, ist wieso die Ansteuerung des USB2LPT Treibers via oben verlinkter API auf einem solchen Systemen nicht möglich ist (oder habe ich das nur falsch herausgelesen?). Ich muss jedoch dazu sagen, dass ich mich mit Windows-Treibern bzw. dessen Treibermodell quasi Null auskenne, d.h. es kann leicht einen validen Grund geben wieso es nicht funktioniert.

Ich hoffe das hilft zwinkern

Soweit ich auf der Homepage gelesen hab, sollte übrigens eine per PCI(E) angebundenen LPT Schnittstelle durchaus direkt via InpOut32 ansteuerbar sein. Sowohl mit der originalen, als auch mit der durch den Autor von USB2LPT modifizierten Version - mit letzterer jedoch vermutlich leichter, da es automatisch die Portnummern (bzw. -adressen) auslesen kann.
_________________
Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
St_W



Anmeldungsdatum: 22.07.2007
Beiträge: 886
Wohnort: Austria

BeitragVerfasst am: 25.07.2017, 20:46    Titel: Antworten mit Zitat

srsgp hat Folgendes geschrieben:
Ich weiß nur nicht wie die InpOut32.dll von H. Haftmann in Freebasic, oder in Windows 10x64 eingebunden wird.

Das hab ich übrigens schon letztes Mal bei deiner Frage beantwortet und darf mich hier zitieren:
St_W hat Folgendes geschrieben:
[..] Du musst nichts speziell einbinden, ganz normal wie jede andere Bibliothek auch die Bibliothek (bzw. eine Importbibliothek) mitlinken sowie die entsprechenden Methoden deklarieren (und verwenden zwinkern ). In diesem Falle sind das Inp32 und Out32. Wie sieht deine Deklaration aus?

Und was dir bereits gesagt wurde stimmt natürlich: Du musst die 32-bit DLL für 32-bit FreeBasic bzw. 64-bit DLL für 64-bit FreeBasic verwenden.

Siehe in der Doku:
http://freebasic.net/wiki/wikka.php?wakka=ProPgSharedLibraries
http://freebasic.net/wiki/wikka.php?wakka=CompilerOptl oder http://freebasic.net/wiki/wikka.php?wakka=KeyPgInclib
_________________
Aktuelle FreeBasic Builds, Projekte, Code-Snippets unter http://users.freebasic-portal.de/stw/
http://www.mv-lacken.at Musikverein Lacken (MV Lacken)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
srsgp



Anmeldungsdatum: 30.01.2013
Beiträge: 15

BeitragVerfasst am: 29.07.2017, 16:52    Titel: Antworten mit Zitat

St_W hat Folgendes geschrieben:
srsgp hat Folgendes geschrieben:
Ich weiß nur nicht wie die InpOut32.dll von H. Haftmann in Freebasic, oder in Windows 10x64 eingebunden wird.

Das hab ich übrigens schon letztes Mal bei deiner Frage beantwortet und darf mich hier zitieren:
St_W hat Folgendes geschrieben:
[..] Du musst nichts speziell einbinden, ganz normal wie jede andere Bibliothek auch die Bibliothek (bzw. eine Importbibliothek) mitlinken sowie die entsprechenden Methoden deklarieren (und verwenden zwinkern ). In diesem Falle sind das Inp32 und Out32. Wie sieht deine Deklaration aus?

Und was dir bereits gesagt wurde stimmt natürlich: Du musst die 32-bit DLL für 32-bit FreeBasic bzw. 64-bit DLL für 64-bit FreeBasic verwenden.

Siehe in der Doku:
http://freebasic.net/wiki/wikka.php?wakka=ProPgSharedLibraries
http://freebasic.net/wiki/wikka.php?wakka=CompilerOptl oder http://freebasic.net/wiki/wikka.php?wakka=KeyPgInclib



Vielen Dank St_W für deine Antworten,
leider habe ich von diesen Vorgängen,Deklaration Null Ahnung und auch nicht die Zeit mich einzuarbeiten. Ich wäre bereit, dir den Kauf einer USB2LPT High-Speed zu Testzwecken zu finanzieren, im Voraus, um herauszubekommen, was alles gemacht werden muss, damit es funktioniert.
Es müsste auf einem PC mit Windows 10x64 getestet werden und es würde genügen, wenn ein paar LEDs an die Datenleitungen D0 bis D7 gesteckt werden (geht ohne Vorwiderstand), die dann je nach Befehl z.B. OUT 888,1 bis OUT 888,128 aufleuchten.
Bitte die Inpout von Haftmann verwenden. Ich bräuchte dann eine genaue Dokumentation was alles wie gemacht werden muss, also für einen blutigen Anfänger. Wenn dir das nicht zuviel ist, lass es mich wissen ich überweise dann das Geld auf das angegebene Konto.

Vielen Dank für die viele Mühe
SRSGP
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5868
Wohnort: Deutschland

BeitragVerfasst am: 29.07.2017, 18:07    Titel: Über den Tellerrand geschaut: COM-Port / RS232 u.ä. Antworten mit Zitat

Hallo,

muss es denn unbedingt die parallele Schnittstelle sein?

Du könntest dir, glaube ich, viel Mühsal sparen und deine Hardware gleichzeitig leichter verwendbar machen, wenn du auf RS232 bzw. RS232-via-USB (Stichwort FTDI) umsteigst.

Die Ansteuerung des COM-Ports ist sehr viel unproblematischer. Das funktioniert selbst unter neuen Windows-Versionen bei mir ohne Probleme.

Die parallele Schnittstelle (IEEE 1284 bzw. "Centronics-kompatibel") ist meiner Meinung nach gewissermaßen ein "dead horse". Die meisten neuen PCs und Laptops haben keine entsprechende Schnittstelle mehr an Bord, während zumindest ein COM-Port oft noch vorhanden ist, sodass man nicht mal einen USB-Umsetzer braucht.
Insb. bei (Embedded-)PCs, die speziell für industrielle Anwendungen gedacht sind, gehören RS232-, teilweise auch RS485-Ports, aber noch quasi selbstverständlich dazu.
Siehe z. B. https://www.ico.de/luefterlose-embedded-pc

Wenn du an deiner Hardware keinesfalls etwas ändern kannst und an die parallele Schnittstelle gebunden bist, würde ich an deiner Stelle einen alten PC für 50 oder 100 Euro kaufen, der noch einen echten Parallelport hat, darauf DOS oder Windows 95/98 installieren und meine Steuersoftware darauf laufen lassen. Mit dieser Plattform schaffst du dir auch alle Kompatibilitätsprobleme der modernen Betriebssysteme, USB-Adapter usw. vom Hals.

Ich hab gerade mal schnell bei eBay gesucht: Entsprechende Gebraucht-PCs mit Parallelport gibt es funktionsgeprüft von gewerblichen Händlern schon für unter 50 Euro.

Viele Grüße!
Sebastian
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
grindstone



Anmeldungsdatum: 03.10.2010
Beiträge: 767
Wohnort: Ruhrpott

BeitragVerfasst am: 29.07.2017, 20:47    Titel: Antworten mit Zitat

Wenn es darum geht, mit dem PC ein paar digitale I/O-Leitungen (EIN/AUS) anzusteuern, so würde ich einen Blick auf die Mikrocontroller der Reihe AT90USBxx von Atmel empfehlen. Sie lassen sich -einmal programmiert- mit jedem Computer mit USB - Port und OS ab WinXP (Linux sowieso) ansteuern, und wenn tatsächlich mal ein Teil abrauchen sollte, ist der Schaden überschaubar.

Wenn Interesse besteht, wäre ich gerne bei der Entwicklug der Firmware (wenn man es denn so nennen will grinsen ) behilflich.

Gruß
grindstone
_________________
For ein halbes Jahr wuste ich nich mahl wie man Proggramira schreibt. Jetzt bin ich einen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5868
Wohnort: Deutschland

BeitragVerfasst am: 30.07.2017, 15:28    Titel: Antworten mit Zitat

ATMEL AVR <3 zwinkern
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
srsgp



Anmeldungsdatum: 30.01.2013
Beiträge: 15

BeitragVerfasst am: 02.08.2017, 08:25    Titel: Antworten mit Zitat

Hallo grindstone,
danke für die Tipps und das Angebot.
Wahrscheinlich werde ich mich für die BasicStamp entscheiden, da dafür in Baden-Württemberg, für Schulen, einiges vorbereitet wird.

MfG

srsgp









grindstone hat Folgendes geschrieben:
Wenn es darum geht, mit dem PC ein paar digitale I/O-Leitungen (EIN/AUS) anzusteuern, so würde ich einen Blick auf die Mikrocontroller der Reihe AT90USBxx von Atmel empfehlen. Sie lassen sich -einmal programmiert- mit jedem Computer mit USB - Port und OS ab WinXP (Linux sowieso) ansteuern, und wenn tatsächlich mal ein Teil abrauchen sollte, ist der Schaden überschaubar.

Wenn Interesse besteht, wäre ich gerne bei der Entwicklug der Firmware (wenn man es denn so nennen will grinsen ) behilflich.

Gruß
grindstone
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
srsgp



Anmeldungsdatum: 30.01.2013
Beiträge: 15

BeitragVerfasst am: 02.08.2017, 08:28    Titel: Antworten mit Zitat

Sebastian hat Folgendes geschrieben:
ATMEL AVR <3 zwinkern



Hallo Sebastian,
danke für die Tipps .
Wahrscheinlich werde ich mich für die BasicStamp entscheiden, da dafür in Baden-Württemberg, für Schulen, einiges vorbereitet wird.

MfG

srsgp
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Profi-Forum Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz