Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //===========================================================================================================================
- // Claude DUFOURMONT
- //--------------------------------------------------------- [email protected] -----------------------------------
- // My YouTube : https://www.youtube.com/channel/UCvr9eb05lJow6N7m3SKqvNw
- // DUFOURMONT Le : 28/12/2020
- // Ce système à pour but de déterminer le bon fonctionnement de capteurs optiques (phototransistors - LDR)
- // Il permet également de connaître leur caractéristique intrinsèque au moment du basculement
- // (Ic pour le phototransistor - résistance pour la LDR)
- //===========================================================================================================================
- //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- // Code écrit pour ATtiny85 >
- //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
- #include <Adafruit_NeoPixel.h>
- #define BrocheDetectionOk 1 // Lumière détectée : LED bleue
- #define PINBarette 0 // Sortie vers DIN de la barette
- #define BrocheBuzzer 2
- #define NUM_LEDS 8 // Nombre de LEDs sur barette
- #define FirstLed 0 // Position de la première LED à allumer
- #define N 8 // Nombre de LEDS à allumer
- Adafruit_NeoPixel strip = Adafruit_NeoPixel(NUM_LEDS, PINBarette, NEO_GRB + NEO_KHZ800);
- float ValDetecteur; // Valeur analogique sur entrée analogique A2 (résultante capteur)
- float ValPotar; // Valeur analogique sur entrée analogique A3 (seuil variable)
- void setup()
- {
- strip.begin();
- strip.clear();
- strip.setBrightness(255); // Brillance maximale (255)
- strip.show();
- pinMode (PINBarette, OUTPUT);
- pinMode (BrocheDetectionOk, OUTPUT);
- pinMode (BrocheBuzzer, OUTPUT);
- digitalWrite (BrocheDetectionOk, LOW);
- delay(1000);
- }
- void loop ()
- {
- for(int i=FirstLed; i<FirstLed+N; i=i+2)
- {
- strip.setPixelColor(i, 255, 255, 255);
- strip.show(); // Alumage des LEDs de FirstLed à N (une sur deux)
- }
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++Détection DEBUT++++++++++++++++++++++++++++++++++++++++++++++++++++++
- delay(5);
- ValDetecteur = analogRead (A2);
- ValPotar = analogRead (A3);
- if ( ValDetecteur > ValPotar)
- {
- digitalWrite (BrocheDetectionOk, HIGH);
- Buzzer (100, 25, 1);
- }
- else
- {
- digitalWrite (BrocheDetectionOk, LOW);
- }
- // +++++++++++++++++++++++++++++++++++++++++++++++++++++++Détection FIN+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- }
- //++++++++++++++++++++++++++++++++++++++++++++++++++DEBUT FONCTION BUZZER+++++++++++++++++++++++++++++++++++++++++++++++++++++++
- void Buzzer (int TempsH, int TempsL, int nb) // TempsH => délai buzzer ON, TempsL => délai buzzer OFF, nb => nombre de bips
- {
- for (int x = 1; x <= nb; x++) // Boucle le nombre de fois voulu passée par l'argument "int nb"
- {
- digitalWrite(BrocheBuzzer, HIGH); // Active le buzzer
- delay (TempsH); // Temporisation à l'état haut du buzzer pendant la durée passée par l'argument "int TempsH"
- digitalWrite(BrocheBuzzer, LOW); // Désactive le buzzer
- delay (TempsL); // Temporisation à l'état bas du buzzer pendant la durée passée par l'argument "int TempsL"
- }
- }
- //++++++++++++++++++++++++++++++++++++++++++++++++++FIN FONCTION BUZZER++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement