J'essaie d'utiliser un port parallèle depuis un ordinateur comme une forme de sortie numérique bon marché pour faire diverses choses (contrôler les moteurs, les LED d'éclairage, lire les interrupteurs de fin de course, etc.).
Je veux savoir comment contrôler les 8 broches de données sur un port parallèle en utilisant C ++, mais il y a un hic. Puisque j'utilise un ordinateur moderne avec un système d'exploitation moderne, cela pose quelques problèmes.
Tout d'abord, les systèmes d'exploitation Windows modernes ne permettent pas d'accéder directement aux broches du port parallèle, je dois passer par un pilote . On m'a indiqué d'utiliser Inpout32 pour ce faire, mais l'exemple de programme a été compilé et exécuté correctement, mais mon matériel connecté n'a pas répondu. Une autre personne m'a indiqué l'utilisation de l'API Windows. J'ai cherché dans le MSDN et n'ai trouvé que des mentions de la fonction appropriée, mais sans un exemple de code, je suis perdu (peut-être que je cherche au mauvais endroit).
Le deuxième problème est que mon nouvel ordinateur n'a pas de ports parallèles. Je dois plutôt utiliser USB vers des ports parallèles (bon marché et directement depuis la Chine, 5 $ chacun, frais de port et taxes inclus). Les ports sont reconnus par l'ordinateur comme des contrôleurs IEEE-1284 et les pilotes appropriés ont été automatiquement installés et l'ordinateur signale que le périphérique "fonctionne correctement". D'après ce que j'ai vu en ligne, il semble y avoir une grande variété d'opinions sur l'utilité de ces connecteurs USB vers port parallèle. Une personne dit que cela fonctionne parfaitement comme n'importe quel port parallèle ordinaire soudé à la carte mère, une autre dit que cela fonctionnera avec certains hacks matériels, une autre dit qu'elle peut écrire mais pas lire, et enfin une autre dit que cela ne fonctionnera pas du tout parce qu'ils le sont. pas conçu pour fonctionner de la même manière que les "vrais" ports parallèles.
J'ai déjà fait beaucoup de recherches avant de venir ici (en quelque sorte en dernier recours, je suppose, StackOverflow n'a donné aucune réponse même après avoir appliqué une prime). Presque toutes les informations que j'ai trouvées sur la programmation des ports parallèles sont obsolètes et supposent que vous avez soit un port parallèle sur votre carte mère, un système d'exploitation pré-Windows-NT, ou les deux.
Si quelqu'un a une idée de comment pour ce faire, pourriez-vous le partager avec moi?
Merci,
-Faken
Remarque: j'exécute Windows 7 x64 OS sur un Core i7 860. Je programme en C ++ sur Visual Studio 2008 pro. Les connecteurs USB vers port parallèle sont connectés via des ports USB 2.0.