Bonjour à tous,
j'aurais besoin d'un petit coup de pouce des experts internautes sur un petit projet que je code en C.
Alors, voilà je vous explique.
J'ai un capteur de température et hygrométrie, le DHT22 qui après l'envoi d'une requête par le RPi donne des informations codées grâce au temps. Par exemple, si le capteur maintient un niveau haut pendant 27 us, ça correspond à un 0, et s'il maintient le niveau haut pendant 70 us, cela correspond à un 1.
Le problème vient de l'absence de buffers sur les pins GPIO du RPi. En effet, pendant l'envoi des informations par le capteur, l'OS du RPi switche de processus et bloque l'exécution du processus lecteur. Ce qui résulte est que le RPi manque des informations dans le pire des cas, ou se trompe d'interprétation du signal dans l'autre cas.
Je recherche donc une bibliothèque permettant de manipuler les processus, et surtout une fonction qui dit à l'OS de ne pas switcher ce processus jusqu'à la fin de la lecture des informations. Je n'ai rien trouvé sur le net pour le moment, au début j'ai cru que wait() et waitpid() pourraient m'aider mais au final, cela n'a pas l'effet escompté.
Quelqu'un aurait une petite idée ?
Merci par avance pour votre lecture et pour toutes réponses éventuelles.
shinishi
-----