claudiusmarius

TestDriverBatteur

May 6th, 2023
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.80 KB | None | 0 0
  1.  // YouTube :
  2.  // Vidéo : https://youtu.be/YH24vIzr_0g
  3.  // Schéma : https://mega.nz/file/bk9GARaa#RCFJP4ZNqHRy7nrhzwWDpWaAZceQJa1buGdCRgwWGls
  4.  
  5.   #define  ledVerte  0                           // Plein Courant
  6.   #define  ledJaune   3                           // Courant Reduit
  7.   #define  ledRouge   4                          // Gate PWM Solenoeid                                  
  8.   #define  MosfetGate   1
  9.  
  10.   #define Bouton 2                                    
  11.  
  12.   bool etatBouton = LOW;
  13.    
  14.   unsigned long Tprecedent = 0;
  15.   unsigned long Tactuel = 0;
  16.  
  17.   void setup()
  18.   {
  19.   pinMode (ledVerte, OUTPUT);
  20.   pinMode (ledJaune, OUTPUT);
  21.   pinMode (ledRouge, OUTPUT);
  22.   pinMode (MosfetGate, OUTPUT);
  23.   pinMode (Bouton, INPUT);
  24.   }
  25.  
  26.   void loop()
  27.   {
  28.   if (digitalRead (Bouton)== LOW)
  29.   {
  30.   Tprecedent = Tactuel;
  31.   analogWrite (MosfetGate,0);
  32.   digitalWrite (ledVerte, LOW);
  33.   digitalWrite (ledJaune, LOW);
  34.   digitalWrite (ledRouge, LOW);
  35.   etatBouton = LOW;
  36.   }
  37.   if (digitalRead (Bouton) !=etatBouton && digitalRead (Bouton) ==HIGH)
  38.   {
  39.   Tactuel = millis();
  40.  
  41.   if (Tactuel - Tprecedent >0 && Tactuel - Tprecedent <= 3000)
  42.   {
  43.   analogWrite (MosfetGate,250);
  44.   digitalWrite (ledVerte, HIGH);
  45.   digitalWrite (ledJaune, LOW);
  46.   digitalWrite (ledRouge, HIGH);
  47.   }
  48.    
  49.   if (Tactuel-Tprecedent >3000  && Tactuel-Tprecedent <= 8000)
  50.   {
  51.   analogWrite (MosfetGate, 50);
  52.   digitalWrite (ledVerte, LOW);
  53.   digitalWrite (ledJaune, HIGH);
  54.   digitalWrite (ledRouge, HIGH);
  55.   }
  56.  
  57.   if (Tactuel-Tprecedent > 8000)
  58.   {
  59.   analogWrite (MosfetGate,0);
  60.   digitalWrite (ledVerte, LOW);
  61.   digitalWrite (ledJaune, LOW);
  62.   digitalWrite (ledRouge, LOW);
  63.   }
  64.  
  65.   }
  66.   else
  67.   {
  68.   analogWrite (MosfetGate,0);
  69.   digitalWrite (ledRouge, LOW);
  70.  
  71.   }
  72.   }
Add Comment
Please, Sign In to add comment