VB6 et contrôle externe /d'un peripherique

Résolu
tpp2006 Messages postés 6 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 13 décembre 2007 - 3 mars 2007 à 17:43
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 - 5 mars 2007 à 15:03
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

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
5 mars 2007 à 15:03
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 #
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
3 mars 2007 à 18:06
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.
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
3 mars 2007 à 19:24
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
0
tpp2006 Messages postés 6 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 13 décembre 2007
3 mars 2007 à 19:50
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
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
3 mars 2007 à 20:00
alors voir réponse de jmfmarques
0
tpp2006 Messages postés 6 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 13 décembre 2007
3 mars 2007 à 20:21
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
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
3 mars 2007 à 20:32
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
0
tpp2006 Messages postés 6 Date d'inscription lundi 27 mars 2006 Statut Membre Dernière intervention 13 décembre 2007
3 mars 2007 à 21:12
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
0
Rejoignez-nous