Devoir Surveillé en Conception IoT 2024
Devoir Surveillé en Conception IoT 2024
Exercice 1.
Comment la broche GPIO21 doit être définie pour pouvoir détecter que le bouton
Pour chacune des questions suivantes, donnez la ou les bonne(s) réponse(s) : poussoir est appuyé sachant que le deuxième pin du bouton est connecté à 3,3V:
a) Une entrée avec une résistance PULL-UP
1) Le démarrage de la carte rasberry Pi 3 est initiée par quel composant ? b) Une entrée avec une résistance PULL-DOWN
a) CPU c) Une sortie avec une résistance PULL-UP
b) GPU d) Une sortie avec une résistance PULL-DOWN
c) BIOS
d) DSP 5) Initialement, un processus possède :
e) UEFI a) 0 thread
b) Un seul fil d’exécution
2) Quel est le SoC équipant une carte Raspberry Pi 3 ? c) Un seul thread
a) SoC Broadcom intégrant un processeur ARM d) Deux threads
b) SoC Broadcom intégrant un GPU VideoCore IV e) Deux fils d’exécution
c) SoC ARM intégrant un microcontrôleur Broadcom f) 0 fil d’exécution
d) SoC ARM intégrant un processeur Broadcom
Exercice 2.
3) On dispose de deux fonctions routine1() et routine2() qui vont être exécutées dans
deux threads distincts et ayant les variables partagées x. Nous souhaitons réaliser un compteur de 0 à 9 a l’aide d’un afficheur 7 segments. Un afficheur 7-
int x=0; segments permet d’afficher un chiffre en allumant ou en éteignant des segments (LEDs), au
void routine1() { nombre de sept. Quand les 7 segments sont allumés, on obtient le chiffre 8.
x=x+1;
}
void routine2() {
x=x-1;
}
Quelles sont les valeurs de x et y pouvant être obtenues après l’exécution simultanée de
deux threads ?
a) x=0
b) x=1
c) x=-1
On donne les variables/constantes globales utilisées pour connecter les sorties de la Raspberry Pi
avec les pins A, B, C et D du décodeur, et le pin pour connecter le bouton poussoir.
#include <iostream>
#include <unistd.h>
#include <pigpio.h>
BON TRAVAIL
À partir des signaux envoyés sur les pins A,B,C et D du décodeur, il est possible d’activer les
sorties a, b, c, d, e, f, g correspondant aux pins d’entrées de l’afficheur 7 segments. Par exemple, si
D=0, C=0, B=0 et A=1, les sorties b et c du décodeur sont activées. Ainsi, les segments b et c de
l’afficheur 7-segments sont allumés. Le chiffre 1 est ainsi représenté.