#include <Keypad.h>
// Déclaration des constantes qui correspondent aux n° de broches
const int LED_JAUNE = 9;
const int LED_BLEUE = 8;
const int GREEN_BUTTON = 7;
const int GREY_BUTTON = 6;
const uint8_t ROWS = 4;
const uint8_t COLS = 4;
char keys[ROWS][COLS] = {
{ '1', '2', '3', 'A' },
{ '4', '5', '6', 'B' },
{ '7', '8', '9', 'C' },
{ '*', '0', '#', 'D' }
};
uint8_t colPins[COLS] = { 5, 4, 3, 2 }; // Pins connected to C1, C2, C3, C4
uint8_t rowPins[ROWS] = { 13, 12, 11, 10 }; // Pins connected to R1, R2, R3, R4
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("Bonjour cher étudiant de BTS CIEL1.");
Serial.println("Relève les défis suivants pour te préparer au DS de jeudi prochain !");
pinMode(GREEN_BUTTON, INPUT_PULLUP);
pinMode(GREY_BUTTON, INPUT_PULLUP);
pinMode(LED_JAUNE, OUTPUT);
pinMode(LED_BLEUE, OUTPUT);
}
void loop() {
int etatBpVert;
int etatBpGris;
char key;
/*
Exercice 1 (if else)
Défi : si l'on appuie sur le bouton vert la led jaune est allumée sinon
elle est éteinte
Pseudo - code :
- lire la broche associée au bouton vert et mémoriser le résultat dans la variable etatBpVert
- si etatBp est égal à 0 alors
- allumer la led jaune
- sinon
- éteindre la led jaune
- finsi
Correction en suivant le lien : https://wokwi.com/projects/415884468189426689
*/
/*
Exercice 2 (while)
Défi : tant que l'on appui sur le bouton gris faire clignoter la led bleue
Attention : commenter le code de l'exercice 1
Pseudo-code :
- lire la broche associée au bouton gris et mémoriser le résultat dans la variable etatBpGris
- tant que etatBpGris est égal à 0 faire
- clignoter la led bleue toutes les secondes
- relire la broche associée au bouton gris et mémoriser le résultat dans la variable etatBpGris
- fintantque
*/
/*
Exercice 3 (do while)
Défi : afficher la touche tapée dans le moniteur série lorsque l'on appuie sur une touche du clavier
Attention : commenter le code de l'exercice 2
Pseudo-code :
- faire
- lire le clavier et mémoriser la touche dans la variable key
- tant que key est égal à 0
- afficher key dans le moniteur série (Serial.println())
*/
/*
Exercice 4 (for)
Défi : faire clignoter la led jaune 10 fois à une fréquence de 1 Hz au moment où l'on appuie sur le bouton vert
Attention : commenter le code de l'exercice 3
Pseudo-code :
- lire la broche associée au bouton vert et mémoriser le résultat dans la variable etatBpVert
- si etatBpVert est égal à 0
- pour i allant de 0 jusqu'à 10 exclu au pas de 1
- faire clignoter la led à 1 Hz
- finpour
- finsi
*/
}