Advertisement
hidromotic

Untitled

Apr 29th, 2025
164
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.52 KB | Software | 0 0
  1. #define PIN_BLINK 13
  2. #define CONFIG_BLINK    pinMode(PIN_BLINK, OUTPUT)
  3. #define ENCENDER_BLINK  digitalWrite(PIN_BLINK, HIGH)
  4. #define APAGAR_BLINK    digitalWrite(PIN_BLINK, LOW)
  5. #define MS_ESPERA_BLINK 250
  6.  
  7. #define PIN_LED1 0
  8. #define PIN_LED2 1
  9. #define PIN_LED3 2
  10. #define PIN_LED4 3
  11. #define PIN_LED5 4
  12. #define PIN_LED6 5
  13. #define PIN_LED7 6
  14. #define PIN_LED8 7
  15. #define CANT_LED 8
  16.  
  17. const int pin_led[]={PIN_LED1, PIN_LED2,PIN_LED3,PIN_LED4,PIN_LED5,PIN_LED6,PIN_LED7,PIN_LED8};
  18.  
  19. #define CONFIG_LED(X)           pinMode(X, OUTPUT)
  20. #define ENCENDER_LED(X)         digitalWrite(X, HIGH)
  21. #define APAGAR_LED(X)           digitalWrite(X, LOW)
  22. #define AJUSTAR_LED(X, estado)  digitalWrite(X, estado)
  23.  
  24. void setup() {
  25.   unsigned char i;
  26.  
  27.   CONFIG_BLINK;
  28.  
  29.   for(i=0; i<CANT_LED; i++) CONFIG_LED(i);
  30.   }
  31.  
  32. void loop()
  33.   {
  34.   Blink();
  35.   EfectoBarra();
  36.   }
  37.  
  38. void EfectoBarra(void)
  39.   {
  40.   static unsigned long millis_ant=0;
  41.   static unsigned char led=0, i;
  42.  
  43.   if(millis() - millis_ant < 500) return;
  44.   millis_ant=millis();
  45.  
  46.   if(led==CANT_LED)
  47.     {
  48.     for(i=0; i<CANT_LED; i++) APAGAR_LED(i);
  49.     led=0;
  50.     return;
  51.     }
  52.    
  53.   ENCENDER_LED(led);
  54.   led++;
  55.  
  56.   }
  57.  
  58. void Blink(void)
  59.   {
  60.   static unsigned long millis_ini=0;
  61.   static bool estado_led=0; //Se podría declarar bool
  62.  
  63.   //ESPERA POR EL EVENTO
  64.   if( (millis() - millis_ini) < MS_ESPERA_BLINK ) return; //Sale
  65.   millis_ini=millis();
  66.  
  67.   //ACCIÓN
  68.   estado_led = !estado_led;
  69.   if(estado_led) ENCENDER_BLINK;
  70.   else           APAGAR_BLINK;
  71.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement