daily pastebin goal
7%
SHARE
TWEET

totale

a guest Apr 17th, 2018 74 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <IRremote.h> // use the library
  2. int receiver = 13; // pin 11 of IR receiver to Arduino digital pin 11
  3. int DRL = 2; // pin 2 come uscita LED DRL
  4. int POSIZIONE_TARGA_TACO_RADIO_PULSANTI_BAGAGLIAIO = 3; // pin 3 come uscita LED POSIZIONE_TARGA_TACO_RADIO_PULSANTI
  5. int ANABBAGLIANTI = 4; // pin 4 come uscita LED ANABBAGLIANTI ANT.
  6. int FRECCIE_SX = 5; // pin 5 come uscita LED FRECCIE SX
  7. int FENDINEBBIA = 6; // pin 6 come uscita LED FENDINEBBIA
  8. int FRECCIE_DX = 7; // pin 7 come uscita LED FRECCIE DX
  9. int PIEDI = 8; // pin 8 come uscita LED PIEDI
  10. int CIELO = 9; // pin 9 come uscita LED CIELO
  11. int PORTIERE = 14; // pin 12 come uscita LED STRISCE
  12. int itsONled[] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // aggiungere tanti zeri quanti sono i case + un ulteriore zero ( in questo caso 20 case -> 20 zeri dell'array + 0 = 21 zeri)
  13.  
  14. #define code1_DRL 0xFF30CF // code received from button 1 con 1° valore
  15. #define code2_POSIZIONE_TARGA_TACO_RADIO_PULSANTI_BAGAGLIAIO 0xFF18E7 // code received from button 2 con 1° valore
  16. #define code3_ANABBAGLIANTI 0xFF7A85 // code received from button 3 con 1° valore
  17. #define code4_FRECCIE_SX 0xFF10EF // code received from button 4 con 1° valore
  18. #define code5_FENDINEBBIA 0xFF38C7 // code received from button 5 con 1° valore
  19. #define code6_FRECCIE_DX 0xFF5AA5 // code received from button 6 con 1° valore
  20. #define code7_PIEDI 0xFF42BD // code received from button 7 con 1° valore
  21. #define code8_CIELO 0xFF4AB5 // code received from button 8 con 1° valore
  22. #define code9_PORTIERE 0xFF52AD // code received from button 9 con 1° valore
  23. #define code10_FRECCIE_SX_DX 0xFF6897 // code received from button 0 con 1° valore
  24. #define code11_APERTURA_CHIUSURA_PORTIERE 0xFF629D // DEFINIRE TASTO SUONO PORTIERE
  25. #define code12_AVVIO_MOTORE 0xFFA25D // DEFINIRE TASTO SUONO PORTIERE
  26.  
  27. IRrecv irrecv(receiver); // create instance of 'irrecv'
  28. decode_results results;
  29.  
  30. //DA QUì AUDIO PER MOTORE E BLOCCO PORTIERE
  31.  
  32. #include "Arduino.h"
  33. #include "SoftwareSerial.h"
  34. #include "DFRobotDFPlayerMini.h"
  35. SoftwareSerial mySoftwareSerial(10, 11); // RX, TX
  36. DFRobotDFPlayerMini myDFPlayer;
  37. void printDetail(uint8_t type, int value);
  38. int Volume;
  39. int Vol;
  40. //
  41.  
  42. void setup()
  43. {
  44.   Serial.begin(9600); // for serial monitor output
  45.   irrecv.enableIRIn(); // Start the receiver
  46.   pinMode(2, OUTPUT); // Pin 2 output
  47.   pinMode(3, OUTPUT); // Pin 3 output
  48.   pinMode(4, OUTPUT); // Pin 4 output
  49.   pinMode(5, OUTPUT); // Pin 5 output
  50.   pinMode(6, OUTPUT); // Pin 6 output
  51.   pinMode(7, OUTPUT); // Pin 7 output
  52.   pinMode(8, OUTPUT); // Pin 8 output
  53.   pinMode(9, OUTPUT); // Pin 9 output
  54.   pinMode(14, OUTPUT); // Pin 12 output
  55.  
  56. //DA QUì PER SUONO PORTIERE
  57.   //  myDFPlayer.EQ(DFPLAYER_EQ_NORMAL);
  58.   myDFPlayer.EQ(DFPLAYER_EQ_BASS);
  59.   //  myDFPlayer.EQ(DFPLAYER_EQ_CLASSIC);
  60.  
  61.   myDFPlayer.volume(28);
  62.   Serial.println(Vol);
  63. }
  64.  
  65. void loop() {
  66.   if (irrecv.decode(&results)) {
  67.     {
  68.       Serial.println(results.value, HEX); // mostrami il codice in esadecimale sul monitor seriale
  69.       irrecv.resume();// receive the next value
  70.     }
  71.     unsigned long value = results.value;
  72.     switch (value) {
  73.       case code1_DRL:
  74.         if (itsONled[1] == 1) {       // se il primo led è acceso
  75.           digitalWrite(DRL, LOW);   // spengo quando premo il pulsante
  76.           itsONled[1] = 0;           // e lo stato va a spento
  77.         } else {                      // se il primo led è spento
  78.           digitalWrite(DRL, HIGH); // accendo quando premo il pulsante
  79.           itsONled[1] = 1;          // e lo stato passa ad acceso
  80.         }
  81.         break;
  82.       case code2_POSIZIONE_TARGA_TACO_RADIO_PULSANTI_BAGAGLIAIO:
  83.         if (itsONled[2] == 1) {       // se il primo led è acceso
  84.           digitalWrite(POSIZIONE_TARGA_TACO_RADIO_PULSANTI_BAGAGLIAIO, LOW);   // spengo quando premo il pulsante
  85.           itsONled[2] = 0;           // e lo stato va a spento
  86.         } else {                      // se il primo led è spento
  87.           digitalWrite(POSIZIONE_TARGA_TACO_RADIO_PULSANTI_BAGAGLIAIO, HIGH); // accendo quando premo il pulsante
  88.           itsONled[2] = 1;          // e lo stato passa ad acceso
  89.         }
  90.         break;
  91.       case code3_ANABBAGLIANTI:
  92.         if (itsONled[3] == 1) {       // se il primo led è acceso
  93.           digitalWrite(ANABBAGLIANTI, LOW);   // spengo quando premo il pulsante
  94.           itsONled[3] = 0;           // e lo stato va a spento
  95.         } else {                      // se il primo led è spento
  96.           digitalWrite(ANABBAGLIANTI, HIGH); // accendo quando premo il pulsante
  97.           itsONled[3] = 1;          // e lo stato passa ad acceso
  98.         }
  99.         break;
  100.       case code4_FRECCIE_SX:
  101.         if (itsONled[4] == 1) {       // se il primo led è acceso
  102.           digitalWrite(FRECCIE_SX, LOW); //lampeggia
  103.           itsONled[4] = 0;           // e lo stato va a spento
  104.         } else {                      // se il primo led è spento
  105.           digitalWrite(FRECCIE_SX, HIGH); // accendo quando premo il pulsante
  106.           delay(350);
  107.           digitalWrite(FRECCIE_SX, LOW); //lampeggia
  108.           delay(350);    
  109.           itsONled[4] = 1;          // e lo stato passa ad acceso
  110.         }
  111.         break;
  112.       case code5_FENDINEBBIA:
  113.         if (itsONled[5] == 1) {       // se il primo led è acceso
  114.           digitalWrite(FENDINEBBIA, LOW);   // spengo quando premo il pulsante
  115.           itsONled[5] = 0;           // e lo stato va a spento
  116.         } else {                      // se il primo led è spento
  117.           digitalWrite(FENDINEBBIA, HIGH); // accendo quando premo il pulsante
  118.           itsONled[5] = 1;          // e lo stato passa ad acceso
  119.         }
  120.         break;
  121.       case code6_FRECCIE_DX:
  122.         if (itsONled[6] == 1) {       // se il primo led è acceso
  123.           digitalWrite(FRECCIE_DX, LOW);   // spengo quando premo il pulsante
  124.           itsONled[6] = 0;           // e lo stato va a spento
  125.         } else {                      // se il primo led è spento
  126.           digitalWrite(FRECCIE_DX, HIGH); // accendo quando premo il pulsante
  127.           delay(350);
  128.           digitalWrite(FRECCIE_DX, LOW); //lampeggia
  129.           delay(350);
  130.           itsONled[6] = 1;          // e lo stato passa ad acceso
  131.         }
  132.         break;
  133.       case code7_PIEDI:
  134.         if (itsONled[7] == 1) {       // se il primo led è acceso
  135.           digitalWrite(PIEDI, LOW);   // spengo quando premo il pulsante
  136.           itsONled[7] = 0;           // e lo stato va a spento
  137.         } else {                      // se il primo led è spento
  138.           digitalWrite(PIEDI, HIGH); // accendo quando premo il pulsante
  139.           itsONled[7] = 1;          // e lo stato passa ad acceso
  140.         }
  141.         break;
  142.       case code8_CIELO:
  143.         if (itsONled[8] == 1) {       // se il primo led è acceso
  144.           digitalWrite(CIELO, LOW);   // spengo quando premo il pulsante
  145.           itsONled[8] = 0;           // e lo stato va a spento
  146.         } else {                      // se il primo led è spento
  147.           digitalWrite(CIELO, HIGH); // accendo quando premo il pulsante
  148.           itsONled[8] = 1;          // e lo stato passa ad acceso
  149.         }
  150.         break;
  151.       case code9_PORTIERE:
  152.         if (itsONled[9] == 1) {       // se il primo led è acceso
  153.           digitalWrite(PORTIERE, LOW);   // spengo quando premo il pulsante
  154.           itsONled[9] = 0;           // e lo stato va a spento
  155.         } else {                      // se il primo led è spento
  156.           digitalWrite(PORTIERE, HIGH); // accendo quando premo il pulsante
  157.           itsONled[9] = 1;          // e lo stato passa ad acceso
  158.         }
  159.         break;
  160.       case code10_FRECCIE_SX_DX:
  161.         if (itsONled[10] == 1) {       // se il primo led è acceso
  162.           digitalWrite(FRECCIE_SX, LOW);   // spengo quando premo il pulsante
  163.           digitalWrite(FRECCIE_DX, LOW);   // spengo quando premo il pulsante
  164.           itsONled[10] = 0;           // e lo stato va a spento
  165.         } else {                      // se il primo led è spento
  166.           digitalWrite(FRECCIE_SX, HIGH); // accendo quando premo il pulsante
  167.           digitalWrite(FRECCIE_DX, HIGH); // accendo quando premo il pulsante
  168.           delay(350);
  169.           digitalWrite(FRECCIE_SX, LOW); // accendo quando premo il pulsante
  170.           digitalWrite(FRECCIE_DX, LOW);
  171.           delay(350);
  172.           itsONled[10] = 1;          // e lo stato passa ad acceso
  173.         }
  174.         break;
  175.       case code11_APERTURA_CHIUSURA_PORTIERE:
  176.         if (itsONled[11] == 1) {       // se il primo led è acceso
  177.           myDFPlayer.play(2);  //Play the first mp3
  178.           digitalWrite(FRECCIE_SX, HIGH);   // spengo quando premo il pulsante
  179.           digitalWrite(FRECCIE_DX, HIGH);   // spengo quando premo il pulsante
  180.           delay(350);
  181.           digitalWrite(FRECCIE_SX, LOW);   // spengo quando premo il pulsante
  182.           digitalWrite(FRECCIE_DX, LOW);
  183.           itsONled[11] = 0;           // e lo stato va a spento
  184.         } else {                      // se il primo led è spento
  185.  
  186.           myDFPlayer.play(1);  //Play the first mp3
  187.           digitalWrite(FRECCIE_SX, HIGH); // accendo quando premo il pulsante
  188.           digitalWrite(FRECCIE_DX, HIGH); // accendo quando premo il pulsante
  189.           delay(250);
  190.           digitalWrite(FRECCIE_SX, LOW); // accendo quando premo il pulsante
  191.           digitalWrite(FRECCIE_DX, LOW);
  192.           delay(250);
  193.           digitalWrite(FRECCIE_SX, HIGH); // accendo quando premo il pulsante
  194.           digitalWrite(FRECCIE_DX, HIGH); // accendo quando premo il pulsante
  195.           delay(250);
  196.           digitalWrite(FRECCIE_SX, LOW); // accendo quando premo il pulsante
  197.           digitalWrite(FRECCIE_DX, LOW);
  198.           itsONled[11] = 1;          // e lo stato passa ad acceso
  199.         }
  200.         break;
  201.       case code12_AVVIO_MOTORE:      
  202.         myDFPlayer.play(3);  //Play the first mp3
  203.         break;
  204.     }
  205.   }
  206. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top