Blog pour un amateur du system embarqué.

Construire un quadrirotor avec Raspberry Pi (2)

| raspberry_pi linux drone

La programmation et les spécifications :

  • Le code est écrit en C, en exploitant les nouveautés couverts pas le standard C99. gcc 4.9 est utilisé.
  • Utiliser pthreads (POSIX) pour la programmation multithreading, puis gcc et clang ne supporte pas encore C11 Thread (c’est à cause de glibc).
  • Le programme doit marcher sur RPi modèle B+ et aussi sur RPi2 modèle B (peut-être aussi RPi3 modèle B, j’espère).
  • Le programme peut se faire exécuter à la fin de la procédure de démarrage. Davantage, le système peut exécuter le programme s’il est arrêté à cause de certaines raisons. C’est-à-dire, on doit préparer un script shell qui peut être exécuté par /etc/rc.local afin de lancer ce programme et surveiller s’il est encore en cours.
  • Il faut enregistrer toutes les données nécessaires, y compris celles recueillies par les capteurs et celles calculées pas le programme, dans un fichier log dont le nom contient l’instant (date,heure,etc.) du démarrage du programme.
  • CMake est utilisé pour générer le fichier Makefile
  • Suivre les principes indiqués par How to C in 2016, et le style de code fait référence à 21/CLASS - C Language Style for Scalability
  • Utiliser Doxygen pour générer la documentation du code source.