Accéder au contenu principal

Articles

Affichage des articles du janvier, 2023

Arduino

 

l’appui sur un BP pour afficher sur le moniteur série l’alphabet

                             afficher sur le moniteur série l’alphabet   const char BP = 2; char etatBP=HIGH; char lettre = 'A'; void setup(){   pinMode(BP, INPUT);   Serial.begin(9600); attachInterrupt(0,affichage,FALLING);   Serial.print("----l'alphabet----\n");} void loop() {   } void affichage() {    Serial.print(".");   Serial.print(lettre);       lettre=lettre+1;   if(lettre=='[')      {        lettre='A';      }   }

clignoter une RGB / une barre LED RGB / capteur d’humidité analogique

  Exercice 1 Faire clignoter une RGB (passage par 3 couleurs différentes) à fréquence variable (fréquence gérée via un capteur à Ultrason HC-SR04 ) et intensité variable (réglable par un potentiomètre). Utiliser l’appel à une fonction pour déterminer la distance via le capteur à Ultrason. Remarque  : Pour le capteur à Ultrason, 1cm = délai de 100 msec. Loi linéaire. solution : #define trigPin 5 #define echoPin 6 #define ledR 10 #define ledG 12 #define ledB 11 #define pot A0 long duration; int distanceCm; void setup() {   pinMode(trigPin, OUTPUT);   pinMode(echoPin, INPUT);   pinMode(ledR, OUTPUT);   pinMode(ledG, OUTPUT);   pinMode(ledB, OUTPUT);   Serial.begin(9600); } void distance() {   digitalWrite(trigPin, LOW);   delayMicroseconds(2);   digitalWrite(trigPin, HIGH)...

photorésistance / varier l’intensité d’une LED / clignoter une LED par la fonction millis().

 exercice 1: Durant 5 secondes, mesurer la valeur d’une photorésistance (indiquer cette valeur toutes les 500 ms sur le moniteur série). Câbler la photorésistance pour que la valeur augmente lorsque la luminosité augmente. Indiquer ensuite les valeurs min, max et moyenne (précision 2 chiffres après la virgule) des 10 mesures obtenues. Choisir la résistance pour obtenir une bonne variation de la tension analogique.   solution : const int lumiere=A2; int valeurmax=0; int valeurmin=1023; long somme=0; int valeur=0; float moyenne=0; char nombremesure=0; void setup() {    Serial.begin(9600);  while(millis()<5000)  {    valeur=analogRead(lumiere);     Serial.print("la valeur photoresistence: \t"); Serial.println(valeur); delay(500); valeurmax=...