Advertisement
Guest User

OMS_RF

a guest
Jul 25th, 2016
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.59 KB | None | 0 0
  1. /*
  2.   Codigo de exemplo do controle RF
  3.  
  4.   Ligue o pino 5V ao conector 5V, o GND ao GND e os demais,
  5.   ligue na sequencia dos conectores Analogicos (A0, A1 ...)
  6. */
  7.  
  8. #define botaoA A2
  9. #define botaoB A0
  10. #define botaoC A3
  11. #define botaoD A1
  12. #define VT A4
  13. #define ReleA 4                         // Pino de saída dos reles
  14. #define ReleB 5
  15. #define ReleC 6
  16. #define ReleD 7
  17.  
  18. int led = 13;
  19.  
  20. int valorVT = 0;
  21. int valorA = 0;
  22. int valorB = 0;
  23. int valorC = 0;
  24. int valorD = 0;
  25.  
  26. byte FlagA = 0;                         // Controle dos reles
  27. byte FlagB = 0;
  28. byte FlagC = 0;
  29. byte FlagD = 0;
  30.  
  31. //----------------------------------------
  32. void setup()
  33. {
  34.   Serial.begin(9600);
  35.   Serial.println("Exemplo Controle RF: ");
  36.   pinMode(led, OUTPUT);
  37.   pinMode(ReleA, OUTPUT);               // Define reles como saida
  38.   pinMode(ReleB, OUTPUT);
  39.   pinMode(ReleC, OUTPUT);
  40.   pinMode(ReleD, OUTPUT);
  41. }
  42. //----------------------------------------
  43. void loop()
  44. {
  45.   valorVT = digitalRead(VT);
  46.   valorA = digitalRead(botaoA);
  47.   valorB = digitalRead(botaoB);
  48.   valorC = digitalRead(botaoC);
  49.   valorD = digitalRead(botaoD);
  50.  
  51.   if (valorA > 0)
  52.   {
  53.     Serial.println("Botao A pressionado.");
  54.     if (FlagA == 0)                                 // Se o releA estiver desligado
  55.     {
  56.       digitalWrite(ReleA, LOW);                     // Liga o releA  (Liga com HIGH ou LOW, depende do seu módulo)
  57.       FlagA = 1;                                    // Informa que está ligado
  58.       delay(100);                                   // Evitar deligar imediatamente
  59.     }
  60.     else                                            // Se o releA estiver ligado
  61.     {
  62.       digitalWrite(ReleA, HIGH);                    // Desliga o releA   (Desliga com LOW ou HIGH, depende do seu módulo)
  63.       FlagA = 0;                                    // Informa que está desligado
  64.       delay(100);                                   // Evitar deligar imediatamente
  65.     }
  66.   }
  67.   if (valorB > 0)
  68.   {
  69.     Serial.println("Botao B pressionado.");
  70.     if (FlagB == 0)                                 // Se o releB estiver desligado
  71.     {
  72.       digitalWrite(ReleB, LOW);                     // Liga o releB  (Liga com HIGH ou LOW, depende do seu módulo)
  73.       FlagB = 1;                                    // Informa que está ligado
  74.       delay(100);                                   // Evitar deligar imediatamente
  75.     }
  76.     else                                            // Se o releB estiver ligado
  77.     {
  78.       digitalWrite(ReleB, HIGH);                    // Desliga o releB   (Desliga com LOW ou HIGH, depende do seu módulo)
  79.       FlagB = 0;                                    // Informa que está desligado
  80.       delay(100);                                   // Evitar deligar imediatamente
  81.     }
  82.   }
  83.   if (valorC > 0)
  84.   {
  85.     Serial.println("Botao C pressionado.");
  86.     if (FlagC == 0)                                 // Se o releC estiver desligado
  87.     {
  88.       digitalWrite(ReleC, LOW);                     // Liga o releC  (Liga com HIGH ou LOW, depende do seu módulo)
  89.       FlagC = 1;                                    // Informa que está ligado
  90.       delay(100);                                   // Evitar deligar imediatamente
  91.     }
  92.     else                                            // Se o releC estiver ligado
  93.     {
  94.       digitalWrite(ReleC, HIGH);                    // Desliga o releC   (Desliga com LOW ou HIGH, depende do seu módulo)
  95.       FlagC = 0;                                    // Informa que está desligado
  96.       delay(100);                                   // Evitar deligar imediatamente
  97.     }
  98.   }
  99.   if (valorD > 0)
  100.   {
  101.     Serial.println("Botao D pressionado.");
  102.     if (FlagD == 0)                                 // Se o releD estiver desligado
  103.     {
  104.       digitalWrite(ReleD, LOW);                     // Liga o releD  (Liga com HIGH ou LOW, depende do seu módulo)
  105.       FlagD = 1;                                    // Informa que está ligado
  106.       delay(100);                                   // Evitar deligar imediatamente
  107.     }
  108.     else                                            // Se o releD estiver ligado
  109.     {
  110.       digitalWrite(ReleD, HIGH);                    // Desliga o releD   (Desliga com LOW ou HIGH, depende do seu módulo)
  111.       FlagD = 0;                                    // Informa que está desligado
  112.       delay(100);                                   // Evitar deligar imediatamente
  113.     }
  114.   }
  115.   if (valorVT > 0)
  116.   {
  117.     // Quando qualquer botao eh pressionado, o pino VT
  118.     // recebe sinal.
  119.     digitalWrite(led, HIGH);
  120.     delay(300);
  121.     digitalWrite(led, LOW);
  122.   }
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement