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

Windows Discussion :

Ecrire sur le port parallele (sur XP et Vista)


Sujet :

Windows

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Ecrire sur le port parallele (sur XP et Vista)
    Salut,

    Afin de commander des servomoteurs je cherche à écrire sur le port parallèle (les sorties du port parallèle étant des sorties TTL sur les pins 2 à 8).

    J'ai cherché un peu et il semblerais qu'il soi impossible d'attaquer le port // directement sur Windows. (je regrette GNU et son fabuleux io.h )

    Je recherche donc une méthode simple permettant d'écrire sur le port // sur Windows XP/Vista.

    Merci d'avance !

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Il n'y en a pas.
    Le port parallèle sous Windows est beaucoup plus règlementé que les ports série par exemple, car il est considéré comme un port pour matériel et non un port de communication.
    Résultat, seuls les drivers ont le droit d'utiliser le port parallèle. Si tu veux utiliser ce port, tu dois programmer un driver pour ça.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Gnup

    C'est sacrément dommage et relativement abérant de devoir passer par un drivers pour accéder à un port parallèle je trouve

    Où puis-je trouver un drivers de se type et comment l'utilise on ?

    Seconde question :
    Cela veut donc dire que si je veux diffuser mon programme il va falloir à chaque fois installer un drivers sur la machine client ?

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 14
    Points : 16
    Points
    16
    Par défaut
    Médinoc : Si tu veux utiliser ce port, tu dois programmer un driver pour ça.
    T'es pas obligé de créer ton propre driver. Tu n'as qu'à utiliser un fichier pilote (comme parport.sys dans windows\system32\drivers par exemple) et tu l'intègres dans ton projet.

  5. #5
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Citation Envoyé par Manankasina Voir le message
    T'es pas obligé de créer ton propre driver. Tu n'as qu'à utiliser un fichier pilote (comme parport.sys dans windows\system32\drivers par exemple) et tu l'intègres dans ton projet.
    Le problème c'est que les control codes de ce driver ne sont pas documentés. MSDN par de WriteFile sans vraiment donner un exemple de code complet. Le seul moyen de comprendre comment il fonctionne c'est de se plonger directement dans ses sources (fourni dans les exemples du DDK). Dans le DDK de Windows 2003 SP1, il s'agit des sources du parport de Windows NT 5.x (2000, XP, 2003), donc c'est spécifique à NT 5.x. Pratiquement, chaque fois qu'on veut effectuer des E/S sur le port parallèle, il faut créer son propre driver. Il y en a aussi des sources déjà disponibles sur le Net, Inpout32 par exemple (qui est un port driver et non un parallel port driver uniquement).

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    inpout32 sert surtout à faire l'équivalent d'un driver matériel en user-mode.
    Ça n'empêche pas qu'il faudra quand même manipuler le port parallèle à bas niveau...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Nouveau Candidat au Club
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Salut,

    Je tiens juste à vous tenir au courant :

    J'ai bien lu toutes vos réponses et ne pensez pas que c'est par manque de respect ou d'intérêt que je ne vous répond pas, c'est simplement que je n'ai pas beaucoup de temps à moi en ce moment (exams...).

    Je pensez avoir un peu de temps ce weekend mais finalement non

    D'ici la fin de semaine prochaine ca devrait aller mieux, je vous tient au courant et merci pour vos réponses !

Discussions similaires

  1. Affichage sur PC des données récupérées sur un port parallele
    Par mic68hc11 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/07/2012, 09h06
  2. Lire en continue sur le port parallele
    Par bob74500 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 24/01/2008, 19h25
  3. Réponses: 4
    Dernier message: 20/09/2006, 14h08
  4. Lire le status d'une imprimante sur le port parallèle
    Par narmataru dans le forum Linux
    Réponses: 16
    Dernier message: 21/11/2005, 14h43
  5. Réponses: 3
    Dernier message: 10/10/2005, 18h30

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