IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

[Communication USB]créer 1 logiciel pour communiquer avec 1 périphérique USB


Sujet :

C++Builder

  1. #1
    Membre actif Avatar de Mattetfamilly
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 182
    Points : 201
    Points
    201
    Par défaut [Communication USB]créer 1 logiciel pour communiquer avec 1 périphérique USB
    Bonjour,

    En clair:
    Notre boite est sur le point de lancer la nouvelle génération du produit "phare" de mon service...
    Il s'agit d'un appareil de mesures.

    Nous dévelloppons tous nos logiciel en Builder C++ mais aussi dans des logiciels associés selon les environnement (Turbo Pascal, Turbo C++)
    Actuellement la génération actuelle de notre produit a une liaison BNC utiliant un protocole défini entre nos appareils et un module RS232. Le protocole RS232 nous permet actuellement la communication vers un PC.

    Mais ce nouveau produit comporte une nouvelle difficulté: il est équipé d'un port USB... Or aucun d'un dévellopeur de la boîte n'a encore communique sur un port USB...

    La question n'est pas encore formulée mais je penses que le lecteur voit déjà ou je veux en venir.
    Le protocole électrique sortie de la tour PC ne nous intéresse pas. Ce qui nous intéresse c'est la partie logiciel pour communiquer avec notre appareil qui se trouve en position de périphérique du PC.

    J'ai lu différents posts ou tutoriels sur le sujet mais je commences à être un peu perdu, voici donc mes différentes questions:
    • Existe t-il un composant complet type TComPort?
    • Le dévellopement d'un Driver pour notre produit est-il une étape incontournable? Si oui, avez vous un (lien vers un ) tutoriel pour le dévellopement d'un driver?
    • Si non une communication directe sur le port USB à partir de notre application peut-elle être envisagée? avec des fonctions que nous dévelloperions du style: InitUSB(XXXparamètres) pour l'intialisation et ou l'ouverture du port, CloseUSB(xxxparam) pour la fermeture de la connexion, EnvoiString(xxxparam, char *StringToSend) pour l'envoi s'une chaine et RceptString(xxxparam) pour la réception d'une chaîne où xxxparam seraient des paramètres à déterminer au cours du dévellopement de ces fonctions.


    Merci d'avance.
    La première solution serait vraiment géniale.
    La seconde serait dommage pour notre produit car elle me semble longue à assimiler. Mais personellement, elle représenterais une nouvelle étape dans mon acquisition personelle de compétence, ce qui me plairais bien.
    La dernière d'avance me conviendrais amplement car je penses pouvoir l'implémenter très rapidement (la date de sortie du produit est très proche).


    @+
    Mattetfamilly
    on aura tout vu...
    Mais où est-ce???...
    ------------------------------------------------------
    n'oublies pas les balises [code ][/code ]
    et le Tag

  2. #2
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Salut Mattetfamilly:
    J'ai vu je ne sais plus ou que le port USB pouvait etre gere comme un port serie, il y a eut aussi des posts sur le sujet dans la FAQ window.
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 63
    Points : 61
    Points
    61
    Par défaut
    Bonsoir Mattetfamilly,

    Je pense que dans ton service, tu dois avoir des électroniciens... Voici un site fort interressant où tu devrais trouver ton bonheur

    Si je me trompe pas, tu devrais trouver des liens pour des dll...
    Bon courage

  4. #4
    Membre actif Avatar de Mattetfamilly
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 182
    Points : 201
    Points
    201
    Par défaut
    Merci pour vos réponses,

    Attention,

    Je penses bien qu'il existe des convertisseur USB / Port Série sous forme de carte associée à un Driver: nous en achetons que nous revendons avec notre module RS232 actuel. Module qui a été dévellopé en interne. C'est d'une certaine manière ce que tu me suggères par ton lien?
    Notre ingénieur en a même dévellopé il y a 2 ans et à travers les navigations de la journée j'ai très bien compris l'aspect "hard" de ce type de convertisseur.

    Ce qui me pose davantage problème si c'est moi qui le fabrique c'est l'aspact logiciel dans le PC.

    Notre responsable produit a été clair: une prise USB sur l'appareil un câble USB entre l'appareil et le PC.
    Maintenant sur la partie Hard les choses semblent "fignolée" maintenant il reste la partie logiciel PC a créer. Si cela est nécessaire, nous en passerons par la création de notre propre Driver... Mais là à ce moment j'ai besoin de deux types de tutos: 1 pour la communication USB et un pour la création d'un Driver...

    Plus j'y réfléchis et plus j'ai l'impression qu'il faut que l'on en passe par un Driver.
    La communication type RS232 me semble hyper difficile sans ce Driver... Si j'ai bien compris pour pouvoir ouvrir ma communication il faut que je puisses cibler mon périphérique quelque soit le post USB du PC sur lequel il est connecté pour pouvoir ouvrir une connexion type RS232...

    Toujours si j'ai bien compris lors de la connexion de ce périphérique il y a une procédure d'identification entre Windows et le périphérique, si bien que Windows demande le Driver s'il ne reconnait pas l'identifiant...

    Je me perds j'ai l'impression...bon apparament ça y est, c'est mon tour:
    on aura tout vu...
    Mais où est-ce???...
    ------------------------------------------------------
    n'oublies pas les balises [code ][/code ]
    et le Tag

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 63
    Points : 61
    Points
    61
    Par défaut
    Bonjour Mattetfamilly,

    J'ai retrouvé de la doc concernant le protocol USB 1 et 2. Je pense que cette fois-çi tu devrais ton bonheur. Par contre pour le soft, tout est à créer...

    Si cela t'interresse, donne-moi un adresse mail car j'ai essayé d'envoyer via ce site mais je suis limité en taille...( 2 fichiers pdf :1 et 5 Mo)

  6. #6
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Points : 3 766
    Points
    3 766
    Par défaut
    Salut Mattetfamilly:
    Un lien sur la FAQ DevWindow sur la detection d'une connection USB.
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  7. #7
    Membre actif Avatar de cfdev
    Homme Profil pro
    Passionné
    Inscrit en
    Octobre 2004
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Passionné

    Informations forums :
    Inscription : Octobre 2004
    Messages : 220
    Points : 210
    Points
    210
    Par défaut
    Lut Mattetfamilly,

    En effet il va falloir que tu passes par un driver...

    je m'explique ce qu'il est important de savoir c'est quel est le composant qui gère l'usb dans l'appareil en question?

    je prend un exemple:
    Oscilloscope equipé du liaison usb pour transmettre les mesures.
    Sur l'oscilloscope se trouve un composant electronique FTDI (celui que j'utilise tt le temps en electronique... ).une fois l'appareil relier a mon pc il lui faut le drivers fabriquant (+ api de celui-ci s'il l'a développé) à travers lequel je peux dialoguer avec mon oscilloscope.

    En Bref normalement tout les composants usb actuels on un driver fabriquant avec leurs API...si ce n'est pas ton cas, il va falloir dev le driver toi même mais alors la.... chaud...

    bon courage

    ++
    mcercle facturation - Logiciel de facturation Win/Mac/Linux

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 63
    Points : 61
    Points
    61
    Par défaut
    Bonjour à Tous,

    virtuA a raison, si tu ne veux pas tout écrire, tu as besoin d'un driver.
    Voici l'adresse de drivers fonctionnant sous XP

  9. #9
    Membre confirmé
    Homme Profil pro
    Consultant technique
    Inscrit en
    Juillet 2002
    Messages
    519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 519
    Points : 523
    Points
    523
    Par défaut
    Bonjour,

    Il n'y a pas besoin de faire son driver complètement, il en existe des tous fait où l'on a plus qu'à modifier pour l'adapter à notre périphérique.
    http://www.thesycon.de/eng/usbio.shtml

    Je crois que l'on peut aussi se dispenser de drivers en utilisant un périphérique de type HID. C'est à dire que le périphérique doit poséder une tble HID qui permet à windows de lui attribuer un drivers générique pour utiliser les fonctions de bases (sachant que tout ce que vous voulez c'est une communication dans les 2 sens, cela devrait faire l'affaire).

    Pour avoir un exemple de programmation (aussi bien du coté PC que du coté périphérique), vous pouvez aller sur le site de http://www.pemicro.com/ et télécharger le kit de dévellppement pour 68HC908JB parce qu'il dispose d'un exemple de communication en delphi et en visual C++6 par l'USB.

    Vous pouvez aussi regarder le site suivant qui fournit quelques explications : http://hc08web.de/usb08/

    Et voici aussi une page de mon site qui permet de retrouver facilement certaines sources ou certains programmes http://www.gandf.info/dev.htm

    Pour info, le composant HIDkomponente (qui permet de communiquer avec des périphérique USB de type HID) est maintenant inclus dans le JVCL.

  10. #10
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2015
    Messages : 4
    Points : 0
    Points
    0
    Par défaut
    Citation Envoyé par lenrok Voir le message
    Bonjour Mattetfamilly,

    J'ai retrouvé de la doc concernant le protocol USB 1 et 2. Je pense que cette fois-çi tu devrais ton bonheur. Par contre pour le soft, tout est à créer...

    Si cela t'interresse, donne-moi un adresse mail car j'ai essayé d'envoyer via ce site mais je suis limité en taille...( 2 fichiers pdf :1 et 5 Mo)
    Bonjour, je suis en train d'essayer comment communiquer avec le port USB , j'ai téléchargé la bibliothèque libusb et je l'ai ajoutée à mon projet sous visual c++ mais il y a un problème voici les erreurs :
    'usbcommunication.exe' (Managé)*: 'C:\WINDOWS\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll' chargé, chargement des symboles ignoré. Le module est optimisé et l'option du débogueur 'Uniquement mon code' est activée.
    'usbcommunication.exe' (Managé)*: 'c:\Documents and Settings\Administrateur\Mes documents\Visual Studio 2008\Projects\usbcommunication\Debug\usbcommunication.exe' chargé, symboles chargés.
    'usbcommunication.exe' (Managé)*: 'C:\WINDOWS\WinSxS\x86_Microsoft.VC90.DebugCRT_1fc8b3b9a1e18e3b_9.0.21022.8_x-ww_597c3456\msvcm90d.dll' chargé
    'usbcommunication.exe' (Managé)*: 'C:\WINDOWS\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll' chargé, chargement des symboles ignoré. Le module est optimisé et l'option du débogueur 'Uniquement mon code' est activée.
    'usbcommunication.exe' (Managé)*: 'C:\WINDOWS\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll' chargé, chargement des symboles ignoré. Le module est optimisé et l'option du débogueur 'Uniquement mon code' est activée.
    'usbcommunication.exe' (Managé)*: 'C:\WINDOWS\assembly\GAC_MSIL\System.Drawing\2.0.0.0__b03f5f7f11d50a3a\System.Drawing.dll' chargé, chargement des symboles ignoré. Le module est optimisé et l'option du débogueur 'Uniquement mon code' est activée.
    'usbcommunication.exe' (Managé)*: 'C:\WINDOWS\assembly\GAC_MSIL\mscorlib.resources\2.0.0.0_fr_b77a5c561934e089\mscorlib.resources.dll' chargé
    Le programme '[5696] usbcommunication.exe: Managé' s'est arrêté avec le code 0 (0x0).
    merci de m'aider .

  11. #11
    Membre confirmé
    Homme Profil pro
    Consultant technique
    Inscrit en
    Juillet 2002
    Messages
    519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 519
    Points : 523
    Points
    523
    Par défaut
    Bonsoir,

    Ça ne sert à rien d'ouvrir un fil vieux de 8 ans pour une question concernant Visual Studio dans la section dédié à C++Builder.
    Il vaut mieux poser une nouvelle question dans la section dédiée. C'est plus facile pour les recherches.

    D'autant plus que C++Builder c'est du Win32 natif alors que vous utilisez du dotnet.

    Bonne soirée.

Discussions similaires

  1. Réponses: 0
    Dernier message: 06/04/2014, 22h57
  2. Réponses: 5
    Dernier message: 25/09/2009, 16h16
  3. Par où commencer pour créer un logiciel pour un périphérique USB ?
    Par bionicleman dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 30/01/2009, 21h47
  4. [Système] Communiquer avec un périphérique USB
    Par Blackshade dans le forum Langage
    Réponses: 5
    Dernier message: 20/09/2007, 18h28
  5. Réponses: 3
    Dernier message: 05/12/2006, 16h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo