VB6 et contrôle externe /d'un peripherique

[Résolu]
Signaler
Messages postés
6
Date d'inscription
lundi 27 mars 2006
Statut
Membre
Dernière intervention
13 décembre 2007
-
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
-
Bonjour,

Je recherche un exemple de code en VB6 ( voire VBA Excel) pour le contrôle d'un périphérique.... un example simple.

Surtout ce qui m'interesse c'est la procedure d'envoi d'un signal de declenchement, ouverture  pendant une duree puis second signal de fermeture........

Merci

thierrypp

8 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Alors on va dire les choses autrement.

De manières générales, il n'est pas possible de piloter simplement les fils disponibles sur les ports des PC sous Windows.

Il faut obligatoirement passer par un driver. Driver généralement livré avec le périphérique à piloter, éventuellement assortis d'une dll pour etre utilisable depuis un logiciel que tu développerais toi même.

Cependant, pour ce qui est des périphériques de base d'un "IBM PC" (port série, port //, ...) il existe une dll incluant un driver (InpOut32.dll), mais necessite de connaitre parfaitement l'architecture d'un ordinateur, puisqu'il faut aller manipuler des différents registres matériels du port pour acceder à l'extérieur.

Pour ce qui est des ports "modernes" (USB, FireWire, ....) les choses se compliquent puisque dans ce cas là il n'y a pas de drivers generiques. Il faut un driver capable de dialoguer avec une puce située sur le périphérique lui-même et qui identifie ce dernier dans Windows. Cette puce contient entre-autre un identifiant fabricant et un identifiant matériel qui permet à Windows de reconnaitre le type de matériel inserer et d'aller chercher le driver necessaire à son fonctionnement. Et se faire référencer comme fabricant coute extrement cher et n'est valable que pour des grandes séries. Sinon, il faut accepter utiliser des puces génériques qui seront indentifiées sont l'id du fabricant de la puce.

Si, en connaissant un peu le matériel, on peut relativement facilement interfacer un port série ou un port parallèle hors de leur fonctions premières, il en va tout autrement pour les ports USB, Firewire, .... ou dans ce cas là, il faudra passer par des cartes interfaces du commerce dédiées à cet effet, et livrées avec tout le necessaire. On peut en trouver entre-autre chez Velleman je crois bien, sinon c'est les distributeurs style Selectronic ou Conrad

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonjour,
De quel périphérique s'agit-il ?
Car tout dépend des drivers du périphérique en cause.
Un périphérique est en général livré avec sa documentation, surtout s'il s'agit de robotique. Cette documentation expose en général les dll utilisées, leurs fonctions, les paramètres qu'elles attendent et les valeurs qu'elles retournent.


Ces dll et fonctions ne se ressemblant pas entre un périphérique et l'autre, aucun exemple ne te serait vraiment utile.
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
salut,
sauf plus génériquement sur les ports com avec le composant mscomm, documentation sur la msdn.

voir les sources rs232 par exemple
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
6
Date d'inscription
lundi 27 mars 2006
Statut
Membre
Dernière intervention
13 décembre 2007

Merci,

mais en fait pas forcément!

Exemple: clef USB

autre:  un simple etage de transistor, si un signal est maintenu haut, alors il reste en blocage et vice versa...

C'est donc ce type élémentaire d'exemples que je souhaiterais connaître.

Attention, il s'agit de l'envoi de signaux à basse tension procenant d'un port de pc, donc pas de conversion de puissances.

En résumé, c'est le switch on/off par envoi ou reception d'un signal à partir d un code VB
, Merci!
thierrypp
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
alors voir réponse de jmfmarques
Messages postés
6
Date d'inscription
lundi 27 mars 2006
Statut
Membre
Dernière intervention
13 décembre 2007

Oui, mais je cherchais un example simple de code, par forcément opérationnel mais pour être sur la voie pour débuter une fois un tel périphérique en main....

Merci

thierrypp
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
46
euh.. je crois qu'on ne s'est pas compris.
est-ce que ta carte graphique NVidia fonctionnerait parfaitement avec les pilotes ATI?

la dll, la documentation, les exemples etc... sont fournis avec le matériel puisque les composants sont propriétaires!
"un exemple" ne fonctionnerait que pour un cas de figure qui risque de ne pas être le tien.
lit ta doc ou va sur le site du constructeur de ton matériel, y'a rien d'autre à faire
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
6
Date d'inscription
lundi 27 mars 2006
Statut
Membre
Dernière intervention
13 décembre 2007

oui, mais ma demande est plus basique,

vraiment j'ai bien saisi la problématique avec les dll...

supposons tout simplement

tout simplement que ma sortie USB doive fournir un saut de signal ( tension modifiée), comment produire cet évènement?

Merci

thierrypp