Répondre à la discussion
Affichage des résultats 1 à 18 sur 18

Piloter un port série en C



  1. #1
    samux

    Piloter un port série en C


    ------

    Tout d'abord bonjour a tous
    Alors voila je dois faire un programme en C qui doit piloter un port série et j'ai cherché sur le net mais je n'ai pas trouvé grand chose donc je m'en remet a vous. Si quelqu'un a déja fait quelque chose de similaire ou si quelqu'un sait comment faire ca serait sympas de m'aiguiller.
    merci d'avance

    -----

  2. Publicité
  3. #2
    samux

    Re : Piloter un port série en C

    Bonjour
    personne ne pourrait m'aider ??
    Merci d'avance

  4. #3
    visu2

    Re : Piloter un port série en C

    salut
    sous windows? lequel?
    98, XP?
    a+

  5. #4
    Jack
    Modérateur

    Re : Piloter un port série en C

    Avec quoi comme langage C?

    Et pour la manière de programmer la liaison série, proprement en utilisant les api windows ou en programmant directement les registres de l'usart (ce qui n'est pas trop recommandé sous windows)

    A+

  6. A voir en vidéo sur Futura
  7. #5
    samux

    Re : Piloter un port série en C

    Tout d'abord merci de vos réponses
    Alors pour ce qui est de la version de windows ca sera celle du lycée qui est windows 2000 mais j'aimerais bien que ca marche aussi sous xp. J'espere qu'il n'y a pas de grosse différence entre windows 2000 et xp pour le pilotage du port série. Ensuite pour le type de programmation, je pense que je vais choisir le plus simple non pas parceque je n'aime pas me casser la tete mais parceque je n'ai pas trop le temps. Donc je pense que je vais m'orienter sur la programmation directe des registres.
    Voila si vous pouvez m'aiguiller pour réaliser cela, ca serait sympas
    Merci d'avance
    @+

  8. #6
    Jack
    Modérateur

    Re : Piloter un port série en C

    Pour XP ou 2000, le problème est le même. Le système interdit l'accès aux registres.

    Il faut donc ajouter un driver qui rétablit le droit d'accès.

    Essaie porttalk ou userport

    A+

  9. Publicité
  10. #7
    samux

    Re : Piloter un port série en C

    Merci Jack pour ta réponse.
    Alors il y a quelque temps j'ai fait un programme qui pilotait le port parallèle et j'avais eu aussi recours a userport car j'avais pas les droits.
    Donc si par exemple j'installe userport et que j'ai les droits d'accéder aux registres du port série, quelles sont les lignes de codes, le numéro des registres pour accéder au port série et aussi comment fait on pour choisir le numéro du port série que l'on veut piloter ?
    Je sais j'ai beaucoup de questions qui surement vous semblent évidentes mais je débute dans ce domaine...
    Merci d'avance
    @+

  11. #8
    Jack
    Modérateur

    Re : Piloter un port série en C

    Je peux te filer un bout de programme qui envoie une chaine de caractères sur le port série ainsi qu'un traduction de la doc du 8250 qui est le circuit d'origine gérant cette transmission.
    Les circuits actuels restent compatibles.

    Le programme est écrit en Turbo C sous DOS que borland fournit gratuitement (ce qui explique les problèmes d'accent dans le fichier source).

    A+

  12. #9
    Jack
    Modérateur

    Re : Piloter un port série en C

    Note qu'il existe une fonction qui gère directement le port com dans borland C: bioscom

    et avec microsoft C: _bios_serialcom

    C'est tout de même plus simple à mettre en oeuvre, mais il faut que tu aies un de ces compilateurs.

    A+

  13. #10
    samux

    Re : Piloter un port série en C

    Tout d'abord merci beaucoup pour toutes tes indications.
    Alors je suis en terminale et j'ai un projet à réaliser (le PPE). Je dois réaliser une liaison entre un pc (windows 2000 ou xp) et un microcontroleur ( pic 18f4550) via le port usb. Alors dans un premier temps j'ai récupérer sur le site de microchip un programme qui me permet de communiquer avec le pic (en classe CDC) qui émule un port série à la place du port usb. Donc lorsque je branche mon pic au pc via le port usb, windows détecte un nouveau port com et j'aimerais donc faire un programme pilotant ce port com virtuel pour y envoyer des caractères qui seront recu par le pic. Est ce que tu penses que le programme que tu m'as filé pourrait satisfaire mes besoins ?
    Merci d'avance

  14. #11
    Jack
    Modérateur

    Re : Piloter un port série en C

    Je ne connais pas ton produit.

    Mais si ton projet était d'utiliser l'usb pour communiquer, ce n'était pas la peine d'ouvrir un autre fil:
    http://forums.futura-sciences.com/thread117721.html

  15. #12
    samux

    Re : Piloter un port série en C

    Oui je sais mais ce projet peut etre diviser en deux parties assez différentes : communication en classe cdc puis une fois que la communication est établie, j'aimerais développer un soft qui piloterait le port série mais la ca n'a plus rien a voir avec l'usb donc je pensais que c'était mieux d'ouvrir un nouveau sujet. Meme que tu ne connaisses pas mon produit, je pense que tu peux me renseigner sur la facon de piloter un port série ensuite qu'il soit virtuel ou pas je pense que c'est la meme chose.
    Merci d'avance
    @+

  16. Publicité
  17. #13
    Jack
    Modérateur

    Re : Piloter un port série en C

    ok.

    Pour le port série, ce que j'ai envoyé précédemment est toujours valable.

    A+

  18. #14
    Jack
    Modérateur

    Re : Piloter un port série en C

    Quoiqu'en réfléchissant, non, ce n'est plus valable avec un port com virtuel.

    Si tu dois absolument programmer en C, il faudra utiliser les appels standards de windows.

    deux solutions économiques puisque gratuites:
    Microsoft Visual C++ 2005 express edition
    Borland TURBO C++ explorer (equivalent à C++ builder, la version de delphi en C).

    Je connais plus C++ builder et il existe des composants visuels pour la gestion du port série.

    J'ai peur que ton projet devienne un peu plus lourd que tu ne l'avais prévu initialement.

    A+

  19. #15
    Jack
    Modérateur

    Re : Piloter un port série en C

    Bonjour,

    le remonte ce fil car je voudrait avoir des retours d'utilisation de userport.

    Alors qu'il fonctionnait très bien chez moi et sur d'autre PC d'ailleurs, il me semble que son installation sur des PC plus récents pose problème.

    J'ai de nouveau des avertissements d'utilisation d'instruction privilégiées. En mode debug, si je force à réessayer l'accès au port plusieurs fois, il arrive que ça passe de temps en temps.

    Plus les ordis sont récents et plus ça coince. Je travaille avec VISUAL C++ 2005 express edition.

    Merci.

  20. #16
    Seb.26

    Re : Piloter un port série en C

    Pourquoi ne pas simplement ouvrir un handler de fichier sur "COM1" via fopen ? ... et ensuite fread et fwrite ...

  21. #17
    Jack
    Modérateur

    Re : Piloter un port série en C

    Parce que le but est de de monter un TP pour faire manipuler les registres d'un circuit d'entrées-sorties, en l'occurence le port parallèle.

    La gestion "normale" de ces ports intervient plus tard dans la formation.

  22. #18
    Seb.26

    Re : Piloter un port série en C

    OK ... mais comme tu l'as déjà constaté, ce sera de moins en moins possible avec les PC recents, de plus en plus de choses sont integrés dans les chipset de la CM, et Windows nous laisse faire de moins en moins de choses directement.

    Bon TP !

  23. Publicité

Discussions similaires

  1. Piloter un pic par le port usb...
    Par samux dans le forum Électronique
    Réponses: 9
    Dernier message: 02/01/2007, 13h21
  2. Piloter du 16v ac avec port imprimante
    Par o0Zz dans le forum Électronique
    Réponses: 17
    Dernier message: 02/12/2005, 12h55
  3. Piloter un moteur PAP via port serie ou usb [débutant]
    Par yvele dans le forum Électronique
    Réponses: 17
    Dernier message: 28/10/2005, 23h31
  4. piloter un moteur avec un port serie
    Par taopay dans le forum Électronique
    Réponses: 7
    Dernier message: 18/10/2005, 07h42
  5. pb pour piloter un circuit par le port parallèle
    Par LaMouche dans le forum Électronique
    Réponses: 2
    Dernier message: 25/08/2005, 10h33
Découvrez nos comparatifs produits sur l'informatique et les technologies.