Les DELs : Étude et mise en œuvre sur Raspberry Pi Mise en situation On désire piloter une DEL câblée sur une carte d’extension de Raspberry Pi dont le schéma structurel est donné ci-dessous : ✎ Travail n° 1 Caractéristiques À partir de la datasheet de la DEL utilisée sur la carte d’extension, répondre aux questions suivantes. Sachant que la DEL émet une couleur rouge, quelle est la référence exacte de cette DEL ? Quelle longueur d’onde est émise par cette DEL ? La datasheet indique une intensité lumineuse de 50 mcd dans des conditions d’utilisation typiques. Quelle est donc cette unité ? (l’exprimer en toutes lettres). Voir Lumens et Photométire : notions de base pour des compléments sur la photométire. Source : https://leclairage.fr/th-photometrie/ Est-ce un composant “traversant” ou “CMS” ? Quel est la valeur du courant direct (→ IF) maximum que la DEL peut supporter ? Quelles valeurs peut prendre la tension directe aux bornes de la DEL (→ VF) lorsque celle-ci est traversée par un courant IF=20mA ? ✎ Travail n° 2 Schéma structurel À partir du schéma structurel de la carte d’extension, répondre aux questions suivantes. Quelle broche du connecteur de la Raspberry Pi permet de piloter la DEL ? Quelle broche de la DEL (anode ou cathode) est reliée au potentiel 0 de la carte d’extension (→ GND) ? Sachant que la tension relevée aux bornes de la DEL vaut 1.8V lorsque celle-ci est allumée et que la Raspberry Pi délivre 3.3V sur la broche qui la pilote, quelle tension retrouve-t-on aux bornes de la résistance ? En déduire approximativement le courant qui traverse la DEL dans ces conditions ? 🖮 Travail n° 3 Pilotage en Python Créer le fichier suivant sur la Raspberry Pi drive-led.py import RPi.GPIO as GPIO # Configurer en sortie la broche qui pilote la DEL GPIO.setmode(GPIO.BOARD) GPIO.setup(13, GPIO.OUT) # Allumer la DEL (<- Mise à l'état haut de la broche) GPIO.output(13, GPIO.HIGH) # Attendre pour quitter input("Appuyer sur ENTREE pour quitter...") # Nettoyer GPIO.cleanup() L’exécuter avec la commande suivante et constater que la DEL s’allume python3 drive-led.py Relever AVEC UNE EXTRÊME PRÉCAUTION la tension aux bornes de la DEL pour vérifier qu’elle est conforme à ce qui a été dit à l’exercice précédent. Modifier le script Python pour faire clignoter la DEL à 1Hz à l’aide d’un signal carré de période 1s et de rapport cyclique (→ duty cycle) de 50%. 🖮 Travail n° 4 Pilotage en C Pour accéder aux E/S de la Raspberry Pi, on peut soit s’appuyer directement sur ce que propose Linux soit utiliser des librairies tierces. Les 2 approches possèdent des avantages mais aussi des inconvénients. Ici, on va s’intéresser à l’utilisation d’une librairie couramment utilisée lors des projets : la librairie bcm2835 Consulter ce document pour des généralités sur cette librairie Procéder à son installation Faire un programme qui fait clignoter la DEL à 1Hz en utilisant les fonctions suivantes de la librairie (parcourir la documentation pour savoir ce qu’elles font et comment les utiliser) : bcm2835_init() bcm2835_gpio_fsel() bcm2835_gpio_set_pud() bcm2835_set() bcm2835_clr() bcm2835_close() Utiliser la fonction usleep() déclarée dans l’entête <unistd.h> pour réaliser le clignotement. 🞄 🞄 🞄 AP SN2EC Dashboard VT100