Advertisement
Guest User

Untitled

a guest
Dec 17th, 2018
93
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.63 KB | None | 0 0
  1. #include <SPI.h>
  2. //#include "nRF24L01.h" // usa-se para uno e nano, DUE fica desativado
  3. #include "RF24.h"
  4. #include <DueTimer.h>
  5.  
  6. byte sensor_rf[10];
  7. const int RESET = 40;
  8.  
  9. int interrupcao1 = 2; // pino digitais
  10. int interrupcao2 = 3;
  11. int interrupcao3 = 4;
  12. int interrupcao4 = 5;
  13. int interrupcao5 = 10;
  14. int interrupcao6 = 11;
  15. int interrupcao7 = 12;
  16. int interrupcao8 = 13;
  17. int interrupcao9 = 24;
  18.  
  19. int sensor1 = 15;
  20. int sensor2 = 15;
  21. int sensor3 = 20;
  22. int sensor4 = 20;
  23. int sensor5 = 35;
  24. int sensor6 = 35;
  25. int sensor7 = 40;
  26. int sensor8 = 40;
  27. int sensor9 = 55;
  28.  
  29. int estado_sensor1;
  30. int estado_sensor2;
  31. int estado_sensor3;
  32. int estado_sensor4;
  33. int estado_sensor5;
  34. int estado_sensor6;
  35. int estado_sensor7;
  36. int estado_sensor8;
  37. int estado_sensor9;
  38.  
  39. RF24 radio(50, 52);
  40.  
  41. const uint64_t pipe = 0xE8E8F0F0E1LL;
  42.  
  43. void setup(void) {
  44. pinMode(RESET, OUTPUT);
  45. digitalWrite(RESET, HIGH);
  46. Serial.begin(9600);
  47. radio.begin();
  48. radio.openWritingPipe(pipe);
  49.  
  50. Timer3.attachInterrupt(estouro_tempo);
  51. Timer3.start(3000000); // Calls every 3 s
  52.  
  53. for (int i = 2; i <= 28; i++) // Define pinMode INPUT e em PULLUP para os pinos utilizados como interrupcao
  54. {
  55. pinMode(i, INPUT_PULLUP); // seta pull up do pino 2 ao 26
  56. }
  57. attachInterrupt(interrupcao1, interrupcao_1, FALLING); // seta a leitura de interrupcao para o pino 2
  58. attachInterrupt(interrupcao2, interrupcao_2, FALLING); // seta a leitura de interrupcao para o pino 3
  59. attachInterrupt(interrupcao3, interrupcao_3, FALLING); // seta a leitura de interrupcao para o pino 4
  60. attachInterrupt(interrupcao4, interrupcao_4, FALLING); // seta a leitura de interrupcao para o pino 5
  61. attachInterrupt(interrupcao5, interrupcao_5, FALLING); // seta a leitura de interrupcao para o pino 6
  62. attachInterrupt(interrupcao6, interrupcao_6, FALLING); // seta a leitura de interrupcao para o pino 7
  63. attachInterrupt(interrupcao7, interrupcao_7, FALLING); // seta a leitura de interrupcao para o pino 8
  64. attachInterrupt(interrupcao8, interrupcao_8, FALLING); // seta a leitura de interrupcao para o pino 9
  65. attachInterrupt(interrupcao9, interrupcao_9, FALLING); // seta a leitura de interrupcao para o pino 10
  66. }
  67.  
  68. void loop(void)
  69. {
  70. digitalWrite(RESET, LOW);
  71. delay (300);
  72. digitalWrite(RESET, HIGH);
  73. sensor_rf[0] = 123;
  74. radio.write( sensor_rf, sizeof(sensor_rf) );
  75.  
  76.  
  77. for (int i = 0; i <= 9; i++)
  78. {
  79. Serial.print(" sensor_rf ");
  80. Serial.print(i+1);
  81. Serial.print(" : ");
  82. Serial.println(sensor_rf[i]);
  83. }
  84.  
  85. }
  86. void interrupcao_1() { //chamada qd acontecer a interrupcao
  87. sensor1++; //soma a variavel
  88. } //repete todo conteudo do void loop com as outras entradas e variaveis
  89. void interrupcao_2() { //chamada qd acontecer a interrupcao
  90. sensor2++; //soma a variavel
  91. } //repete todo conteudo do void loop com as outras entradas e variaveis
  92. void interrupcao_3() { //chamada qd acontecer a interrupcao
  93. sensor3++; //soma a variavel
  94. } //repete todo conteudo do void loop com as outras entradas e variaveis
  95. void interrupcao_4() { //chamada qd acontecer a interrupcao
  96. sensor4++; //soma a variavel
  97. } //repete todo conteudo do void loop com as outras entradas e variaveis
  98. void interrupcao_5() { //chamada qd acontecer a interrupcao
  99. sensor5++; //soma a variavel
  100. } //repete todo conteudo do void loop com as outras entradas e variaveis
  101. void interrupcao_6() { //chamada qd acontecer a interrupcao
  102. sensor6++; //soma a variavel
  103. } //repete todo conteudo do void loop com as outras entradas e variaveis
  104. void interrupcao_7() { //chamada qd acontecer a interrupcao
  105. sensor7++; //soma a variavel
  106. } //repete todo conteudo do void loop com as outras entradas e variaveis
  107. void interrupcao_8() { //chamada qd acontecer a interrupcao
  108. sensor8++; //soma a variavel
  109. } //repete todo conteudo do void loop com as outras entradas e variaveis
  110. void interrupcao_9() { //chamada qd acontecer a interrupcao
  111. sensor9++; //soma a variavel
  112. }
  113. void estouro_tempo() {
  114.  
  115. sensor_rf[1] = sensor1;
  116. //sensor1 = 0;
  117. sensor_rf[2] = sensor2;
  118. //sensor2 = 0;
  119. sensor_rf[3] = sensor3;
  120. //sensor3 = 0;
  121. sensor_rf[4] = sensor4;
  122. // sensor4 = 0;
  123. sensor_rf[5] = sensor5;
  124. //sensor5 = 0;
  125. sensor_rf[6] = sensor6;
  126. //sensor6 = 0;
  127. sensor_rf[7] = sensor7;
  128. // sensor7 = 0;
  129. sensor_rf[8] = sensor8;
  130. //sensor8 = 0;
  131. sensor_rf[9] = sensor9;
  132. //sensor9 = 0;
  133. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement