Advertisement
Guest User

Untitled

a guest
Feb 14th, 2020
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.03 KB | None | 0 0
  1. //**************************************************************************************************************************************************************************
  2. //****************************************************** Récepteur Open-Smart Long Range RF433 - Carte Uno (com22) ********************************************************
  3. //**************************************************************************************************************************************************************************
  4. #include <VirtualWire.h> // Librairie pour la gestion de la communication avec le module récepteur Open-Smart LR
  5.  
  6. #define BrocheRF_RX_PIN 11 // Broche DATA du module récepteur Open-Smart LR RF433
  7. #define BrocheLedBleue 3 // Broche Sortie led bleue
  8. #define BrocheLedVerte 4 // Broche Sortie led verte
  9. #define BrocheLedRouge 5 // Broche Sortie led rouge
  10.  
  11. boolean LedOFF = false; // Indicateur de désactivation des led
  12.  
  13. void setup()
  14. {
  15. pinMode(BrocheLedBleue, OUTPUT); // Configure les broches en sorties
  16. pinMode(BrocheLedRouge, OUTPUT);
  17. pinMode(BrocheLedVerte, OUTPUT);
  18.  
  19. Serial.begin(9600); // Démarre la voie série pour la communication avec la Console
  20.  
  21. vw_set_rx_pin(BrocheRF_RX_PIN); // Définit la broche du récepteur Open-Smart LR RF433
  22. vw_setup(2000); // Définit la vitesse de transmission en bits par seconde
  23. vw_rx_start(); // Démarre le récepteur
  24.  
  25. // *************************************************************************************************************************************************************************
  26. }
  27.  
  28. void loop()
  29. {
  30. // *************************************************************************************************************************************************************************
  31. String comdata = ""; // Déclare la chaine de caractères où sera stocké le message reçu
  32. uint8_t buf[VW_MAX_MESSAGE_LEN]; // Déclare le tableau "buf[]" ou sera récupéré le message reçu
  33. uint8_t buflen = VW_MAX_MESSAGE_LEN; // Déclare la taille du message reçu
  34.  
  35. if (vw_get_message(buf, &buflen)) // **************************************************** // Si des données sont disponible sur le récepteur RF433 => Récupère le message dans le tableau "buf[]"
  36. {
  37. int i; // Pointeur du tableau "buf[]"
  38.  
  39. for (i = 0; i < buflen; ++i) // +++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Parcourt le tableau "buf[]"
  40. {
  41. comdata += (char)buf[i]; // Lit et mémorise les données dans la chaine de caractères "comdata"
  42. //Serial.print(" "); // Débug
  43. //Serial.print(buf[i]); // Débug
  44. }
  45.  
  46. //Serial.print(comdata); // Débug
  47. //Serial.println(""); // Débug
  48.  
  49. if (comdata == "ledbleueon") // +++++++++++++++++++++++++++++++++++++++++++++++++++++++ // Si le message reçu est "ledbleueon"
  50. {
  51. digitalWrite(BrocheLedBleue, HIGH); // Active la led bleur
  52. digitalWrite(BrocheLedVerte, LOW); // Désactive la led rouge
  53. digitalWrite(BrocheLedRouge, LOW); // Désactive la led rouge
  54. comdata = ""; // Réinitialise la chaine de caractères "comdata"
  55. LedOFF = true; // Active l'indicateur de désactivation des led
  56. }
  57. else if (comdata == "ledverteon") // ++++++++++++++++++++++++++++++++++++++++++++++++++ // Si le message reçu est "ledverteon"
  58. {
  59. digitalWrite(BrocheLedBleue, LOW); // Désactive la led bleue
  60. digitalWrite(BrocheLedVerte, HIGH); // Active la led verte
  61. digitalWrite(BrocheLedRouge, LOW); // Désactive la led rouge
  62. comdata = ""; // Réinitialise la chaine de caractères "comdata"
  63. LedOFF = true; // Active l'indicateur de désactivation des led
  64. }
  65. else if (comdata == "ledrougeon") // ++++++++++++++++++++++++++++++++++++++++++++++++++ // Si le message reçu est "ledrougeon"
  66. {
  67. digitalWrite(BrocheLedBleue, LOW); // Désactive la led bleue
  68. digitalWrite(BrocheLedVerte, LOW); // Désactive la led verte
  69. digitalWrite(BrocheLedRouge, HIGH); // Active la led rouge
  70. comdata = ""; // Réinitialise la chaine de caractères "comdata"
  71. LedOFF = true; // Active l'indicateur de désactivation des led
  72. }
  73. else if (comdata == "ledoff" && LedOFF) // ++++++++++++++++++++++++++++++++++++++++++++ // Si le message reçu est "ledoff" et Si l'indicateur de désactivation des led est activé
  74. {
  75. digitalWrite(BrocheLedBleue, LOW); // Désactive la led bleue
  76. digitalWrite(BrocheLedVerte, LOW); // Désactive la led verte
  77. digitalWrite(BrocheLedRouge, LOW); // Désactive la led rouge
  78. comdata = ""; // Réinitialise la chaine de caractères "comdata"
  79. LedOFF = false; // Désactive l'indicateur de désactivation des led
  80. }
  81. }
  82.  
  83. // *************************************************************************************************************************************************************************
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement