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

Python Discussion :

Problème lecture details


Sujet :

Python

  1. #1
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2021
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2021
    Messages : 13
    Par défaut Problème lecture details
    Bonjour,
    Je suis en train de programmer l'automatisation d'un oscilloscope.
    Et pour faire simple il y a plusieurs paramétrages et j'aimerais que quand j'ouvre le fichier que je puisse lire chacun d'entre eux un a un pour y attribuer une fonction. Le problème c'est que je ne sais pas trop comment m'y prendre.

    Je mets en PJ le fichier que je dois traiter.

    J'avais trouver une solution qui correspondait pour par exemple les lignes de measurement ":MEASUREMENT:MEAS1:TYPE MEAN"
    voici le morceau de code y correspondant:

    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
    f = open('TEST2.txt')
    #http://python-notes.curiousefficiency.org/en/latest/python3/text_file_processing.html
     
    print(f)
    data=f.readlines()
    print(data)
    print(data[0])
    listedata=data[0].split(';')   #coupe la grande chaine en plusieurs éléments séparés par ';'
    for l in listedata:  
      ll=l.split(' ')  #coupe chaque petite  chaine en plusieurs éléments séparés par ' '
      #print(ll[0])
      if ll[0]==":MEASUREMENT:MEAS1:TYPE":
          print("TROUVE: "+ ll[1])
          if ll[1]=="MEAN":
            print("il faut faire le réglage MEAN")
    f.close()
    Mais le problème se rencontre avec des sous menus. Par exemple ":DATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 2500;WIDTH 1;"
    Ici ENCDG DESTINATION SOURCE START STOP WIDTH sont toutes sous menu de DATA mais DATA n'est pas récrit a chaque fois, comment faire?

    Mais pour les sous menu par exemple je ne comprends pas trop comment je peux faire.

    Dites moi si le message n'est pas claire. Merci à vous pour votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060
    Par défaut
    Bonjour,

    Pas sûr d'avoir tout compris, et tes lignes sont mal représentées sur le forum...

    Pour ton problème de sous menu, je mettrai une ligne sans, une ligne avec, et j'essaierai de déterminer ce qui permettra de les distinguer.

    Après avec une fonction qui retourne un booléen pour savoir si avec ou sans sous-menu, on itère sur les lignes du fichier.

  3. #3
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2021
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2021
    Messages : 13
    Par défaut
    Le fichier texte que j'ai mis en PJ ne peux pas être changer c'est un fichier qui se génère automatiquement de l'oscilloscope.
    En fait, c'est une copie de la configuration complete. Ce que je dois faire c'est crée un script python qui va lire ce fichier, lire tout les parametre et apres moi plus tard je devrais y associé une action. Par exemple la ligne mesurement meas1 que j'ai mise nous indique qu'il s'agit d'une mesure de moyenne. Toutes les configuration sont séparé par des ";" mais pas celles avec des sous menu comme je l'ai dis pour ":DATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 2500;WIDTH 1;" il y a 6 sous menus. Et je ne sais pas comment rédiger cette particularite. Le code que j'avais transmis au dessus fonctionne pour mesurements mais pas pour data et d'autres. Je ne sais pas si c'est plus claire comme ça.
    Merci à vous pour vos réponses

  4. #4
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060
    Par défaut
    Voilà une proposition pour séparer menus et valeur,

    En espérant que c'est ce qui est attendu

    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
    def get_menu(line):    
        if not line.startswith(':') and line.count(':') == 0:
            menu, value = line.split()
        else:
            menu = []
            for m in line.split(':'):
                if m:
                    menu.append(m)
            menu[-1], value = menu[-1].split()
        return menu, value
     
     
    with open("TEST2.txt") as f:
        for line in f.read().split(';'):
            menu, value = get_menu(line)
            print(f"menu: {repr(menu)} et valeur: {value}")
    On peut simplifier get_menu par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    def get_menu(line):    
        if not line.startswith(':') and line.count(':') == 0:
            menu, value = line.split()
        else:
            menu = [m for m in line.split(':') if m]
            menu[-1], value = menu[-1].split()
     
        return menu, value

  5. #5
    Expert confirmé Avatar de BufferBob
    Profil pro
    responsable R&D vidage de truites
    Inscrit en
    Novembre 2010
    Messages
    3 041
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : responsable R&D vidage de truites

    Informations forums :
    Inscription : Novembre 2010
    Messages : 3 041
    Par défaut
    salut,

    Citation Envoyé par heh__ Voir le message
    le problème se rencontre avec des sous menus. Par exemple "ATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 2500;WIDTH 1;"
    Ici ENCDG DESTINATION SOURCE START STOP WIDTH sont toutes sous menu de DATA mais DATA n'est pas récrit a chaque fois, comment faire?
    tu peux tenir à jour l'état d'une variable, quand tu vois passer une ligne DATA tu mets à jour une variable inside_data_menu en lui affectant True au lieu de False par exemple.

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 718
    Par défaut
    Salut,

    Citation Envoyé par heh__ Voir le message
    Mais pour les sous menu par exemple je ne comprends pas trop comment je peux faire.
    Déjà il faut avoir une idée de la syntaxe utilisée pour présenter ces données.
    Ce que vous pourriez déjà remarquer, c'est que vous avez une liste d'unités d'informations séparées par ';:':
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    >>> data = open('test.txt').read(300)
    >>> data = data.replace(';:', ';\n:')
    >>> print(data)
    :HEADER 0;
    :VERBOSE 1;
    :DATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 2500;WIDTH 1;
    :LOCK NONE;
    :DISPLAY:FORMAT YT;STYLE VECTORS;PERSISTENCE 0;CONTRAST 63;INVERT OFF;
    :ACQUIRE:MODE SAMPLE;NUMAVG 16;STATE 1;STOPAFTER RUNSTOP;
    :CH1:PROBE 1.0E1;CURRENTPROBE 1.0E2;SCALE 5.0E0;POSITION 0.0E0;CO
    >>>
    où il y a une entité au début enveloppée par les ':' suivie par attributs/valeurs séparés par des ';'
    Il y a aussi des cas (lignes 1, 2, 4) où le label est suivi d'un espace puis d'une valeur avant que la ligne se termine.

    Citation Envoyé par heh__ Voir le message
    Ici ENCDG DESTINATION SOURCE START STOP WIDTH sont toutes sous menu de DATA mais DATA n'est pas récrit a chaque fois, comment faire?
    Si mon décodage de vos données est "pertinent", vous voyez que la ligne qui commence par :DATA: contient tous ces labels et forment ce que j'appelle attributs/valeurs associés.... Et donc "comment faire" ne commence pas par écrire du code mais par étudier vos données pour savoir comment les découper, les regrouper,....

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2021
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2021
    Messages : 13
    Par défaut
    Ce n'est pas ça le problème
    En fait, le fichier que j'ai envoyer représentre les parametrages d'un oscilloscope. Par exemple si on prend ":HEADER 0;:VERBOSE 1;:DATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 2500;WIDTH 1;" cela veut dire que le hearder est a 0 verbose a 1 que le DATA:ENCDG est en SRIBINARY que DATA:DESTINATION est en REFA, que DATA:SOURCE c'est CH1 que DATA:STAR est à 1 etc... Et tout le reste rédiger de la même facon. Et ce que je cherche à faire est de lire la réponse pour chacun des paramétrage. Comme je l'ai dis précédemment, pour ":MEASUREMENT:MEAS1:TYPE MEAN" je peux utiliser le code que j'ai poster au dessus mais je ne sais pas comment procéder avec les fonction comme pour le DATA: ou il n'est pas répéter à chaque fois est n'est pas entre ":".
    Merci beaucoup quand même pour vos réponses.

  8. #8
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060
    Par défaut
    Bonjour,

    As-tu testé mon code ?

  9. #9
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 718
    Par défaut
    Salut,
    Citation Envoyé par heh__ Voir le message
    Ce n'est pas ça le problème
    Certes mais le problème est dans la séparation de vos données en "unités d'information" cohérentes et dans l'identification des différents champs dans ces unités d'information.

    Et çà, c'est un travail de conception à faire avant de partir à coder qu'on ne fera pas pour vous (ne serait ce que parce qu'on n'a pas la documentation de l'oscillo.)

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  10. #10
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2021
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2021
    Messages : 13
    Par défaut
    Salut,

    Bon j'ai enfin réussi à faire ce que je voulais. Au début je travaillais sur un fichier texte avec toutes les informations collé "TEST2" que je vous mets en PJ. J'ai donc réussi a avoir le code que je voulais:

    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
    import pyvisa
    import time
    rm = pyvisa.ResourceManager()
    rm.list_resources()
     
    scope = rm.open_resource('USB0::0x0699::0x03A4::C040158::INSTR')
     
    print(scope.query('*IDN?'))
     
    scope.timeout = 100000
    scope.read_termination = '\n'
    scope.write_termination = '\n'
     
    f = open('C:\\Users\\stagiaire\\Desktop\\Stage_El_harrani\\oscilloscope\\script python py\\comparaison.SET')
    dataList = f.readlines()[0].split(';');
    structure = ""; # ça va être le chemin pour accéder a ta variable dans l'exemple CURSOR:HBARS avec la variable en plus
    for i,d in enumerate(dataList):
      splitedData = d.split(' ');
      if(":" in splitedData[0]):
        structure = splitedData[0]; # là t'as la bonne structure avec la variable
        print(structure + " -> " + splitedData[1]);
        scope.write(structure + " " + splitedData[1]);
      else:
        index = i - 1;
        nameFound = False;
        while nameFound == False:
          if(":" in dataList[index]): # on remonte dans le tableau pour retrouver la structure
            tempStructure = dataList[index];
            path = tempStructure.split(" ")[0].split(":")[:-1]; # ici on split les labels et on enlève le dernier nom pour ne pas avoir la variable dans la structure 
            structure = ':'.join(path) + ":" + splitedData[0]; # là on fusionne le chemin et on ajoute le nom de la variable
            nameFound = True;
            print(structure + " -> " + splitedData[1]);
            scope.write(structure + " " + splitedData[1]);
          index = index - 1;
    Mais maintenant je dois travailler sur des fichiers.SET. Le problème étant que la différence de contenu entre mon fichier.SET et txt est que il y à des sauts de lignes sur le fichier.SET qu'il n'y avait pas sur l'autre et je n'arrive pas à adapter mon code. Pouvez vous m'aider svp.
    Merci à vous
    (Le fichier.SET n'est pas compatible avec le forum je vous ecrit donc son contenu en bas et .txt est TEST2)

    :HEADER 0;
    :VERBOSE 1;
    :DATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 2500;WIDTH 1;
    :LOCK NONE;
    :DISPLAY:FORMAT YT;STYLE VECTORS;PERSISTENCE 0;CONTRAST 63;INVERT OFF;
    :ACQUIRE:MODE SAMPLE;NUMAVG 16;STATE 1;STOPAFTER RUNSTOP;
    :CH1:PROBE 1.0E1;CURRENTPROBE 1.0E2;SCALE 5.0E1;POSITION 0.0E0;COUPLING DC;BANDWIDTH OFF;INVERT OFF;YUNIT "A";
    :CH2:PROBE 1.0E3;CURRENTPROBE 1.0E3;SCALE 5.0E1;POSITION 0.0E0;COUPLING DC;BANDWIDTH OFF;INVERT OFF;YUNIT "V";
    :CH3:PROBE 1.0E1;CURRENTPROBE 1.0E1;SCALE 5.0E-1;POSITION 0.0E0;COUPLING DC;BANDWIDTH OFF;INVERT OFF;YUNIT "V";
    :CH4:PROBE 1.0E1;CURRENTPROBE 1.0E1;SCALE 5.0E-1;POSITION 0.0E0;COUPLING DC;BANDWIDTH OFF;INVERT OFF;YUNIT "V";
    :HORIZONTAL:VIEW MAIN;MAIN:SCALE 5.0E-4;POSITION 0.0E0;
    :HORIZONTAL:DELAY:SCALE 2.5E-9;POSITION 0.0E0;
    :TRIGGER:MAIN:MODE AUTO;TYPE EDGE;HOLDOFF:VALUE 5.0E-7;
    :TRIGGER:MAIN:EDGE:SOURCE CH1;COUPLING DC;SLOPE RISE;
    :TRIGGER:MAIN:VIDEO:SOURCE CH1;SYNC FIELD;POLARITY NORMAL;LINE 1;STANDARD NTSC;
    :TRIGGER:MAIN:PULSE:SOURCE CH1;WIDTH:POLARITY POSITIVE;WHEN EQUAL;WIDTH 1.0E-3;
    :TRIGGER:MAIN:LEVEL 0.0E0;
    :SELECT:CH1 1;CH2 0;CH3 0;CH4 0;MATH 0;REFA 0;REFB 0;REFC 0;REFD 0;
    :CURSOR:FUNCTION OFF;SELECT:SOURCE CH1;
    :CURSOR:VBARS:UNITS SECONDS;POSITION1 -2.5E-3;POSITION2 2.5E-3;
    :CURSOR:HBARS:POSITION1 1.8E1;POSITION2 -1.4E1;
    :DATALOGGING:DURATION 30;SOURCE CH1;
    :MEASUREMENT:MEAS1:TYPE MEAN;SOURCE CH1;
    :MEASUREMENT:MEAS2:TYPE MINIMUM;SOURCE CH1;
    :MEASUREMENT:MEAS3:TYPE MAXIMUM;SOURCE CH1;
    :MEASUREMENT:MEAS4:TYPE FREQUENCY;SOURCE CH1;
    :MEASUREMENT:MEAS5:TYPE PERIOD;SOURCE CH1;
    :MEASUREMENT:IMMED:TYPE PERIOD;SOURCE1 CH1;
    :MEASUREMENT:METHOD AUTO;
    :MATH:DEFINE "FFT(CH1,FLATTOP)";VERTICAL:POSITION 0.0E0;SCALE 1.0E2;
    :MATH:FFT:HORIZONTAL:POSITION 5.0E1;SCALE 1.0E0;
    :MATH:FFT:VERTICAL:POSITION 0.0E0;SCALE 1.0E0;
    :HARDCOPY:BUTTON SAVESIMAGE;FORMAT JPEG;PORT USB;LAYOUT PORTRAIT;INKSAVER ON;
    :PICTBRIDGE:PAPERSIZE DEFLT;IMAGESIZE DEFLT;PAPERTYPE DEFLT;PRINTQUAL DEFLT;DATEPRINT DEFLT;IDPRINT DEFLT;
    :LANGUAGE FRENCH;
    :AUTORANGE:SETTINGS BOTH;
    :LIMIT:SOURCE CH1;COMPARE REFA;SAVEIMAGE 0;SAVEWFM 0;STOPAFTER:MODE MANUAL;
    :LIMIT:TEMPLATE:DESTINATION REFA;SOURCE CH1;TOLERANCE:HORIZONTAL 0;VERTICAL 0;
    :SAVE:IMAGE:FILEFORMAT JPEG
    Fichiers attachés Fichiers attachés

  11. #11
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 718
    Par défaut
    Salut,

    Citation Envoyé par heh__ Voir le message
    Le problème étant que la différence de contenu entre mon fichier.SET et txt est que il y à des sauts de lignes sur le fichier.SET qu'il n'y avait pas sur l'autre et je n'arrive pas à adapter mon code.
    Vos unités d'informations sont maintenant des lignes (comme suggéré précédemment).
    Vous pouvez donc lire le fichier ligne à ligne et traiter chaque ligne indépendamment (en appelant par exemple une fonction qui récupère une partie du code que vous avez fait).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  12. #12
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2021
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2021
    Messages : 13
    Par défaut
    Super merci je vais essayer.
    Mais sinon il n'y à pas de choses spécifique aux fichier .SET? Je peux le traiter comme j'aurais traité un fichier txt?

  13. #13
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 718
    Par défaut
    Citation Envoyé par heh__ Voir le message
    Je peux le traiter comme j'aurais traité un fichier txt?
    Est ce que c'est autre chose qu'un fichier texte?
    Est ce que la différence entre les 2 fichiers ne se résume pas au remplacement de ';:' par ';\n:'?

    Normalement si vous avez la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    :DATA:ENCDG SRIBINARY;DESTINATION REFA;SOURCE CH1;START 1;STOP 500;WIDTH 1;
    vous savez à quoi s'applique DATA (ce qui était la question initiale).

    Mais çà ne dit pas ce que doit retourner la fonction lorsqu'elle reçoit cette ligne ni ce qu'elle va retourner lorsqu'elle récupère:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    :MEASUREMENT:MEAS1:TYPE MEAN;SOURCE CH1;
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  14. #14
    Membre averti
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2021
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Garonne (Midi Pyrénées)

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

    Informations forums :
    Inscription : Mai 2021
    Messages : 13
    Par défaut
    "Est ce que c'est autre chose qu'un fichier texte?"

    Oui car c'est un fichier .SET. Le contenu est celui que je vous ai récris au dessus.
    "Est ce que la différence entre les 2 fichiers ne se résume pas au remplacement de ';:' par ';\n:'?"

    C'est ça mais je ne vois pas quelle ligne de code changer pour modifier ce paramètre.

    Le retour que je dois faire c'est envoyer la commande à l'oscilloscope mais ça je n'ai pas de soucis avec. Il faut juste envoyer:
    scope.write(structure(par exemple :DATA:ENCDG) + " " + splitedData[1](par exemple SRIBINARY));

  15. #15
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 718
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 718
    Par défaut
    Citation Envoyé par heh__ Voir le message
    Oui car c'est un fichier .SET. Le contenu est celui que je vous ai récris au dessus.
    Un fichier texte est juste un fichier qui contient du texte (une suite de chaine de caractères dont je peux afficher le contenu sans avoir à transformer qui que ce soit). C'est par opposition à un fichier binaire qui va peut etre falloir découper en octets regroupes par 2 pour en faire des entiers.

    Citation Envoyé par heh__ Voir le message
    C'est ça mais je ne vois pas quelle ligne de code changer pour modifier ce paramètre.
    Il suffit de lire le fichier ligne par ligne... et comme c'est un fichier texte, çà se fait tout seul (et vous avez des tas de tuto. qui racontent comment le faire).

    Citation Envoyé par heh__ Voir le message
    Le retour que je dois faire c'est envoyer la commande à l'oscilloscope mais ça je n'ai pas de soucis avec. Il faut juste envoyer:
    scope.write(structure(par exemple ATA:ENCDG) + " " + splitedData[1](par exemple SRIBINARY));
    Là vous dites ce que vous allez faire du retour mais pas grand chose sur comment le construire (peut être que vous pouvez vous contentez d'envoyer la ligne à l'oscillo?).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

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

Discussions similaires

  1. [PERL] Problème lecture/écriture dans un fichier
    Par LE NEINDRE dans le forum Langage
    Réponses: 4
    Dernier message: 17/08/2005, 13h15
  2. [SAX] Problème lecture fichier xml
    Par BernardT dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 07/07/2005, 18h11
  3. [communication série] problème lecture/écriture
    Par davinout dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 01/06/2005, 13h14
  4. Problème lecture fichier en C++
    Par cali1983 dans le forum C++
    Réponses: 17
    Dernier message: 20/05/2005, 09h36
  5. Problème lecture de nombre dans un fichier en c++
    Par knecmotet dans le forum C++
    Réponses: 1
    Dernier message: 28/10/2004, 15h48

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