Advertisement
claudiusmarius

TestADG4Leds00004

Jun 23rd, 2021
1,081
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.97 KB | None | 0 0
  1.  //****************************************************************************************************************************************************
  2.   //++++++++++++ Programme de test ADG884 (double ANALOG SWITCH 2 voies permettant de vérifier après soudage && compatiblité avec ATtiny85 +++++++++++++
  3.   // ++++++++++++++++++++++++++++++++++++++++++++ Je conseille d'insérer une résistance de tirage à zéro sur D1 et D2 ++++++++++++++++++++++++++++++++++
  4.   // ++ FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - FONCTIONNE - le 23/06/21 ++
  5.   //=========================================================            Claude DUFOURMONT             =================================================
  6.   //----------------------------------   YouTube :      https://www.youtube.com/channel/UCvr9eb05lJow6N7m3SKqvNw    ------------------------------------
  7.   //--------------------------------------------------------------- [email protected] ------------------------------------------------------  
  8.  
  9.   int D1_ADG = 0;                                       // Sortie PB0 reliée via une résistance à D1
  10.   int D1_ADGState = LOW;
  11.   unsigned long previousMillis = 0;
  12.   const long interval = 6000;
  13.  
  14.   int D2_ADG = 1;                                       // Sortie PB1 reliée via une résistance à D2
  15.   int D2_ADGState = LOW;
  16.   unsigned long previousMillis1 = 0;
  17.   const long interval1 = 8000;
  18.  
  19.   int IN1_ADG = 3;                                      // Sortie PB3 reliée à IN1
  20.   int IN2_ADG = 4;                                      // Sortie PB4 reliée à IN2
  21.    
  22.   void setup ()
  23.   {
  24.   pinMode(D1_ADG, OUTPUT);                              // Positionnement en E/S des ports
  25.   pinMode(D2_ADG, OUTPUT);
  26.  
  27.   pinMode (IN1_ADG, OUTPUT);
  28.   pinMode (IN2_ADG, OUTPUT);
  29.   }
  30.  
  31.   void loop ()
  32.   {
  33.   unsigned long currentMillis = millis();               // Mémorisation de la valeur courante du temps écoulé à l'instant T
  34.   if (currentMillis - previousMillis >= interval)       // Test de dépassement de l'intervalle
  35.   {
  36.   previousMillis = currentMillis;                       // Si Oui réactualisation de préviousMillis
  37.  
  38.   if (D1_ADGState == LOW)                               // Si état de D1 est LOW, paasage à HIGH
  39.   {
  40.   D1_ADGState = HIGH;
  41.   }
  42.   else
  43.   {
  44.   D1_ADGState = LOW;                                    // Sinon état D1 est LOW
  45.   }
  46.   digitalWrite(D1_ADG, D1_ADGState);                    
  47.   }
  48.  
  49.   digitalWrite (IN1_ADG, HIGH);
  50.   delay (40);
  51.   digitalWrite (IN1_ADG, LOW);
  52.   delay (70);
  53.  
  54.   unsigned long currentMillis1 = millis();
  55.   if (currentMillis1 - previousMillis1 >= interval1)
  56.   {
  57.   previousMillis1 = currentMillis1;
  58.  
  59.   if (D2_ADGState == LOW)
  60.   {
  61.   D2_ADGState = HIGH;
  62.   }
  63.   else
  64.   {
  65.   D2_ADGState = LOW;
  66.   }
  67.   digitalWrite(D2_ADG, D2_ADGState);
  68.   }
  69.  
  70.   digitalWrite (IN2_ADG, HIGH);
  71.   delay (60);
  72.   digitalWrite (IN2_ADG, LOW);
  73.   delay (70);
  74.  
  75.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement