Commander independemment les sorties D0->D7 du port parrallele

Signaler
Messages postés
8
Date d'inscription
mercredi 9 janvier 2008
Statut
Membre
Dernière intervention
9 août 2009
-
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Bonjour,

J'ai quelques notion de programmation en VB et je voudrais me perfectionner un peu. Pour cela, j'ai cherché des programmes simple mais surtout avec des explications claires, afin de comprendre le fonctionnement, pour programmer le port parrallele sous XP avec VB 2008. Mais je ne trouve pas mon bonheur. Alors je viens vers vous pour savoir si j peux compter sur votre aide.

Le but de ce programme serait de piloter des relais à partir des sorties D0->D7 en appuyant sur les touches du clavier (direction ou autre).

Merci à vous!

2 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Puisque tu es en VB2008 pourquoi poster dans la rubrique VB6 ?

Pour ce qui est du pilotage direct du port parallèle (et par extention, tout accès direct au matériel), cela n'est plus possible depuis de nombreuses années avec Windows.
L'acces au matériel ne peut se faire que par l'intermédiaire de drivers.

Dans le cas particulier du port parallèle par exemple, il n'existe aucun driver pour y accéder directement puisque généralement les drivers sont spécifiques au matériel connecté sur ce port (imprimante généralement).

Cependant certains développeurs ont développer ce que l'on appelle des drivers génériques. Il en existe plusieurs, le plus connu étant probablement la dll InpOut32.dll que tu trouvera sur le site logix4u.net.

Il te faut déclarer ses fonctions comme n'importe quelle dll api en utilisant l'instruction Declare.
Tu trouvera les exemples de codes sur le site.
ATTENTION, ces exmples sont donné pour VB6, en .Net, il faut remplacer les Integer par des Short dans les déclarations.

Quant à la précision de ta question, sur le port parallèle, tu ne peux pas positionner un seul bit à la fois. Tu positionne systématiquement les 8 bits.
Si tu veux travailler au niveau du bit, il faut donc mémoriser la valeur précédement envoyer au port pour pouvoir renvoyer exactement la même valeur que précédement sur les bits que tu ne veux pas toucher.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
Port com se pilote par:
CreateFile(), ouverture.
WriteFile() pour envoi.
CloseHandle() pour fermeture.

ciao...
BruNews, MVP VC++