inpout32 et port série
Répondre à la discussion
Affichage des résultats 1 à 13 sur 13

inpout32 et port série



  1. #1
    Jack
    Modérateur

    inpout32 et port série


    ------

    Bonjour,

    quelqu'un a-t-il déjà utilisé et fait fonctionner la DLL inpout32 avec le port série?

    Je n'ai aucun problème avec le port parallèle, mais je n'ai aucun effet sur le port série

    La DLL ne gérerait-elle que les adresse du port parallèle?

    Merci

    -----

  2. #2
    DAUDET78

    Re : inpout32 et port série

    Non, ça marche avec tous les ports "Hard" (j'ai pas utilisé cette DLL mais une autre). Tu n'as aucun effet ? Aucune transmission ou aucune action (sur le RTS par exemple)? Tu as quelle adresse pour COM ?
    J'aime pas le Grec

  3. #3
    Jack
    Modérateur

    Re : inpout32 et port série

    L'adresse de base de COM1 est 0x3F8.

    Il ne se passe rien si j'écris dans les registres THR ou MCR, et je lis 255 dans le registre d'état LSR.

    On peut trouver le source de cette DLL?

  4. #4
    DAUDET78

    Re : inpout32 et port série

    Fait "clignoter" le bit de poid le plus faible du registre 0x3FC, c'est le positionnement de la sortie DTR. Si la pin 4/9 de COM1 bouge, tu as bien accès au port. Maintenant, si tu veux programmer le port série "à la main", j'ai eu fait le programme en assembleur dans une vie antérieure. C'est pas évident
    J'aime pas le Grec

  5. A voir en vidéo sur Futura
  6. #5
    Jack
    Modérateur

    Re : inpout32 et port série

    Fait "clignoter" le bit de poid le plus faible du registre 0x3FC, c'est le positionnement de la sortie DTR
    C'était déjà fait, mais sans résultat.

    Maintenant, si tu veux programmer le port série "à la main", j'ai eu fait le programme en assembleur dans une vie antérieure
    J'ai écrit ça aussi, mais sous XP on est pas avancé puisque les instructions in et out ne s'exécutent qu'en mode kernel.

    outpout32 permettait de contourner le problème.

    Mais bon, je vais laisser tomber la programmation directe des registres et utiliser la dll que j'ai trouvée sur cet excellent site. Ca permet une programmation plus propre finalement.
    http://automatepc.fr/?page=Acceuil

    Merci

  7. #6
    Jack
    Modérateur

    Re : inpout32 et port série

    Je progresse mais le mystère reste entier.

    Je parviens à accéder au circuit si un autre soft l'utilise. J'ai trouvé çà en lançant une machine virtuelle VMware pour travailler sous 98 (si, si).

    Confirmation en lançant hyperterminal. Je n'y comprends rien. Jamais vu çà.

    En passant, j'ai trouvé une dll un peu plus intéressante que inpout32 avec laquelle elle reste compatible:
    http://logix4u.net/Legacy_Ports/Para...from_BIOS.html

    A+

  8. #7
    DAUDET78

    Re : inpout32 et port série

    Je viens de faire un programme en VB6 avec InpOut32.DLL (et W2000). Je change sans problème l'état de DTR
    Par contre, c'est le troisième fichier InpOut32.DLL trouvé sur le NET qui a marché
    http://www.a1vbcode.com/app-3599.asp

    Je peux t'envoyé le ZIP si tu veux
    J'aime pas le Grec

  9. #8
    DAUDET78

    Re : inpout32 et port série

    Voilà, j'ai fait le ZIP
    Le programme fait un Flip Flop sur DTR
    Fichiers attachés Fichiers attachés
    J'aime pas le Grec

  10. #9
    Jack
    Modérateur

    Re : inpout32 et port série

    merci, je testerai ça ce soir. Mais je suis très pessimiste. Le problème ne vient pas de la DLL: j'ai câblé une DB9 en NULL modem, je mets un scope sur DTR et j'ai -10V. Dès que je lance un soft qui utilise le port série, hyperterminal par exemple, DTR passe à +10V et là, mon programme "voit" le port COM.

    Si j'arrête hyperterminal, c'est comme si le port COM était désactivé.
    Dans le gestionnaire de périphérique, j'ai demandé à réactualiser le port COM. Sur l'oscillo, DTR passe plusieurs fois de +10V à -10V et viens se recoller au repos à -10V.

    J' vais p'têt bin laisser tomber les écritures directes des regsitres finalement. Ca me permettra de programmer plus proprement maintenant que je sais appeler les fonctions d'une DLL en C.

    A+

  11. #10
    DAUDET78

    Re : inpout32 et port série

    Moi, je n'ai "branlé" que le DTR et je peux le faire bagotter. Donc la DLL que j'utilise agit sur le port COM. Maintenant, si tu veux l'utiliser en UART, il y a des tas de registres à programmer (et avoir la spécification du 16450 ou 16550 sous les yeux)
    J'aime pas le Grec

  12. #11
    Jack
    Modérateur

    Re : inpout32 et port série

    Maintenant, si tu veux l'utiliser en UART, il y a des tas de registres à programmer (et avoir la spécification du 16450 ou 16550 sous les yeux)
    je ne connais pas bien VB, mais j'ai regardé rapidement ton source et c'est bien ce que tu fais. Tu programmes directement les registres.

    Eh bien sur mon PC, c'est comme si les registres de l'UART n'existent pas.

    Hier, j'ai fait une boucle pour voir la valeur des différentes adresse de l'espace d'E/S du PC. Il y avait 0xFF aux adresses des registres de COM1 et COM2.

    Pour en revenir à ma conclusion précédente, je voulais dire qu'il est préférable de faire appel aux primitives de windows afin de ne pas perturber son fonctionnement comme on risque de le faire en écrivant dans les registres.
    De ce point de vue, la DLL du site d'automate PC est plus satisfaisante finalement.

  13. #12
    DAUDET78

    Re : inpout32 et port série

    Deux remarques :
    1/ OK. Les primitives de WinDaube sont plus sûr que de travailler sur les registres
    2/ il faut être certain de l'adresse du port COM et aller voir dans le panneau de configuration les ressources I/0 utililisées par COM1 et COM2. L'adresse 3F8 pour COM1 n'est pas obligatoire .... c'est une tradition !
    J'aime pas le Grec

  14. #13
    Jack
    Modérateur

    Re : inpout32 et port série

    2/ il faut être certain de l'adresse du port COM et aller voir dans le panneau de configuration les ressources I/0 utililisées par COM1 et COM2. L'adresse 3F8 pour COM1 n'est pas obligatoire .... c'est une tradition !
    Tu as raison de le rappeler, mais c'était fait, bien sur.

Discussions similaires

  1. Port serie/USB ===> port paralléle
    Par invited60b6f1f dans le forum Matériel - Hardware
    Réponses: 3
    Dernier message: 07/11/2007, 20h52
  2. port série
    Par Xman_fr dans le forum Électronique
    Réponses: 6
    Dernier message: 20/06/2006, 18h15
  3. Port Série
    Par Toufinet dans le forum Électronique
    Réponses: 2
    Dernier message: 20/04/2006, 20h18
  4. Le port série
    Par invite67d96d45 dans le forum Électronique
    Réponses: 1
    Dernier message: 10/09/2003, 09h28
  5. port serie : help
    Par Ryback08 dans le forum Électronique
    Réponses: 6
    Dernier message: 01/07/2003, 11h20
Découvrez nos comparatifs produits sur l'informatique et les technologies.