Ich versuche, einen parallelen Anschluss von einem Computer als eine Form billiger digitaler Ausgabe zu verwenden, um verschiedene Dinge zu tun (Steuermotoren, Licht-LEDs, Endschalter zum Lesen usw.).
Ich möchte wissen, wie man die 8 Datenpins an einem parallelen Port mit C ++ steuert, aber es gibt einen Haken. Da ich einen modernen Computer mit einem modernen Betriebssystem verwende, gibt es einige Probleme.
Erstens erlauben moderne Windows-Betriebssysteme keinen direkten Zugriff auf parallele Port-Pins. Ich muss einen Treiber durchgehen. Ich wurde darauf hingewiesen, Inpout32 zu verwenden, aber das Beispielprogramm wurde kompiliert und ordnungsgemäß ausgeführt, aber meine angeschlossene Hardware reagierte nicht. Eine andere Person hat mich auf die Verwendung der Windows-API hingewiesen. Ich habe die MSDN durchsucht und nur Erwähnungen der entsprechenden Funktion gefunden, aber ohne Beispielcode bin ich verloren (möglicherweise suche ich an den falschen Stellen).
Das zweite Problem ist, dass mein neuer Computer keine parallelen Ports hat. Ich muss stattdessen USB für parallele Ports verwenden (billig und direkt aus China, jeweils 5 US-Dollar, Versand und Steuern inbegriffen). Die Ports werden vom Computer als IEEE-1284-Controller erkannt und die entsprechenden Treiber wurden automatisch installiert. Der Computer meldet, dass das Gerät ordnungsgemäß funktioniert. Nach dem, was ich online gesehen habe, scheint es eine Vielzahl von Meinungen über die Nützlichkeit dieser USB-Parallelanschlüsse zu geben. Eine Person sagt, dass es einwandfrei funktioniert wie jeder normale parallele Port, der an das Motherboard gelötet ist, eine andere sagt, dass es mit einigen Hardware-Hacks funktioniert, eine sagt, dass es schreiben, aber nicht lesen kann, und eine andere sagt, dass es überhaupt nicht funktioniert, weil sie es sind nicht so konzipiert, dass es genauso funktioniert wie "echte" parallele Ports.
Ich habe bereits viel recherchiert, bevor ich hierher gekommen bin (als letztes Mittel, denke ich, hat StackOverflow auch nach dem Anwenden eines Kopfgeldes keine Antworten geliefert). Fast alle Informationen, die ich zum Programmieren paralleler Ports gefunden habe, sind veraltet und setzen voraus, dass Sie entweder einen parallelen Port auf Ihrem Motherboard, ein Betriebssystem vor Windows NT oder beides haben.
Wenn jemand eine Idee hat, wie das geht, teilen Sie sie mir bitte mit.
Vielen Dank,
-Faken
Hinweis: Ich verwende Windows 7 x64 auf einem Core i7 860. Ich programmiere in C ++ unter Visual Studio 2008 Pro. Die USB-Parallel-Port-Anschlüsse sind über USB 2.0-Ports verbunden.