Besoin de conseils pour programmation embarquée
Bonjour,
Dans le cadre d'une POC pour un petit projet perso, j'aimerai programmer sur RPI en utilisant les IO dispo en langage C/C++.
J'ai fait un peu de C il y a longtemps mais à un niveau très basique...
Pour débuter j'aimerai gérer 2 input, 2 output et afficher quelques messages sur le consoles.
Le programme devrais faire :
Si Input 1 pendant X1 secondes, mettre Ouput à 1.
Si /Input 1 pendant X2 secondes, afficher un premier message.
Si /Input 1 pendant X3 secondes, afficher un second message.
Si /Input 1 pendant X4 secondes, afficher un troisième message.
Les timers devrait être synchronisé avec le t0 où on a /Input.
Et bien évidement chaque timers doit être annulé (ou remis à zéro) suivant le changement d'état de l'Input.
Idem avec Input 2 et Ouput 2, pour avoir un exemple de programmation avec un peu de "parallélisme".
Enfin, j'aimerai que chaque tempo soit réglables depuis un web server (simple page web) et que les changement soit pris en compte en temps réel.
Mes questions :
- Quelle bibliothèque utiliser pour gérer le GPIO ? WiringPi (noté "deprecated" sur le dernier article du site), bcm2835, autre ?
- Pour la gestion des timers / events : il me parait évident qu'un sleep ne fera pas l'affaire ... dois-je mettre mes timers dans des threads séparés du programme principale ou existe-t-il une autre technique ? Pour les annulé je tue les threads, puis j'en crée d'autre ?
- Comment réaliser l’interaction programme <-> page web ?
- Auriez vous des exemples de codes ?
Une fois que je saurais faire ça, je pourrais étoffer ma POC et faire des "vrai" trucs avec le GPIO et le RPI :)
J'ai commencé à faire quelques recherches, mais je ne trouve que des exemples simple et pas très concret :(
Merci par avance pour votre aide.