[AIDE INFORMATIQUE] Posez toutes vos questions ici...

124678

Réponses

  • Öhlins et PatateÖhlins et Patate Membre, Modérateur, Petites mains / Donateurs
    02:45 modifié
    Mouais va bien falloir que je réinitialise tout ça... un jour :sifle: :lol:
    Quand on tape, par exemple : - ) , celui là fonctionne mais quand on prend ceux déjà, eux ils ne s'affichent pas
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    C'est pas sur le téléphone qu'il va falloir taper ;) ;) ;)
  • Öhlins et PatateÖhlins et Patate Membre, Modérateur, Petites mains / Donateurs
    02:45 modifié
    Méeuh :x :x
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    Le mÔssieur te dit d'essayer une autre appli de gestion de sms.
  • Öhlins et PatateÖhlins et Patate Membre, Modérateur, Petites mains / Donateurs
    02:45 modifié
    Oui la demoiselle a compris mais elle testera ce soir car elle ne capte pas au boulot ;)
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    Pfiou...
    Je suis épuisé, moi, tout d'un coup... :D :D :D
  • Öhlins et PatateÖhlins et Patate Membre, Modérateur, Petites mains / Donateurs
    02:45 modifié
    On se demande bien pourquoi :lol:
  • rogerlebouledoguerogerlebouledogue Membre, Modérateur, Administrateur
    02:45 modifié
    Morgane utilise simplement un live CD pour récupérer tes données ! ;)
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    Morgane utilise simplement un live CD pour récupérer tes données ! ;)

    LOL, parce que dis comme ça tu crois qu'elle va savoir ? :D :D :D
    Un live, elle va savoir.
    Un CD, elle va savoir.
    Un Live CD, ça va devenir plus compliqué...

    :sifle: :sifle: :sifle:
  • HaïkaHaïka Membre, Petites mains / Donateurs
    02:45 modifié
    Zebulon a écrit:
    Morgane utilise simplement un live CD pour récupérer tes données ! ;)

    LOL, parce que dis comme ça tu crois qu'elle va savoir ? :D :D :D
    Un live, elle va savoir.
    Un CD, elle va savoir.
    Un Live CD, ça va devenir plus compliqué...

    :sifle: :sifle: :sifle:

    :fouet: :fouet: :x :x
  • rogerlebouledoguerogerlebouledogue Membre, Modérateur, Administrateur
    02:45 modifié
    Zebulon a écrit:
    Morgane utilise simplement un live CD pour récupérer tes données ! ;)

    LOL, parce que dis comme ça tu crois qu'elle va savoir ? :D :D :D
    Un live, elle va savoir.
    Un CD, elle va savoir.
    Un Live CD, ça va devenir plus compliqué...

    :sifle: :sifle: :sifle:
    Oui, enfin moi je réponds à sa question, je ne fais pas de hors sujet (vouloir lui réparer son ordi, alors qu'elle ne veux juste que récupérer ses photos et jeter son ordi ... )
    Et puis Google est ton ami ..... :) :) :)
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    N'empêche : ai-je tord ? ;) ;) ;)
  • HaïkaHaïka Membre, Petites mains / Donateurs
    02:45 modifié
    Zebulon a écrit:
    Morgane utilise simplement un live CD pour récupérer tes données ! ;)

    LOL, parce que dis comme ça tu crois qu'elle va savoir ? :D :D :D
    Un live, elle va savoir.
    Un CD, elle va savoir.
    Un Live CD, ça va devenir plus compliqué...

    :sifle: :sifle: :sifle:
    Oui, enfin moi je réponds à sa question, je ne fais pas de hors sujet (vouloir lui réparer son ordi, alors qu'elle ne veux juste que récupérer ses photos et jeter son ordi ... )
    Et puis Google est ton ami ..... :) :) :)

    Parce que mon ordi n'est pas réparable chef. Enfin ça me coûtera les yeux de la tête :!:
    Alors oui Google est devenu mon ami parce que tu ne voulais pas m'expliquer bande de vilain. On parle pas tous informatique tous les jours :x :o
  • IvanohéIvanohé Membre
    02:45 modifié
    Ben du coup grâce à vous j'ai démonté le disque dur de mon ancien pc dans la foulée j'ai été l'emmené chez le dépanneur qui m'a transféré tout mes docs et photos sur ma clé usb. J'ai payé 30€.
  • HaïkaHaïka Membre, Petites mains / Donateurs
    02:45 modifié
    Ivanohé a écrit:
    Ben du coup grâce à vous j'ai démonté le disque dur de mon ancien pc dans la foulée j'ai été l'emmené chez le dépanneur qui m'a transféré tout mes docs et photos sur ma clé usb. J'ai payé 30€.

    Ah merci de ton témoignage.
    Je vais m'occuper de ça la semaine prochaine
  • Öhlins et PatateÖhlins et Patate Membre, Modérateur, Petites mains / Donateurs
    02:45 modifié
    Mon problème est résolu :
    J'ai fait reset du tél pour rien car le problème ne venait pas de moi mais des mes interlocuteurs qui n'avaient pas mis leur clavier en automatique :lol:
  • 02:45 modifié
    Garry et Patate a écrit:
    Mon problème est résolu :
    J'ai fait reset du tél pour rien car le problème ne venait pas de moi mais des mes interlocuteurs qui n'avaient pas mis leur clavier en automatique :lol:

    :o Tous tes interlocuteurs ? ça fait beaucoup de coïncidence non ? (Enfin si c'était que une ou deux personnes ça va, mais sinon je pense pas que la cause soit réellement ça ou du moins ça m'étonne fortement ^^ )
  • Öhlins et PatateÖhlins et Patate Membre, Modérateur, Petites mains / Donateurs
    02:45 modifié
    Y en avait que 2 qui m'envoyaient des smiles et c'est avec ces 2 personnes ou j'avais ces fichus "??"
  • 02:45 modifié
    Sinon quelqu'un s'y connait bien niveau programmation Arduino ? :)

    Car je galère sur une simple procédure vu que je suis en stage... :!:
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    Aie, désolé, je ne peux pas t'aider sur ce genre de "truc".
  • 02:45 modifié
    Lieutenant Dan a écrit:
    Sinon quelqu'un s'y connait bien niveau programmation Arduino ? :)

    Car je galère sur une simple procédure vu que je suis en stage... :!:

    J'ai jamais programmé dessus mais j'ai déjà fait de la progra sur des microcontroleur (j'ai même fait de l'assembleur mais bon ça on oublie vite), mais il me semblait que le Arduino était un dérivé du C, ça y ressemble vachement non ?
    Au pire, tu peux toujours poser ta question en MP, on sait jamais ;)
  • 02:45 modifié
    En fait mon problème est que :

    je souhaite lire un fichier de données (format xml ou txt) à partir de l'Arduino.
    Ma procédure consiste à lire le fichier ligne par ligne.
    Or je n'arrive pas à détecter un retour à la ligne. Pourtant la simple requête suivante devrait convenir mais non :

    void updateAutorisations() {
    EthernetClient client;
    char c;
    String maj = "GET /trucmuchmachinchose.txt HTTP/1.1";
    if (client.connect(server, 80)) {
    client.println(maj);
    client.print(F("Host : "));
    client.println(server);
    client.println();
    if(client.available()) {
    c = client.read();
    if(c == '\n') {

    [...]

    }
    }
    }
    }
    else Serial.println("La MAJ a echoue !");
    client.stop();
    }
  • 02:45 modifié
    Vérifie ce que retourne réellement la fonction read(), Elle ne doit pas prendre un seul caractère, si tu prends un chaine entière, ta comparaison ne peut pas fonctionner. Il faudrait parcourir ta chaine, lire caractère à caractère, et comparer à ce moment là.

    Si tu as d'autres questions , passes en MP, on évitera d'embêter trop les autres, sinon on va sur un forum dédié ;)
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    Bah, vu la vie trépidante de ce sujet, aucun problème pour que vous restiez zizi, mais c'est vous qui voyez comme dirait l'autre...
  • 02:45 modifié
    Zebulon a écrit:
    Bah, vu la vie trépidante de ce sujet, aucun problème pour que vous restiez zizi, mais c'est vous qui voyez comme dirait l'autre...
    Ah ok pas de soucis, je pensais que ça allait gêner ^^
  • rogerlebouledoguerogerlebouledogue Membre, Modérateur, Administrateur
    02:45 modifié
    Bah nan, et puis si ça peut servir à d'autre ... ;)
  • 02:45 modifié
    Mon fichier txt est synthaxé de cette façon :

    <nfc>12345678910</nfc>
    <nfc>112233445566</nfc>
    <nfc>665544332211</nfc>

    Sauf que la fonction read() ne doit pas être complètement optimisée pour lire une ligne aussi longue pour pouvoir détecter un retour charriot.
    J'ai inclus des Serial.println("1") afin de savoir si je rentre dans telle ou telle boucle et ça coince à la détection de retour charriot :/
  • 02:45 modifié
    Lieutenant Dan a écrit:
    J'ai inclus des Serial.println("1") afin de savoir si je rentre dans telle ou telle boucle et ça coince à la détection de retour charriot :/

    Je comprend pas bien cette phrase, tu as inclus des 1 dans ton fichier pour te repérer ?

    Sinon je viens de regarder la syntaxe de read, il lit un seul bytes donc pour moi la boucle fonctionne toujours sauf qu'il y en aura deux.
    J'ai trouvé ce lien : http://stackoverflow.com/questions/5697047/convert-serial-read-into-a-useable-string-using-arduino
    c'est pas ça que tu veux faire ?
  • 02:45 modifié
    Yes merci.

    Ce que je voudrais en faite c'est enregistrer chaque ligne par exemple <nfc>12345678910</nfc> en remplacant les balises <nfc> et </nfc> par rien.

    Chose simple : tag.replace("<nfc>", ""); tag.replace("</nfc>", "");

    et stocker les String dans un tableau incrémentable pour pouvoir réécrire ce tableau dans un fichier txt basé sur la carte SD du shield Ethernet de l'Arduino.

    En faite j'ai un fichier auto.txt (qui liste des tags NFC) basé sur la SD de l'Arduino que je souhaite mettre à jour, toutes les X minutes, à partir d'un autre fichier auto.txt basé sur un serveur distant. Sauf que j'avais pensé à faire un simple download de ce fichier pour le stocker sur la SD mais cette fonction n'est pris en compte nulle part dans les ibrairies Arduino.

    edit : mon fichier auto.txt basé sur mon serveur web est généré via une page php
  • 02:45 modifié
    Lieutenant Dan a écrit:
    Yes merci.

    Ce que je voudrais en faite c'est enregistrer chaque ligne par exemple <nfc>12345678910</nfc> en remplacant les balises <nfc> et </nfc> par rien.

    Chose simple : tag.replace("<nfc>", ""); tag.replace("</nfc>", "");

    et stocker les String dans un tableau incrémentable pour pouvoir réécrire ce tableau dans un fichier txt basé sur la carte SD du shield Ethernet de l'Arduino.

    En faite j'ai un fichier auto.txt (qui liste des tags NFC) basé sur la SD de l'Arduino que je souhaite mettre à jour, toutes les X minutes, à partir d'un autre fichier auto.txt basé sur un serveur distant. Sauf que j'avais pensé à faire un simple download de ce fichier pour le stocker sur la SD mais cette fonction n'est pris en compte nulle part dans les ibrairies Arduino.

    edit : mon fichier auto.txt basé sur mon serveur web est généré via une page php

    C'est un autre soucis que t'as ou t'es toujours sur le même problème ? :o
  • 02:45 modifié
    C'est toujours le même sauf que je ne l'avais pas expliqué ;)
  • 02:45 modifié
    Lieutenant Dan a écrit:
    C'est toujours le même sauf que je ne l'avais pas expliqué ;)

    Aahhhh parce que je commençais à plus comprendre où on en était, mais du coup le lien que je t'ai filé t'a aidé ?
  • 02:45 modifié
    Oui et non c'est une procédure différente que je souhaite utiliser car c'est pour acquérir un String sur un serveur distant ;)
  • 02:45 modifié
    Ok.
    D'abord j'ai vu qu'on pouvait faire des trucs comme ça :
    int x;
    String str;
    
    void loop() 
    {
        if(Serial.available() &gt; 0)
        {
            str = Serial.readStringUntil('\n');
            x = Serial.parseInt();
        }
    }
    

    Le readStringuntil pourrait t'être utile ^^

    Ensuite, le code que tu avais fourni au début ne peut pas fonctionner car tu essayes d'utiliser read() sur un client qui n'est pas un buffer (comme l'utilisation avec Serial).
    Pour terminer je vois pas en quoi l'utilisation du code fournis sur le lien que je t'ai donné n'est pas adaptable à ton cas ? Quel est le problème que ce soit sur un serveur distant ? Tant que tu es connecté et que tu récupère l'adresse de ton fichier, ça devrait pouvoir fonctionner. Il suffit de donner le chemin d'accès complet avec le nom du serveur et tout et tout ?
  • 02:45 modifié
    C'est justement car la fonction read() n'est pas optimisé. Car dès que le read() détecte le \n, il va se remettre directement au début du fichier. Bon après c'est dans mon cas car je suis pas un pro Arduino haha.

    Merci pour la fonction readStringUntil je vais regarder ça :)
  • ZebulonZebulon Membre, Modérateur, Administrateur, Admin. Tête à l'envers...
    02:45 modifié
    Tu es sur pour le "/n", ne devrais-tu pas tester le "/r" plutôt ?
  • 02:45 modifié
    Zebulon a écrit:
    Tu es sur pour le "/n", ne devrais-tu pas tester le "/r" plutôt ?

    Apparemment c'est lui qui insère les "/n" donc je ne suis pas sur que ça soit le problème.
    Mais c'est quand même une bonne idée dans le cas où ce n'est pas lui ^^
    Pour vérifier quels sont les caractères entrés, avec notepad ++, dans view -> Show symbols -> show all characters , tu pourras les voir ;)
  • 02:45 modifié
    Zebulon a écrit:
    Tu es sur pour le "/n", ne devrais-tu pas tester le "/r" plutôt ?

    C'est vrai que pour éditer mon fichier txt sur mon serveur j'utilise une page php qui génère le texte à partir d'une bdd et que pour chaque retour chariot j'écrit un "\r\n" sinon php ne prendrait pas en compte le "\n".
    Sauf que étant donnée que c'est l'arduino qui doit détecter le retour chariot, et que le "\n" est après le "\r" de toute façon, il n'y a pas besoin de faire une détection de quelconque "\r".

    Cela dit j'ai eu une idée lumineuse au travail ce matin :
    En exécutant une requête GET conduisant à une page php codée comme :

    <?php
    $file ="auto.txt";
    //Affichage du fichier texte au complet;
    readfile($file);
    ?>

    J'obtiens de meilleur résultat en codant simplement mon programme Arduino de la manière suivante :

    if (client.connect(server, 80)) {
    client.println(maj);
    //client.print(F("Host : "));
    //client.println(server);
    client.println();
    delay(100);
    SD.remove("auto.txt");
    delay(100);
    newFile = SD.open("auto.txt", FILE_WRITE);
    delay(100);
    if (newFile) {
    if(client.available()) {
    c = client.read();
    while(c != '#') {
    Serial.print(c);
    newFile.print(c);
    delay(1);
    }
    }
    newFile.println('#');
    newFile.close();
    }
    }
    else Serial.println("La MAJ a echoue !");
    client.stop();

    Je commence à voir le jour c'est bon signe ;)
  • 02:45 modifié
    YOUPI J'ai réussi !!!!

    void updateAutorisations() {
    EthernetClient client;
    String c;
    String maj = "GET /sca/client.php";
    String tag;
    if (client.connect(server, 80)) {
    client.println(maj);
    // client.println(F("Host : "));
    // client.println(server);
    // client.println(F("User-Agent: arduino-ethernet"));
    // client.println(F("Connection: close"));
    client.println();
    SD.remove("auto.txt");
    newFile = SD.open("auto.txt", FILE_WRITE);
    delay(100);
    if (newFile) {
    if(client.available()) {
    c = client.readStringUntil('#');
    Serial.print(c);
    newFile.print(c);
    newFile.println();
    delay(100);
    }
    newFile.println('#');
    newFile.close();
    }
    }
    else Serial.println("La MAJ a echoue !");
    client.stop();
    }

    Merci beaucoup Manon pour ton aide et grâce à la fonction readStringUntil :)
  • 02:45 modifié
    Derien ;)

    C'est cool quand on a réussi ^^ C'est ce que je kiff dans la prog, chercher et enfin ... trouver :)
    Du coup, t'es en stage pour combien de temps là ?

Ajouter un commentaire

Éditeur de texte riche. Pour modifier le style d'un paragraphe, cliquez sur l'onglet pour aller dans le menu de paragraphe. De là, vous pourrez choisir un style. Rien conserve le paragraphe par défaut. Un menu de formatage en ligne s'affichera quand vous sélectionnez le texte. Cliquez sur l'onglet pour rentrer dans ce menu. Certains éléments, tels que les codes d'intégration, les images, les indicateurs de chargement et les messages d'erreurs peuvent êtres insérés dans l'éditeur. Vous pouvez naviguer dessus en utilisant les flèches du clavier au sein de l'éditeur et les supprimer avec la touche supprimer ou la touche retour.