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

Delphi Discussion :

Echanger des données via l'USB


Sujet :

Delphi

  1. #1
    Membre très actif
    Homme Profil pro
    Electronicien
    Inscrit en
    Août 2008
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2008
    Messages : 370
    Par défaut Echanger des données via l'USB
    Bonjour, toujours dans les réapprentissage de delphi dont je viens de réinstaller la version Community Edition, ... je sens que sa pas être simple au 1er abord

    Afin de m'orienter directement une fonctionnalité, s'est à dire échanger des données via l'USB de type C d'une électronique qui embarque le processeur STM32G431 : https://www.st.com/en/microcontrolle...m32g431rb.html

    Ma carte de test : https://www.st.com/en/evaluation-too...eo-g431rb.html

    Pourriez vous m'apporter une orientation s'il vous plait ?

    Exemple de lib USB CDC, USB HID, USB WinUSB ou LibUSB

    Aurais-je besoin de module ou driver supplémentaire ? notamment sous ma version

    Merci

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 982
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 982
    Par défaut
    Tu peux utiliser l'USB toujours comme un Port COM émulé via TComPort

    Après pour le protocole, cela dépend ce que tu vas coder côté carte.


    Et WinUsb, pas besoin de lib, c'est les API Windows, cela s'utilise comme des Pipes, faut juste bien gérer ton thread d'écriture\lecture via un Mutex\Semaphore
    Si tu reprends le Delphi, commence par le TComPort, c'est un grand classique !

    Tu codes en quoi sur la carte ? en C ?
    Tu peux aussi coder en C++ sur le RAD Embarcadero, ça serait peut-être plus facile si tu es habitué au C

    As-tu du code D7 à migrer en D12 ?
    Peut-être commencé par cela !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre très actif
    Homme Profil pro
    Electronicien
    Inscrit en
    Août 2008
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2008
    Messages : 370
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Tu peux utiliser l'USB toujours comme un Port COM émulé via TComPort

    Après pour le protocole, cela dépend ce que tu vas coder côté carte.


    Et WinUsb, pas besoin de lib, c'est les API Windows, cela s'utilise comme des Pipes
    Merci ShaileTroll de ta recommandation et je vais faire un tour sur TComport après sauf erreur, il faut que ce soit reconnu comme tel, c'est à dire que la pile USB s'intall automatiquement à la connexion avec le protocole USB qui va bien, après les échange de données dépend du contenu que j'y mettrai effectivement ...

    Pour le moment, après 10 ans de pause faut que je test pour me rafraichir la mémoire.

  4. #4
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 567
    Billets dans le blog
    65
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    Tu peux aussi coder en C++
    Tu ne peux pas avoir Delphi community et C++ community (oui, il existe) ensemble sur un même poste.

    Note @davidif la partie codification port USB mériterait presque un nouveau sujet plutôt qu'une suite de cette discussion, si tu m'y autorises je vais faire un "fork" FAIT
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  5. #5
    Membre très actif
    Homme Profil pro
    Electronicien
    Inscrit en
    Août 2008
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2008
    Messages : 370
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Tu ne peux pas avoir Delphi community et C++ community (oui, il existe) ensemble sur un même poste.

    Note @davidif la partie codification port USB mériterait presque un nouveau sujet plutôt qu'une suite de cette discussion, si tu m'y autorises je vais faire un "fork"
    Ha ok, c'est juste que pour moi ça fait partie du même sujet de base, l'appréhension ou tout du moins rafraichir mes vieille pratique de delphi, mais pas de soucie si tu trouve nécessaire de faire la distinction, bien que je ne sais pas trop ce qu'est un "fork"

  6. #6
    Membre très actif
    Homme Profil pro
    Electronicien
    Inscrit en
    Août 2008
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2008
    Messages : 370
    Par défaut
    mais juste à 1er vu je ne vois pas de Tcomport

    Nom : Tcom.png
Affichages : 72
Taille : 9,2 Ko

  7. #7
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 567
    Billets dans le blog
    65
    Par défaut
    Il faut que tu installes le composant TComport via Getit

    Outils/Gestionnaires de packages Getit

    ou via la page d'acceuil (justement il y a eu une mise à jour récente)
    Nom : Capture.png
Affichages : 94
Taille : 186,6 Ko

    Mais j'ai un doute, Serial Port et USB pour moi c'est totalement différent.
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

  8. #8
    Membre très actif
    Homme Profil pro
    Electronicien
    Inscrit en
    Août 2008
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2008
    Messages : 370
    Par défaut
    Ha ok, merci

  9. #9
    Membre très actif
    Homme Profil pro
    Electronicien
    Inscrit en
    Août 2008
    Messages
    370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Electronicien
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2008
    Messages : 370
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Il faut que tu installes le composant TComport via Getit

    Outils/Gestionnaires de packages Getit

    ou via la page d'acceuil (justement il y a eu une mise à jour récente)
    Nom : Capture.png
Affichages : 94
Taille : 186,6 Ko

    Mais j'ai un doute, Serial Port et USB pour moi c'est totalement différent.
    Oui je pense aussi et d'ailleurs j'ai vu qu'on pouvais utiliser du USB CDC, USB HID, USB WinUSB ou LibUSB....
    Comment puis-je les installer si tant est que ce soit possible sous ma version.

  10. #10
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 567
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 567
    Billets dans le blog
    65
    Par défaut
    Merci d'éviter de répondre avec citation à chaque fois, cela augmente, sans nécessité, la discussion
    Tu nous parles de
    USB CDC, USB HID, USB WinUSB ou LibUSB
    mais où en parle t-on ?
    Si c'est des DLLs oui, tu peux utiliser des DLL externes (voir la FAQ https://delphi.developpez.com/faq/?page=DLL)

    NOTE : USB HID, effectivement j'ai vu ça dans des composants de la JVCL (autre truc qu'il est possible d'obtenir via Getit) mais il me semblait que c'etait pour des JoySticks mais installer tout (JEDI et JVCL) me semble "too much"

    Une petite recherche dans le forum, à lire : https://www.developpez.net/forums/d2...id-usb-delphi/
    mais aussi https://learn.microsoft.com/en-us/wi...rs/hid/hid-api car il est tout à fait possible d'utiliser les API Windows (bon me demande pas comment ça, ça me dépasse un peu)
    MVP Embarcadero
    Delphi installés : D3,D7,D2010,XE4,XE7,D10 (Rio, Sidney), D11 (Alexandria), D12 (Athènes)
    SGBD : Firebird 2.5, 3, SQLite
    générateurs États : FastReport, Rave, QuickReport
    OS : Window Vista, Windows 10, Windows 11, Ubuntu, Androïd

Discussions similaires

  1. Réponses: 0
    Dernier message: 09/03/2012, 23h41
  2. echange de donnè via reseaux
    Par TheBlackReverand dans le forum VB.NET
    Réponses: 10
    Dernier message: 18/05/2007, 11h02
  3. Réponses: 3
    Dernier message: 17/11/2006, 18h12
  4. Récupérer des données via usb
    Par Palca dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 12/01/2006, 14h33
  5. Récupérer des données via le port usb
    Par matmuth dans le forum C++Builder
    Réponses: 12
    Dernier message: 11/05/2005, 16h34

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