Bonjour,
J'utilise une Arduino Mega 2560 et un shiel Ethernet + SD.
Je stock l'adresse de mes sondes DS18B20 (sonde de température numérique) dans des tableaux de byte.
byte sonde1[8] = {0x28,0x12,0x21,0x8B,0x03,0x00,0x00,0xB7};
byte sonde2[8] = {0x28,0xAD,0x2D,0x8B,0x03,0x00,0x00,0xB5};
Ce que je souhaite faire c'est stocké ces données dans un fichier de config texte pour ne pas avoir à re-compiler mon code si je rajoute une sonde ou si j'en change une, et donc l'adresse.
Je stock donc dans un fichier texte les adresses des sondes DS18B20.
Voici le contenu de mon fichier :
28 12 21 8B 03 00 00 B7
28 AD 2D 8B 03 00 00 B5
Je parviens à lire le contenu de mon fichier, par contre, j'obtiens un résultat sous forme de String ou de tableau de char.
En analysant le tableau caractère par caractère, j'arrive à détecter les retours à la ligne (adresse suivante) et les espaces (composante d'adresse suivante)
Mon problème c'est que je n'arrive pas à convertir les char "2" et "8" en byte 0x28.
L'autre difficulté c'est que je peux avoir un nombre de sondes variable, là c'est 2 mais je peux très bien en avoir 3,4, ou plus encore.
J'ai bien essayer avec les fonctions sscanf et strtok pour coupé ma chaine automatiquement sur le caractère espace.
Rien ne fonctionne.
Je pense que j'ai des lacunes en terme de type de variable, de pointeur et autre joyeuseté du langage C

Si quelqu'un peut m'aider ou m'expliquer certaines choses ce sera avec grand plaisir.
Merci