Cette réponse a aidé l’auteur du sujet
A la découverte de son OS : intéragir avec le monde externe
où comment via un PI (embarqué) mettre en pratique le Langage C
Présentation
Olivier, j’ai travaillé pendant très longtemps sur les couches infrastructures de l’informatique. Débutant en Langage C, mon domaine d’activitée portait uniquement sur la couche service proposée par les infrastructures d’un SI (Active Directory, SQL, messagerie, storage, backup…).
Idée du projet :
- Intéragir avec le matériel Faire communiquer les matériels entre eux (et en second temps avec des arduinos…) Partager éventuellement cette expérience via un tutoriel ultérieurement.
Je ne suis pas développeur, ne l’ai jamais été, je fais du "Delivery Management" la qualité du code produit peut ne pas correspondre à l’état de l’art, meme si je souhaite d’ores et déjà produire un code propre. Vos conseils et remarques en ce sens seront les bienvenus. Merci.
Postulat de départ :
1. Plateforme Matérielle
- arm64 : Raspberry PI3 / Rock64 (de pine 64)
- armv7 : BeagleBone Black (rev C)
2. Opérating System
- OpenBSD
n.b. OpenBSD mon choix. J’utilise ce système personellement depuis les années 2000. Il est simple et fonctionnel. Je sais qu’il existe des distributions linux dédiées pour piloter ces plateformes. Pas de polémique sur ce sujet s.v.p.
Sinon comment découvrir les entrailles de mon OS ?
Ma démarche sera donc empirique (non priorisée) :
- Ecrire et Lire sur des pins digitaux
- Intéragir avec un écran (7 segments / graphique)
- Utiliser le BUS I2C
- Utiliser le BUS IPC
- Lire & écrire sur des pins analogiques
(…) Voilà assez de choses pour commencer…
3. Moyens techniques :
- Les librairies en place sur l’OS : ioctl, gpio, syscall…
- Les datasheets des matériels usités
- Le cours de Lukas-84, Paraze, Taurre et Informaticienzero Langage C
- Le K & R (le livre des auteurs du langage C)
- Le cours de Olyte et Eskimon arduino-premiers-pas-en-informatique-embarquee
n.b. A savoir qu’à ce jour, je ne sais pas comment utiliser les pin ana / pwm.
Édité par Oliv