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

Scripts/Batch Discussion :

Problème de port com [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre confirmé Avatar de Superzest 76
    Homme Profil pro
    Automaticien
    Inscrit en
    Septembre 2018
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2018
    Messages : 144
    Points : 519
    Points
    519
    Par défaut Problème de port com
    Bonjour,
    Voila j'ai un petit problème J'ai un petit programme en batch qui me permet d'envoyer une trame en hexa vers un port série et de copier la réponse obtenu dans un point texte .
    voila le code
    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    @echo off
    echo 01 09 30 31 10 39 39 4d 35 34 0d 0a>on.txt
    certutil -decodehex on.txt on.bin
    mode COM1 BAUD=9600 PARITY=n DATA=8
    copy on.bin \\.\com1 /B
    copy com1 data.txt

    Alors voila mon problème le code s’exécute jusqu’à
    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    copy on.bin \\.\com1 /B
    mais ne copie pas le retour je me suis donc dit que ma trame devait être mauvaise mais après de longue tentative je me suis partie a la rechercher d'un snifer de port com. Je me retrouve donc avec le logiciel: SerialMon qui est gratuit. Je vous passe les détail mais lorsque j'active PUIS désactive la connexion entre le soft et mon port com la mon .bat s’exécute jusqu'au bout
    Je pense donc que c'est un problème d'ouverture de port mais impossible de trouver une solution;
    J'implore donc votre aide !
    Merci d’avance ;D
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”
    N'oubliez pas le si un message vous à aider a résoudre votre problème !

  2. #2
    Membre confirmé Avatar de Superzest 76
    Homme Profil pro
    Automaticien
    Inscrit en
    Septembre 2018
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2018
    Messages : 144
    Points : 519
    Points
    519
    Par défaut A l'aide
    Petite update voila les échanges entre le pc port pour chaque logiciel :
    SerialMon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    <20181207100000.732 SYS>
    COM est fermé
    <20181207100003.748 SYS>
    COM est ouvert
    <20181207100003.748 SYS>
    Débit en bauds 9600
    <20181207100003.748 SYS>
    RTS désactivé
    <20181207100003.748 SYS>
    DTR désactivé
    <20181207100003.748 SYS>
    Bits de données=8, Bits d'arrêt=1, Parité=None
    <20181207100003.748 SYS>
    Configurer charactères : Eof=0x1A, Error=0x00, Break=0x00, Event=0x1A, Xon=0x11, Xoff=0x13
    <20181207100003.748 SYS>
    Handflow : ControlHandShake=(), FlowReplace=(), XonLimit=1024, XoffLimit=1024
    <20181207100003.748 SYS>
    Débit en bauds 9600
    <20181207100003.748 SYS>
    RTS désactivé
    <20181207100003.748 SYS>
    DTR désactivé
    <20181207100003.748 SYS>
    Bits de données=8, Bits d'arrêt=1, Parité=None
    <20181207100003.748 SYS>
    Configurer charactères : Eof=0x1A, Error=0x00, Break=0x00, Event=0x1A, Xon=0x11, Xoff=0x13
    <20181207100003.748 SYS>
    Handflow : ControlHandShake=(), FlowReplace=(), XonLimit=1024, XoffLimit=1024
    <20181207100003.748 SYS>
    DTR désactivé
    <20181207100003.748 SYS>
    Configurer les dépassements de délai : ReadInterval=-1, ReadTotalTimeoutMultiplier=-1, ReadTotalTimeoutConstant=-2, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=0
    <20181207100003.763 SYS>
    Taille de queue entrée/sortie 4096/2048
    <20181207100016.012 TX>
    01 09 30 31 10 39 39 4d 35 34 0d 0a
    <20181207100017.934 SYS>
    DTR désactivé
    <20181207100017.934 SYS>
    Purger le port série : RXABORT, RXCLEAR
    <20181207100017.934 SYS>
    Purger le port série : TXABORT, TXCLEAR
    <20181207100017.950 SYS>
    COM est fermé
    Avec le logiciel hyperterminal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    <20181207100115.995 SYS>
    COM est ouvert
    <20181207100115.995 SYS>
    Débit en bauds 9600
    <20181207100115.995 SYS>
    RTS désactivé
    <20181207100115.995 SYS>
    DTR désactivé
    <20181207100115.995 SYS>
    Bits de données=8, Bits d'arrêt=1, Parité=None
    <20181207100115.995 SYS>
    Configurer charactères : Eof=0x1A, Error=0x00, Break=0x00, Event=0x1A, Xon=0x11, Xoff=0x13
    <20181207100115.995 SYS>
    Handflow : ControlHandShake=(), FlowReplace=(), XonLimit=2048, XoffLimit=512
    <20181207100115.995 SYS>
    Configurer les dépassements de délai : ReadInterval=0, ReadTotalTimeoutMultiplier=0, ReadTotalTimeoutConstant=0, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=0
    <20181207100115.995 SYS>
    DTR désactivé
    <20181207100115.995 SYS>
    RTS désactivé
    <20181207100115.995 SYS>
    Purger le port série : RXABORT, RXCLEAR, TXABORT, TXCLEAR
    <20181207100117.979 TX>
    <SOH><HT>01<DLE>99M54 [len=10]
    <20181207100117.979 TX>
    <LF>
    <20181207100118.182 RX>
    <SOH><HT>01<STX>040200<STX>01011680.kg <STX>02000000.kg <STX>03011680.kg <STX>990083337 [len=61]
    <20181207100118.245 RX>
    <LF>
    <20181207100119.979 SYS>
    Purger le port série : RXABORT, RXCLEAR, TXABORT, TXCLEAR
    <20181207100120.011 SYS>
    COM est fermé


    Et enfin mon .bat (aprés avoir executer Serial mon)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <20181207100335.669 SYS>
    COM est ouvert
    <20181207100335.700 SYS>
    COM est fermé
    <20181207100335.700 SYS>
    COM est ouvert
    <20181207100335.700 SYS>
    Configurer les dépassements de délai : ReadInterval=-1, ReadTotalTimeoutMultiplier=-1, ReadTotalTimeoutConstant=0, WriteTotalTimeoutMultiplier=0, WriteTotalTimeoutConstant=0
    <20181207100335.700 SYS>
    Débit en bauds 9600
    <20181207100335.700 SYS>
    RTS désactivé
    <20181207100335.700 SYS>
    DTR activé
    <20181207100335.700 SYS>
    Bits de données=8, Bits d'arrêt=1, Parité=None
    <20181207100335.700 SYS>
    Configurer charactères : Eof=0x1A, Error=0x00, Break=0x00, Event=0x1A, Xon=0x11, Xoff=0x13
    <20181207100335.700 SYS>
    Handflow : ControlHandShake=(DTR_CONTROL), FlowReplace=(), XonLimit=2048, XoffLimit=512
    <20181207100335.716 SYS>
    COM est fermé
    <20181207100335.716 SYS>
    COM est ouvert
    <20181207100335.731 SYS>
    COM est fermé
    <20181207100335.731 SYS>
    COM est ouvert
    <20181207100335.762 SYS>
    COM est fermé
    <20181207100335.762 SYS>
    COM est ouvert
    <20181207100335.778 SYS>
    COM est fermé
    <20181207100335.778 SYS>
    COM est ouvert
    <20181207100335.794 SYS>
    COM est fermé
    <20181207100335.794 SYS>
    COM est ouvert
    <20181207100335.794 TX>
    <SOH><HT>01<DLE>99M54 [len=10]
    <20181207100335.794 TX>
    <LF>
    <20181207100335.825 SYS>
    COM est fermé
    <20181207100335.825 SYS>
    COM est ouvert
    <20181207100335.841 SYS>
    COM est fermé
    <20181207100335.841 SYS>
    COM est ouvert
    <20181207100335.856 SYS>
    COM est fermé
    <20181207100335.856 SYS>
    COM est ouvert
    <20181207100335.872 SYS>
    COM est fermé

    Voila je continue mes investigation
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”
    N'oubliez pas le si un message vous à aider a résoudre votre problème !

  3. #3
    Membre confirmé Avatar de Superzest 76
    Homme Profil pro
    Automaticien
    Inscrit en
    Septembre 2018
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2018
    Messages : 144
    Points : 519
    Points
    519
    Par défaut Resolution
    Bon j'ai trouver une solution pas super propre mais qui fait le taf ^^
    Alors j'ai fait un peut script(Vbs) qui lors du démarrage pc client démarre le soft serialMon et envoie la série de touche pour faire une ouverture/fermeture de port voila le code si par miracle ça peut aider quelqu'un:
    Code Vbscript : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    Set WshShell = WScript.CreateObject("WScript.Shell")
    WshShell.Run "C:\Users\PRODERGIE\Desktop\SerialMon\SerialMon.exe"
    WScript.sleep 3000
    WshShell.Sendkeys "{ENTER}"
    WScript.sleep 3000
    WshShell.sendkeys "{F10}"
    WScript.sleep 10
    WshShell.sendkeys "{LEFT}"
    WScript.sleep 10
    WshShell.Sendkeys "{LEFT}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{ENTER}"
    WScript.sleep 100
    WshShell.sendkeys "{F10}"
    WScript.sleep 10
    WshShell.sendkeys "{LEFT}"
    WScript.sleep 10
    WshShell.Sendkeys "{LEFT}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{DOWN}"
    WScript.sleep 10
    WshShell.Sendkeys "{ENTER}"
    WScript.sleep 100
    WshShell.Sendkeys "%{F4}"
    Voila voila xD j'ai un peut honte j'avoue
    “Cookie : Anciennement petit gâteau sucré, qu’on acceptait avec plaisir. Aujourd’hui : petit fichier informatique drôlement salé, qu’il faut refuser avec véhémence.”
    N'oubliez pas le si un message vous à aider a résoudre votre problème !

+ Répondre à la discussion
Cette discussion est résolue.

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