[C++] ou [VB] envoyer des information sur un port USB

envoyer des information sur un port USB [C++] ou [VB] - Programmation

Marsh Posté le 25-01-2002 à 21:18:52    

J'aimerai créer un programme qui me permettrais de gérer un circuit électronique ke je vais créer et pour ce il me faudrai que je puisse envoyer des information d'adresse sur le port usb ou serait connectémon circuit ...
 
Comment faire ??


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 25-01-2002 à 21:18:52   

Reply

Marsh Posté le 26-01-2002 à 12:27:05    

UP  
 
Siouplai un peu d'aide je séche al et j'aimerais pouvoir utiliser un montage electronique pour gérer mon néon mes ventillo et autre accèssoir a l'intérieur de mon pc


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 26-01-2002 à 12:44:19    

Le pb est que c'est plus compliqué qu'avec le port parallèle.
Déjà il faudra que ton circuit  ait par exemple un transceiver USB et puis il faudra que t'écrive un driver comforme à la norme USB.

Reply

Marsh Posté le 26-01-2002 à 13:22:09    

mais c'est faisable


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 26-01-2002 à 21:07:06    

up


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 26-01-2002 à 23:43:49    

Regarde dans un des derniers numeros d'Elektor, y'a un article qui peut t'interresser : il parle de la partie soft et aussi de la partie hard.
Mais franchement réflechis bien, l'USB c'est vraiment pas évident... Moi aussi je voulais faire de l'USB. J'ai consulter qq sites, qq articles, résultat : je me contente du port série !

Reply

Marsh Posté le 27-01-2002 à 12:36:58    

Merci de ta réponse  
Pour l'usb pour moi c important car mes deux port série sont deja utilisé
et le port // et série j'ai pas trop envi car je n'ai pas envi de faire passer un cable depouis l'arrière de mon PC pour aller dedans alors que j'ai 2 connecteur usb libre à l'intérieur


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 28-01-2002 à 09:49:35    

Suite à question analogue, Message de HelloWorld
  Posté le 14-06-2001 à 19:29:27                
----------------------------------------------------------------
j'y connais rien mais j'ai trouvé ca sur internet  
http://www.lvr.com/usb.htm
y'a des sources en VB + VC++
en regardant qq sources, j'ai vu qu'il faisait appel à des API windows du driver USB
j'ai fait une petite recherche et trouvé ca:
"The application interface to the driver consists of standard Win32 API functions such as CreateFile, ReadFile,WriteFile, DeviceIoControl, and CloseHandle"
 
tu as des exemples d'utilisation (faut apparement creer un "fichier" qui est envoyé ...) sur le site donné plus haut (sources)
 
je suis aussi tombé sur ce site:
http://www.mcci.com/mcci/usbofferings4.shtml
 
y'a un programme qui permet de communiquer avec le port usb (il envoit des données contenues dans un fichier texte)
http://www.mcci.com/mcci/usbrc.shtml
jette un oeil à la doc ....
 
ca devrait t'aider à débuter tout ca.
 
 :( Je ne sais pas si les URLs sont encore valides, mais y a des infos à collecter/exploiter/mettre en oeuvre.

Reply

Marsh Posté le 28-01-2002 à 17:10:13    

merci carbon_14 pour tes infos je vais aller y jeter un oeil tout de suite
 
car ca c'est un projet auquel je tien dialoguer avec le port usb


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 28-01-2002 à 17:14:17    

MoRp][eUs a écrit a écrit :

merci carbon_14 pour tes infos je vais aller y jeter un oeil tout de suite
 
car ca c'est un projet auquel je tien dialoguer avec le port usb  




 
Ms apparement, le truc dur, c pas vraiement de dialoguer avec le port USB, ms plutot de créer le circuit imprimé qui respecte la norme USB. à mon avis, il faut être balaise en electronique.

Reply

Marsh Posté le 28-01-2002 à 17:14:17   

Reply

Marsh Posté le 28-01-2002 à 17:16:28    

oui on me la deja dit mais bon je connais des electronicien au cas ou il vont m'aider


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 28-01-2002 à 20:50:02    

Bon premierement il te faut un microcontroleur USB. Tu n'y couperas pas c'est obligatoire.
 
Le plus simple c'est le EZ-USB de cypress. C'est ce que j'utilise au boulot. Y'a un 8051 + coeur USB. Du coup c'est très simple a programmer, ca supporte le full-speed (12Mbits). Y'a même un compilo C qui marche très bien avec : http://sdcc.sourceforge.net/
 
La partie embarquée est pas très compliquée: tu as quatres types de transferts: contrôle, bulk, interrupt et isochronous. Il faut juste gerer les messages de setup envoyé par le host (l'USB ne marche que dans un seul sens pour les requètes: host -> periph, d'ou le mode interrupt). Cypress fourni du code et une bonne doc.
 
Coté hôte, sous windows si tu utilise l'ezusb, tu as déja un driver écrit, qui te permet d'acceder au device facilement (via des ioctrl). C'est pas terrible mais ca marche. Sinon faut que tu te plonge dans un driver kernel (bon courage :hello:).
 
Sous linux c'est bcp plus simple, y'a une lib très bien faite (libusb), et écrire un driver kernel est très bien documenté (mais inutile a mon avis, le user-mode suffit largement).
 
Mais tu vas tomber tout de suite dans un problème plus important: les composants sont introuvable pour un particulier (nos ezusb viennent directement des USA), ce sont uniquement des composants CMS. Ensuite il te faut un couple deviceID/VendorID (pour reperer ton device sur le bus), qui s'achète pour la modique somme de 1500$US. mais tu as toujours la possibilité d'en utiliser un pas (encore) assigné.
 
La seule solution que je vois c'est celle du montage d'Elektor, tu as un microcontrolleur déja programmé, avec son driver et son vendorID (celui d'Elektor). Mais ca coute relativement cher (42? le micro programmé) et c'est limité au low-speed (et 8 bits de sortie).
 
PS: tu peux utiliser le connecteur IrDA de ta CM: c'est le port COM2 mais en +5v/0v...

Reply

Marsh Posté le 28-01-2002 à 21:20:25    

heu bin comme je peux voir utiliser l'usb c de la belle merde
mais je v kand même essayer avec le truc d'elektor 42? ca va encore a comparé des 1500$us quoi que 8bit et low-speed c vraiment con sinon le IrDa c pas le com 2 puisque g un come 2 et il est utilisé


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 02-02-2002 à 14:49:19    

Merci "MC" pour tes infos !
Je pense que ton argumentation va en faire réflechir plus d'un !
J'avais lu l'article dans Elektor et il me restait qq espoirs...plus maintenant.
 
On voit que l'USB est faite pour l'industrie, pas pour des particuliers. Mais bon, ça changera sûrement comme ça s'est passé avec les microcontroleurs...
 
Au fait, c'est quoi "le connecteur IrDA de [ma] CM" ?

Reply

Marsh Posté le 03-02-2002 à 03:30:05    

IrDA c'est le port infra rouge  
enfin normalement ta le connecteur car ta CM et le recspteur est en option


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 03-02-2002 à 15:55:44    

Disons que c'est pas impossible pour le particulier, mais pas aisé.
 
Il existe des fabriquants de petites cartes (généralement a base de ezusb ou de chips philips), mais ca coute encore trop cher a mon goût (quasiment une cetaine d'auros).
 
Le port IrDA est juste le port COM2 redirigé vers une interface IrDA (série infrarouge).

Reply

Marsh Posté le 03-02-2002 à 15:58:41    

Heu mais si le port com2 est déjà utilisé on peu pas utiliser le port irda ??


---------------
L'Internet serait une toile comme les autres si elle n'avait ses millions d'araignées ...
Reply

Marsh Posté le 03-02-2002 à 16:28:22    

vu qu'y a l'air d'avoir des connaisseurs, juste par pure curiosité , le ISA ne serait il pas un bon compromis ? (OK, les recente CM en ont plus du tout, mais bon, j'ai dit que c t par curiosité :D )

Reply

Marsh Posté le 03-02-2002 à 17:26:28    

Bof, c'est vraiment sans issue l'ISA, mais une carte IO ne coute pas cher et est très facile a programmer (sauf sous win2k/XP ou les ports I/O sont inaccessible sans passer par un pilote kernel).

Reply

Marsh Posté le 18-10-2002 à 08:43:42    

Et le problème du vendorId, c'est quoi exactement ? Il y a moyen de faire sans ? ça donne quoi au niveau légal ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed